Todo管理服务

一个用于通过REST API管理Todo的Model Context Protocol (MCP)服务器,提供创建、检索、更新和删除Todo的功能。

  • by mendellev
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 mendellev/demo-it-talks-todo-mcp

使用说明

全MCP服务器

模型上下文协议(MCP)服务器,用于通过REST API管理todo。

特性

此MCP服务器提供了与Todo应用程序API交互的工具:

  • create_todo -创建新的待办事项
  • get_all_todos -检索所有待办事项
  • get_todo_by_id -按ID获取特定待办事项
  • 更新待办事项 -更新现有待办事项
  • toggle_todo_完成 -切换待办事项完成状态
  • delete_todo -删除待办事项

安装

npm install

配置

复制 .env.example 到 .env 并配置:

cp .env.example .env

设置以下环境变量:

  • TODO_API_URL -您的Todo API端点(默认值:http://localhost:3000)
  • API_KEY -用于身份验证的API密钥(必需)

建筑

npm run build

发展

开发观察模式:

npm run dev

检查器视图

npx -y @modelcontextprotocol/inspector  node dist/index.js -e API_KEY=very-secret-value

用法

服务器使用stdio传输进行通信。您可以将其与任何兼容MCP的客户端一起使用。

Claude代码配置

claude mcp add --transport=stdio todo -- env API_KEY=very-secret-value node todo-mcp/dist/index.js

Claude桌面Windows配置

{
    "mcpServers": {
        "todo":{
            "command": "node",
            "args": [
                "C:\\demo-it-talks-todo-mcp\\dist\\index.js"
            ],
            "env":{
                "API_KEY":"very-secret-value"
            }
        }
    }
}

MCP配置示例

添加到MCP客户端配置中:

{
  "mcpServers": {
    "todo": {
      "command": "node",
      "args": ["/path/to/todo-mcp/dist/index.js"],
      "env": {
        "TODO_API_URL": "http://localhost:3000",
        "API_KEY": "your-api-key-here"
      }
    }
  }
}

API终点

此服务器通过以下端点连接到NestJS Todo应用程序:

  • POST /todos -创建待办事项
  • GET /todos -获取所有待办事项
  • GET /todos/:id -按ID获取待办事项
  • PATCH /todos/:id -更新待办事项
  • PATCH /todos/:id/toggle -切换完成
  • DELETE /todos/:id -删除待办事项

模式

所有实体

{
  id: number;
  title: string;
  description: string | null;
  isCompleted: boolean;
  createdAt: string;
  updatedAt: string;
}

创建/更新待办事项

{
  title: string;          // required for create
  description?: string;   // optional
  isCompleted?: boolean;  // optional
}