项目简介
这是一个基于 Model Context Protocol (MCP) 标准实现的服务器端应用,运行在 Cloudflare Workers 平台上。它充当大语言模型 (LLM) 客户端与 Todoist 服务之间的桥梁,通过 MCP 协议向 LLM 提供访问 Todoist 数据和功能的工具。该实现特色在于使用 OAuth 进行用户认证,并部署于 Cloudflare 的无服务器环境。
主要功能点
该 MCP 服务器目前提供以下主要功能:
- OAuth 认证: 支持通过标准的 OAuth 2.0 流程授权 LLM 客户端访问用户的 Todoist 账户,无需直接处理 API 密钥。
- 获取用户信息工具 ('me'): 允许 LLM 客户端获取当前已认证用户的 Todoist 账户基本信息(如姓名、邮箱)。
- 按过滤器获取任务工具 ('get_tasks_by_filter'): 允许 LLM 客户端根据 Todoist 支持的过滤器语法,检索用户的任务列表。这使得 LLM 可以理解并处理用户的待办事项。
安装步骤
要部署自己的 Todoist MCP 服务器实例,请遵循以下简化步骤(详细说明请参考 GitHub 仓库 README):
- 在 Todoist 开发者网站创建新的 OAuth 应用,获取 'Client ID' 和 'Client Secret'。
- 使用 Cloudflare 的 Wrangler CLI 工具,将获取到的 'Client ID' 和 'Client Secret' 配置为 Worker 的环境变量 Secret。
- 根据需要修改 'wrangler.jsonc' 文件中的配置(例如 Worker 名称、OAuth 回调 URL 等)。
- 运行部署命令将 Worker 部署到你的 Cloudflare 账户。
服务器配置(供 MCP 客户端参考)
MCP 客户端需要连接到服务器才能使用其提供的工具。对于部署在 Cloudflare 的此服务器实例,客户端通常需要以下信息进行配置:
- 服务器名称 (Server Name): 'Todoist MCP Server - Deployed on Cloudflare'
- 连接协议 (Protocol): Server-Sent Events (SSE)
- 连接地址 (URL): 'https://todoist-mcp-server-cf.debugjois.workers.dev/sse' (注意:这是示例公共部署地址,如果你自部署,请使用你自己的 Worker URL)
具体的客户端配置方式取决于你使用的 MCP 客户端软件。通常,你需要将上述信息填写到客户端的服务器连接设置中。用户身份认证将通过服务器引导的 OAuth 流程完成。
基本使用方法
连接成功后,LLM 客户端即可通过 MCP 协议调用服务器提供的工具。
- 要获取用户信息,LLM 可以尝试调用 'me' 工具。
- 要获取特定任务列表,LLM 可以调用 'get_tasks_by_filter' 工具,并提供一个 Todoist 过滤器字符串作为参数,例如 '{"filter": "今天 或 明天"}'。服务器将返回匹配的任务数据。
信息
分类
生产力应用