使用说明
Takio MCP服务器
这个项目是一个简单的MCP(以模型为中心的协议)服务器,它实现了基本任务管理器的逻辑。它允许对任务进行CRUD(创建、读取、更新、删除)操作,并且可以由内存存储或Notion数据库支持。
特性
- 符合MCP标准: 实施以模型为中心的协议进行标准化通信。
- 任务管理: 为任务提供完整的CRUD功能。
- 多个后端: 可以使用内存中的数据存储进行快速测试,也可以使用Notion数据库进行持久存储。
- Cloudflare员工: 构建为部署为无服务器Cloudflare Worker。
- Hono框架: 使用Hono web框架路由和处理请求。
- OpenAPI的Chanfana: 从代码中自动生成OpenAPI 3.1模式,提供交互式文档。
项目结构
src/index.ts:应用程序的主要入口点,其中设置了Hono应用程序和OpenAPI文档。src/endpoints/mcp.ts:处理传入的MCP请求,并将其路由到相应的任务管理器实现。src/mcp/taskManagerServer.ts:定义MCP服务器,包括用于创建、更新、删除和列出任务的工具。src/TaskManager/TaskManager.ts:核心TaskManagerServer协调任务管理器实现的类。src/TaskManager/implementations/:包含任务管理器的不同后端实现。InMemoryTaskManager.ts:用于存储任务的简单内存实现。NotionTaskManager.ts:使用Notion API将任务存储在数据库中的实现。
src/utils/:包含用于解析数据和定义模式的实用函数。wrangler.jsonc:Cloudflare Worker的配置文件。package.json:定义项目的依赖关系和脚本。
入门指南
先决条件
- A. Cloudflare帐户.
- Node.js 和 pnpm 安装。
- 牧马人CLI 安装并验证。
安装
-
克隆存储库:
git clone <repository-url> cd takio-mcp -
安装依赖项:
pnpm install
配置
- 概念集成(可选):
如果你想使用Notion后端,你需要:
- 创建一个 概念整合 并获取您的API密钥。
- 创建一个Notion数据库并获取其ID。
- 设置
NOTION_API_KEY作为Cloudflare Worker中的秘密:npx wrangler secret put NOTION_API_KEY - 添加
DB_ID到你的wrangler.jsonc文件在vars部分。
本地运行
要启动开发服务器,请运行:
pnpm run dev
这将启动一个本地服务器,您可以在以下网址访问交互式OpenAPI文档 http://localhost:8787/.
部署
要将worker部署到您的Cloudflare帐户,请运行:
pnpm run deploy
用法
服务器在以下位置公开了一个MCP端点 /mcp。您可以使用任何符合MCP的客户端与它进行交互。可用的工具有:
createTask(title: string, description?: string, status?: 'pending' | 'in-progress' | 'completed'):创建新任务。updateTask(id: string, title?: string, description?: string, status?: 'pending' | 'in-progress' | 'completed'):更新现有任务。deleteTask(id: string):删除任务。listTasks(status?: 'pending' | 'in-progress' | 'completed'):列出所有任务,可选择按状态筛选。
