使用说明
Todo MCP服务器
使用Node.js、TypeScript和SQLite构建的全面Todo/Task Manager MCP(模型上下文协议)服务器。此服务器提供工具、资源和提示,用于通过Claude和其他兼容MCP的客户端管理待办事项。
特性
🛠️ 工具(7个可用)
- create_todo -创建带有标题、描述、优先级、截止日期和标签的新待办事项
- 更新一切 -更新现有待办事项(任何字段)
- 删除一切 -按ID删除待办事项
- complete_todo -将待办事项标记为已完成
- list_todos -列出带有过滤功能的待办事项(完成状态、优先级、标签、限制)
- 搜索所有 -按标题、描述或标签搜索待办事项
- get_todo_stats -获取全面的待办事项统计数据
📄 资源(9个可用)
- todos://all -所有待办事项(JSON)
- todos://completed -全部完成(JSON)
- todos://pending -待定待办事项(JSON)
- todos://overdue -Overdue All(JSON)
- todos://todo/ {编号} -按ID指定待办事项(JSON)
- todos://priority/{优先级} -按优先级排列的待办事项(JSON),具有自动补全功能
- todos://tag/{标签} -标签待办事项(JSON),具有自动补全功能
- todos://stats -待办事项统计数据(JSON)
- todos://tags -所有可用标签(JSON)
💬 提示(5个可用)
- create_todo_prompt -交互式待办事项创建
- 每日回顾 -每日待办事项审查和规划
- 周计划 -每周计划会议
- 生产率分析 -分析生产力模式
- 任务分解 -分解复杂任务
安装
-
克隆或创建项目目录:
mkdir todo-mcp-server cd todo-mcp-server -
安装依赖项:
npm install -
构建项目:
npm run build
用法
基本服务器操作
-
测试todo服务:
npm run test -
运行MCP服务器:
npm start -
开发模式(带文件监视):
npm run dev
MCP检验员测试
-
启动检查器:
npx @modelcontextprotocol/inspector node dist/index.js -
打开web界面:
- 按照终端输出中提供的URL进行操作
- 使用提供的身份验证令牌
Claude桌面集成
将此配置添加到您的Claude Desktop配置文件中:
{
"mcpServers": {
"todo-manager": {
"command": "node",
"args": ["/path/to/todo-mcp-server/dist/index.js"],
"env": {
"TODO_DB_PATH": "/path/to/your/todos.db"
}
}
}
}
配置
环境变量
- TODO_DB_PATH:SQLite数据库文件的路径(默认值:
todos.db在当前目录中)
数据库
服务器使用SQLite和better squelite3进行数据持久化。数据库是使用以下架构自动创建的:
- 全部 带字段的表:id、title、description、completed、priority、due_date、tags、created_at、updated_at
- 最佳性能的完成状态、优先级、截止日期和创建日期索引
API示例
创建Todo
// Using the create_todo tool
{
"title": "Review documentation",
"description": "Read through the MCP protocol documentation",
"priority": "high",
"dueDate": "2024-06-27T10:00:00.000Z",
"tags": ["work", "learning"]
}
过滤待办事项
// Using the list_todos tool
{
"completed": false,
"priority": "high",
"limit": 10
}
资源访问
GET todos://pending # All pending todos
GET todos://priority/high # High priority todos
GET todos://tag/work # Todos tagged with "work"
GET todos://stats # Todo statistics
建筑
src/
├── database.ts # SQLite database layer with better-sqlite3
├── index.ts # Main server entry point
├── mcp-server.ts # MCP server implementation
├── todo-service.ts # Business logic layer
├── test.ts # Test suite
└── types.ts # TypeScript type definitions
关键组件
- TodoDatabase -使用better-sqlite3的直接SQLite接口
- 全服务 -具有验证和错误处理功能的业务逻辑
- TodoMcpServer -使用工具、资源和提示实现MCP协议
发展
脚本
npm run build-将TypeScript编译为JavaScriptnpm run dev-文件监视开发模式npm start-启动生产服务器npm run test-运行测试套件
技术栈
- 运行时:Node.js
- 语言:TypeScript
- 数据库:带better平方的SQLite 3
- 协议:模型上下文协议(MCP)
- 验证:Zod模式
测试
该项目包括全面的测试:
npm run test
这将:
- 创建内存数据库
- 测试所有CRUD操作
- 验证搜索和筛选功能
- 检查统计数据生成
- 验证标签管理
故障排除
常见问题
- 数据库权限错误:确保目录可写
- 端口冲突:MCP服务器使用stdio,不需要端口
- TypeScript错误:运行
npm run build检查编译问题
调试
通过设置启用调试日志记录:
export DEBUG=todo-mcp-server
许可证
MIT许可证-有关详细信息,请参阅许可证文件。
贡献
- 分叉存储库
- 创建要素分支
- 添加新功能的测试
- 确保所有测试通过
- 提交拉取请求
更新日志
v1.0.0
- 初始版本
- 使用工具、资源和提示完成MCP实施
- 使用better-squarite3的SQLite数据库
- 全面的测试套件
- Node.js兼容性(从Bun迁移)