任务管理MCP服务

TickTick MCP Server是一个基于Model Context Protocol(MCP)的服务,通过JSON-RPC和SSE协议暴露TickTick API的子集,支持任务搜索、获取和OAuth授权,适用于与OpenAI模型集成。

  • by DonJamon1989
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 donjamon1989/ticktick-mcp-server

使用说明

TickTick MCP服务器

此存储库包含一个简单的 模型上下文协议 (MCP)服务器,其向OpenAI模型公开TickTick API的子集。它实现了所需的 search 和 fetch 工具和连接OAuth流以获取用户授权令牌。

特性

  • ✅ 远程MCP实施 --通过HTTP和服务器发送事件(SSE)说JSON-RPC。
  • 🔍 搜索任务 --呼叫 search 用于检索与查询字符串匹配的任务的工具。
  • 📄 获取任务 --呼叫 fetch 通过ID获取单个任务的工具。
  • 🔑 OAuth --包括用于启动和完成TickTick的OAuth代码流的端点。令牌存储在以占位符用户为键的内存中。将其扩展到在生产中使用真实的用户存储。
  • 🚑 健康检查 --回应 /health 对于部署平台。
  • 🐳 码头工人 & 渲染 --提供a Dockerfile 和 render.yaml 便于部署。

入门指南

先决条件

  1. 创建TickTick开发人员应用程序以获取您的 client_id 和 client_secret.
  2. 寄存器A 重定向URI 对于OAuth。对于本地测试,您可以使用 http://localhost:8080/oauth/callback在生产环境中,将其设置为您的托管域名+ /oauth/callback.

地方发展

bash
git clone https://github.com/your-org/ticktick-mcp-server.git
cd ticktick-mcp-server

cp .env.example .env
# Fill in the environment variables in `.env`

npm install
npm start

# Visit http://localhost:8080/health to check the server
# Start the OAuth flow at http://localhost:8080/oauth/start

渲染部署

此存储库包括 render.yaml 一键部署文件 渲染。要部署:

  1. 在Render上创建一个新的Web服务,并将其连接到您的GitHub存储库。
  2. 渲染将自动检测 render.yaml 并配置该服务。
  3. 定义OAuth环境变量(OAUTH_CLIENT_ID, OAUTH_CLIENT_SECRET, OAUTH_AUTH_URL, OAUTH_TOKEN_URL, OAUTH_SCOPE, OAUTH_REDIRECT)在“渲染”仪表板中。您可以将敏感值标记为机密。
  4. 部署服务。一旦上线,您的MCP服务器URL将是 https://<your-service>.onrender.com/mcp.

作为OpenAI连接器使用

  1. 在ChatGPT中 连接器(Beta) 菜单中,创建新连接器。
  2. 提供您部署的MCP服务器的URL(例如。 https://<your-service>.onrender.com/mcp).
  3. 将身份验证类型设置为 OAuth 并输入您的TickTick客户端凭据和端点。
  4. 保存后,ChatGPT将要求您进行身份验证。完成OAuth流程。您已准备好通过ChatGPT搜索和获取TickTick任务!

延伸

要添加更多功能,请编辑 server.js 并在中添加新的工具定义 tools/list 处理器和相应的逻辑 tools/call 处理程序。例如,您可以实施工具来创建、更新或完成任务。

许可证

该项目是在MIT许可证下提供的。看 许可证 了解详情。