中文

MCP 接入指南

DueIsland · 让任意 AI 客户端管理你的提醒

DueIsland 内置本地 MCP 服务,任何支持 MCP 的 AI 客户端(Claude Code、Claude Desktop、Cursor、Codex、VS Code 等)都能创建、查询、修改、完成、延迟、删除你的提醒,改动实时同步。

开启

  1. 打开 DueIsland ▸ 设置MCP 服务,打开开关。
  2. 复制设置页显示的地址鉴权头(每台设备唯一,重置 token 后旧配置失效)。

通用连接信息

任何客户端只需这两项:

地址 URLhttp://127.0.0.1:<PORT>/mcp
鉴权头 HeaderAuthorization: Bearer <TOKEN>
传输 TransportStreamable HTTP

<PORT> 默认 51837;若被占用,服务会自动顺延到下一个可用端口,以设置页显示的地址为准<TOKEN> 从设置页复制。

部分客户端配置示例

Claude Code

claude mcp add --transport http dueisland http://127.0.0.1:<PORT>/mcp \
  --header "Authorization: Bearer <TOKEN>"

验证:claude mcp list,或在会话里输入 /mcp

Cursor

~/.cursor/mcp.json(全局)或项目内 .cursor/mcp.json

{
  "mcpServers": {
    "dueisland": {
      "url": "http://127.0.0.1:<PORT>/mcp",
      "headers": { "Authorization": "Bearer <TOKEN>" }
    }
  }
}

Claude Desktop

claude_desktop_config.json(设置 ▸ Developer ▸ Edit Config):

{
  "mcpServers": {
    "dueisland": {
      "url": "http://127.0.0.1:<PORT>/mcp",
      "headers": { "Authorization": "Bearer <TOKEN>" }
    }
  }
}

OpenAI Codex

桌面版(图形界面)最省事的是直接填「标头 / Headers」,不碰环境变量:

CLI / config.toml:Codex 用环境变量名传 token(不是明文):

export DUEISLAND_TOKEN="<TOKEN>"
[mcp_servers.dueisland]
url = "http://127.0.0.1:<PORT>/mcp"
bearer_token_env_var = "DUEISLAND_TOKEN"

VS Code

.vscode/mcp.json(注意外层是 servers 且需 type):

{
  "servers": {
    "dueisland": {
      "type": "http",
      "url": "http://127.0.0.1:<PORT>/mcp",
      "headers": { "Authorization": "Bearer <TOKEN>" }
    }
  }
}

可用工具

工具参数说明
create_remindertitle(必填)、kind(timer|reminder)、minutesat(ISO8601)、recur(none|daily|weekdays|weekly|monthly)、notes建提醒/计时器。省略 kind 时按 at→reminder、minutes→timer 推断。
list_remindersincludeCompleted(bool,默认 false)列出提醒(含 id,供后续按 id 操作)。
update_reminderid(必填)、titleminutesatrecurnotes部分更新——只改传入的字段。时间用 at(仅 reminder)或 minutes 二选一。编辑已完成条目会将其复活。
complete_reminderid标记完成。
snooze_reminderidminutes(默认 10)延迟。
delete_reminderid删除。

问题反馈:hornjoystudio@gmail.com


English

MCP Setup Guide

DueIsland · Connect any AI client to your reminders

DueIsland ships with a built-in local MCP server, so any MCP-capable AI client (Claude Code, Claude Desktop, Cursor, Codex, VS Code, and more) can create, list, update, complete, snooze, and delete your reminders. Changes sync instantly.

Enable

  1. Open DueIsland ▸ SettingsMCP Server and turn on the switch.
  2. Copy the URL and the auth header shown in Settings (unique per device; resetting the token invalidates old configs).

Universal connection info

Every client needs just these two values:

FieldValue
URLhttp://127.0.0.1:<PORT>/mcp
HeaderAuthorization: Bearer <TOKEN>
TransportStreamable HTTP

<PORT> defaults to 51837; if occupied, DueIsland automatically moves to the next free port — always use the URL shown in Settings. Copy <TOKEN> from Settings.

Example client configurations

Claude Code

claude mcp add --transport http dueisland http://127.0.0.1:<PORT>/mcp \
  --header "Authorization: Bearer <TOKEN>"

Verify with claude mcp list or /mcp inside a session.

Cursor

~/.cursor/mcp.json (global) or .cursor/mcp.json in a project:

{
  "mcpServers": {
    "dueisland": {
      "url": "http://127.0.0.1:<PORT>/mcp",
      "headers": { "Authorization": "Bearer <TOKEN>" }
    }
  }
}

Claude Desktop

claude_desktop_config.json (Settings ▸ Developer ▸ Edit Config):

{
  "mcpServers": {
    "dueisland": {
      "url": "http://127.0.0.1:<PORT>/mcp",
      "headers": { "Authorization": "Bearer <TOKEN>" }
    }
  }
}

OpenAI Codex

Desktop app: fill in the “Headers” field directly — no environment variables needed:

CLI / config.toml: Codex references the token via an environment variable name:

export DUEISLAND_TOKEN="<TOKEN>"
[mcp_servers.dueisland]
url = "http://127.0.0.1:<PORT>/mcp"
bearer_token_env_var = "DUEISLAND_TOKEN"

VS Code

.vscode/mcp.json (note the outer key is servers and type is required):

{
  "servers": {
    "dueisland": {
      "type": "http",
      "url": "http://127.0.0.1:<PORT>/mcp",
      "headers": { "Authorization": "Bearer <TOKEN>" }
    }
  }
}

Available tools

ToolArgumentsDescription
create_remindertitle (required), kind (timer|reminder), minutes, at (ISO8601), recur (none|daily|weekdays|weekly|monthly), notesCreate a reminder or timer. When kind is omitted it is inferred: at→reminder, minutes→timer.
list_remindersincludeCompleted (bool, default false)List reminders with their ids for follow-up calls.
update_reminderid (required), title, minutes, at, recur, notesPartial update — only provided fields change. Time via at (reminder only) or minutes, not both. Editing a completed item reactivates it.
complete_reminderidMark complete.
snooze_reminderid, minutes (default 10)Postpone.
delete_reminderidDelete.

Questions: hornjoystudio@gmail.com