Todo Markdown MCP服务器
](https://badge.fury.io/js/@danjdewhurst%2Ftodo-md-mcp)     
MCP(模型上下文协议)服务器,提供由简单markdown文件支持的待办事项列表功能。该服务器允许AI助手以标准化的markdown格式管理todo项目。
特性
- 基于Markdown的存储:待办事项存储在一个简单的
todo.md使用标准复选框语法的文件 - 完整的CRUD操作:创建、读取、更新和删除待办事项
- 持久ID:每个todo都有一个唯一的标识符,用于可靠的更新
- MCP合规性:遵循模型上下文协议规范
- TypeScript:具有全面错误处理功能的全类型实现
- 测试:使用Vitest完成测试套件
安装
来自NPM
npm install -g @danjdewhurst/todo-md-mcp地方发展
- 克隆此存储库:
git clone https://github.com/danjdewhurst/todo-md-mcp.git
cd todo-md-mcp- 安装依赖项:
npm install- 构建项目:
npm run build用法
使用克劳德桌面
将此服务器添加到您的Claude Desktop配置中:
{
"mcpServers": {
"todo-md": {
"command": "node",
"args": ["/path/to/todo-md-mcp/dist/index.js"]
}
}
}或者,如果通过NPM全局安装:
{
"mcpServers": {
"todo-md": {
"command": "npx",
"args": ["@danjdewhurst/todo-md-mcp"]
}
}
}配置Todo文件位置
默认情况下,服务器会创建 todo.md 当前工作目录中的文件。使用Claude Desktop时,这可能是一个您没有写权限的系统目录。要为todo文件指定自定义位置,请使用 TODO_FILE_PATH 环境变量:
{
"mcpServers": {
"todo-md": {
"command": "npx",
"args": ["@danjdewhurst/todo-md-mcp"],
"env": {
"TODO_FILE_PATH": "/Users/yourname/Documents/todo.md"
}
}
}
}这通过确保todo文件是在您具有写入权限的位置创建的,解决了常见的“只读文件系统”错误。
推荐地点:
~/Documents/todo.md-您的“文档”文件夹~/Desktop/todo.md-您的桌面/path/to/your/project/todo.md-在特定项目中
重要提示: 请确保该目录存在,并且您对指定位置具有写入权限。
可用工具
服务器提供以下MCP工具:
list_todos
列出markdown文件中的所有todo项目。
参数: 无
退货: 带有todos数组和摘要统计的JSON对象
add_todo
添加新的待办事项。
参数:
text(string,必填):待办事项文本
退货: 创建的todo项目及其生成的ID
update_todo
更新现有待办事项。
参数:
id(string,必填):todo项目IDtext(字符串,可选):待办事项的新文本completed(布尔值,可选):标记为已完成/未完成
退货: 更新的待办事项
delete_todo
删除待办事项。
参数:
id(string,必填):要删除的todo项目ID
退货: 成功确认
clear_completed
删除所有已完成的待办事项。
参数: 无
退货: 已清除的项目数量
文件格式
服务器管理 todo.md 使用以下格式在项目根目录中创建文件:
# Todo List
- [ ] First incomplete task
- [x] Completed task
- [ ] Another task
每个待办事项包括:
- 标准标记复选框语法(
- [ ]或- [x]) - 全部文本
- 带有唯一ID的隐藏HTML注释,用于跟踪
发展
脚本
npm run build-构建TypeScript项目npm run dev-构建并运行服务器npm run watch-观察变化并重建npm test-运行测试套件npm run test:watch-在监视模式下运行测试npm run lint-运行ESLintnpm run format-使用Prettier格式化代码
测试
该项目包括涵盖所有功能的全面测试:
npm test测试包括:
- Markdown解析与生成
- CRUD操作
- 错误处理
- 文件管理
项目结构
todo-md-mcp/
├── src/
│ ├── index.ts # Main MCP server implementation
│ ├── todoManager.ts # Todo CRUD operations and markdown parsing
│ └── types.ts # TypeScript type definitions
├── tests/
│ └── todoManager.test.ts # Test suite
├── dist/ # Built JavaScript files
├── package.json
├── tsconfig.json
├── .eslintrc.json
├── .prettierrc
├── vitest.config.ts
└── README.md需求
- Node.js 18或更高版本
- MCP兼容客户端(如Claude Desktop)
许可证
麻省理工学院
贡献
- 分叉存储库
- 创建要素分支
- 进行更改
- 添加新功能的测试
- 运行测试套件
- 提交拉取请求
模型上下文协议
此服务器实现 模型上下文协议(MCP),一个标准化应用程序如何为大型语言模型提供上下文的开放协议。MCP实现了对本地和远程资源的安全、受控访问。
有关MCP的更多信息,请访问 官方文件.
