关于 TickTick MCP
TickTick MCP 是一个 Python MCP 服务,供 AI 应用管理 TickTick 项目和任务。其工具涵盖查询、新建、更新、完成和删除项目及任务。
主要功能
- 01列出项目并查看项目详情
- 02获取任务详情
- 03创建项目和任务
- 04更新任务信息
- 05完成或删除任务
适用场景
- 01查看项目与任务详情
- 02添加项目及其任务
- 03更新任务信息
- 04完成任务或将其删除
MCP 相关
将 TickTick 项目和任务操作作为工具提供给 MCP 客户端。使用时需要 TickTick 账户以及通过 OAuth 获取的 API 访问令牌。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
TickTick MCP
一个用于集成 TickTick 任务管理工具的模型上下文协议(MCP)服务。使用 Python 和 MCP SDK。
概览
此仓库包含 TickTick 的模型上下文协议(MCP)服务实现。它提供了一种标准化方式,让 AI 助手和应用程序能够与 TickTick 的任务管理功能交互,支持以下操作:
- 获取项目和任务
- 创建项目和任务
- 更新任务详情
- 完成和删除任务
借助此 MCP,AI 系统可以作为任务管理助手,通过自然语言帮助管理 TickTick 中的待办事项列表和任务。
要求
- Python 3.8+
- TickTick 账号
- TickTick API 密钥(通过 OAuth) # COMMENT: I will add a tool to generate an API key from the TickTick developer portal
安装
-
克隆此仓库
git clone https://github.com/ekkyarmandi/ticktick-mcp.git cd ticktick-mcp -
安装依赖项
pip install -r requirements.txt
获取 TickTick API 密钥
此 MCP 使用 TickTick 的 OpenAPI 方案,需要通过 TickTick 开发者门户注册应用:
- 前往 TickTick 开发者文档
- 点击右上角的
Manage Apps,并使用 TickTick 凭据登录 - 点击
+App Name按钮注册新应用 - 输入应用名称(唯一必填项)
- 创建后,你可以查看
Client ID和Client Secret - 对于
OAuth Redirect URL,输入授权后要跳转到的网址(例如,http://127.0.0.1:8080)
授权应用
注册应用后,使用 ticktick-py 库获取访问令牌:
from ticktick.oauth2 import OAuth2
# Replace with your details from the developer portal
client_id = "YOUR_CLIENT_ID"
client_secret = "YOUR_CLIENT_SECRET"
redirect_uri = "YOUR_REDIRECT_URI" # e.g., http://127.0.0.1:8080
auth_client = OAuth2(client_id=client_id,
client_secret=client_secret,
redirect_uri=redirect_uri)
# This will open a web browser for authorization
# Follow the instructions in the terminal to authorize
auth_client.get_access_token()
授权后,访问令牌默认会保存到 .token-oauth 文件中。你可以从该文件中提取令牌,也可以使用:
print(auth_client.token_info["access_token"])
配置
- 在根目录中创建
.env文件,并填入 TickTick API 密钥:TICKTICK_API_KEY=your_access_token_here
用法
运行 MCP 服务:
python main.py
这将在 8000 端口启动 MCP 服务。现在,你可以使用任何 MCP 客户端连接到它。
可用工具
此服务提供以下工具:
get_projects:获取所有项目的列表project_details:获取指定项目的详情get_task_details:获取指定任务的详情create_project:创建新项目create_task:在项目中创建新任务update_task:更新现有任务complete_task:将任务标记为已完成delete_task:删除任务
交互示例
MCP 服务运行后,AI 系统可以通过以下自然语言指令帮助管理任务:
- “显示我的所有项目”
- “创建一个名为‘Home Renovation’的新项目”
- “添加一项明天购买杂货的任务”
- “将我的‘Pay bills’任务标记为已完成”
- “我本周有哪些到期任务?”
- “删除关于已取消会议的任务”
与 MCP 客户端搭配使用
此服务可与任何兼容 MCP 的客户端搭配使用,例如:
- Claude Desktop
- Cursor IDE
- 使用 MCP SDK 的自定义 AI 应用程序
开发
扩展或修改此 MCP 服务:
- 在
tools.py中添加新工具 - 在
main.py中使用mcp.add_tool()注册它们
许可证
MIT
贡献
欢迎贡献!请随时提交 Pull Request。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。