mcpField
T
TickTick MCP Server

TickTick MCP Server

本地服务
github.com/rafliruslan生产力574 周前更新

关于 TickTick MCP Server

TickTick MCP Server 将 TickTick 任务管理功能提供给 MCP 客户端,支持任务和项目查询、创建、更新、删除与完成操作。它还提供时区补偿,并支持 OAuth 或用户名密码认证。

主要功能

  1. 01查询任务与项目
  2. 02创建、更新和删除任务
  3. 03标记任务完成并获取详情
  4. 04查询今日与逾期任务
  5. 05支持 OAuth 与用户名密码认证
  6. 06处理时区偏移与日期补偿

适用场景

  1. 01在 MCP 客户端查看 TickTick 任务
  2. 02通过工具维护任务与项目
  3. 03按时区筛选今日或逾期任务

MCP 相关

该 MCP 服务向客户端提供 TickTick 任务与项目管理工具,包括查询、创建、更新、删除和完成任务。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

TickTick MCP 服务

一个提供与 TickTick 任务管理服务集成功能的模型上下文协议(MCP)服务。

功能

  • 以增强的显示方式列出任务和项目(优先级易于阅读)
  • 创建、更新和删除任务
  • 将任务标记为已完成
  • 获取特定任务的详细信息
  • 处理时区,并手动调整 D+1,以准确计算截止日期
  • 获取逾期任务,并可配置时区偏移量
  • 获取今日任务,并进行适当的时区补偿
  • 支持 OAuth 和用户名/密码身份验证
  • 完整支持 TypeScript,并提供完善的错误处理

设置

  1. 安装依赖项:
npm install
  1. 创建环境配置:
cp .env.example .env
  1. 在 .env 中配置身份验证:

选项 A:OAuth(推荐)

TICKTICK_ACCESS_TOKEN=your_oauth_access_token
TICKTICK_REFRESH_TOKEN=your_refresh_token
TICKTICK_CLIENT_ID=your_client_id
TICKTICK_CLIENT_SECRET=your_client_secret

选项 B:用户名/密码

TICKTICK_USERNAME=your_ticktick_username
TICKTICK_PASSWORD=your_ticktick_password

OAuth 设置请参阅 OAUTH_SETUP.md,或使用辅助工具:

node oauth-helper.js
  1. 构建项目:
npm run build

使用方法

开发
npm run dev
生产
npm start

可用工具

  • get_tasks - 获取所有任务或特定项目中的任务(增强显示)
  • get_overdue_tasks - 获取逾期任务,并进行时区补偿(可配置偏移量,默认为 UTC+8,请根据你的时区调整)
  • get_todays_tasks - 获取今天到期的任务,并进行 D+1 时区调整
  • get_projects - 获取 TickTick 中的所有项目
  • create_task - 创建包含优先级、标签和截止日期的新任务
  • update_task - 更新现有任务
  • delete_task - 删除任务
  • complete_task - 将任务标记为已完成
  • get_task - 根据 ID 获取特定任务
时区处理

此服务包含手动时区变通方案,用于处理 TickTick 的时区不一致问题:

  • D+1 调整:自动将截止日期增加 1 天,以补偿时区差异
  • 可配置偏移量:get_overdue_tasks 接受 timezoneOffsetHours 参数
    • 默认值:8(UTC+8)——请根据你的时区更改此值!
    • 示例:
      • EST(UTC-5):timezoneOffsetHours: -5
      • UTC:timezoneOffsetHours: 0
      • JST(UTC+9):timezoneOffsetHours: 9
      • CET(UTC+1):timezoneOffsetHours: 1
  • 全天任务与定时任务:对全天任务和特定时间的任务采用不同的处理方式
  • 增强显示:任务包含易于阅读的优先级文本(None、Low、Medium、High)

重要提示:默认时区偏移量为 UTC+8。调用 get_overdue_tasks 时,请指定正确的时区偏移量,以便获取适用于你所在位置的准确结果。

MCP 集成

Claude Desktop(搭配 Claude Desktop 应用)

将此服务添加到 MCP 客户端配置文件中:

位置: ~/Library/Application Support/Claude/claude_desktop_config.json(macOS)

{
  "mcpServers": {
    "ticktick": {
      "command": "node",
      "args": ["/path/to/ticktick-mcp-server/dist/index.js"],
      "env": {
        "TICKTICK_ACCESS_TOKEN": "your_oauth_token",
        "TICKTICK_REFRESH_TOKEN": "your_refresh_token",
        "TICKTICK_CLIENT_ID": "your_client_id",
        "TICKTICK_CLIENT_SECRET": "your_client_secret"
      }
    }
  }
}
Cursor IDE

将此服务添加到 Cursor MCP 配置中:

位置: 创建或编辑 .cursorrules,或在 Cursor 设置中配置 MCP 服务

{
  "mcp": {
    "servers": {
      "ticktick": {
        "command": "node",
        "args": ["/path/to/ticktick-mcp-server/dist/index.js"],
        "env": {
          "TICKTICK_ACCESS_TOKEN": "your_oauth_token",
          "TICKTICK_REFRESH_TOKEN": "your_refresh_token", 
          "TICKTICK_CLIENT_ID": "your_client_id",
          "TICKTICK_CLIENT_SECRET": "your_client_secret"
        }
      }
    }
  }
}
使用用户名/密码的替代方式
{
  "env": {
    "TICKTICK_USERNAME": "your_username",
    "TICKTICK_PASSWORD": "your_password"
  }
}

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。