一个用于集成TickTick任务管理工具的模型上下文协议(MCP)服务器。使用Python和MCP SDK。
此仓库包含一个针对TickTick的模型上下文协议(MCP)服务器实现。它提供了一种标准化的方式,使AI助手和应用程序能够与TickTick的任务管理功能进行交互,允许执行以下操作:
通过这个MCP,AI系统可以充当任务管理员,帮助您使用自然语言来管理TickTick中的待办事项和任务。
克隆此仓库
git clone https://github.com/ekkyarmandi/ticktick-mcp.git
cd ticktick-mcp
安装依赖项
pip install -r requirements.txt
此MCP使用TickTick的OpenAPI方案,需要通过TickTick的开发者门户注册应用:
管理应用并使用您的TickTick凭据登录+应用名称按钮注册新应用客户端ID和客户端密钥OAuth重定向URL,输入授权后将被重定向到的URL(例如,http://127.0.0.1:8080)在注册应用后,使用ticktick-py库获取访问令牌:
from ticktick.oauth2 import OAuth2
# 使用开发者门户中的详细信息替换
client_id = "YOUR_CLIENT_ID"
client_secret = "YOUR_CLIENT_SECRET"
redirect_uri = "YOUR_REDIRECT_URI" # 例如,http://127.0.0.1:8080
auth_client = OAuth2(client_id=client_id,
client_secret=_client_secret,
redirect_uri=redirect_uri)
# 这将打开一个浏览器进行授权
# 按照终端中的指示进行授权
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系统就可以使用自然语言命令帮助您管理任务,如:
此服务器可以与任何兼容MCP的客户端一起使用,例如:
要扩展或修改此MCP服务器:
tools.py中添加新工具main.py中使用mcp.add_tool()注册它们MIT
欢迎贡献!请随时提交Pull Request。