使用说明
MCP任务管理器
一个轻量级的、自托管的任务管理器,具有web GUI和MCP(模型上下文协议)服务器,因此AI编码代理(GitHub Copilot、Claude Desktop、Cursor……)可以实时读写您的任务。
没有外部服务。没有npm依赖。在Node.js内置程序上运行。
需求
| 要求 | 版本 |
|---|---|
| Node.js | 22.5或更高 (使用内置 node:sqlite) |
目录结构
MCP_task_manager/
├── task-manager/ ← GUI HTTP server
│ ├── server.mjs
│ ├── package.json
│ └── public/
│ └── index.html
└── mcp-server/ ← MCP stdio server for AI agents
└── server.mjs
安装
git clone https://github.com/emanavas/MCP_task_manager.git
cd MCP_task_manager
不 npm install 需要——零外部依赖。
用法
1·启动GUI服务器
node task-manager/server.mjs
打开 http://localhost:5678 在您的浏览器中。
服务器创建 task-manager/tasks.db (SQLite,WAL模式)首次运行。该数据库已从git中排除。
特性
- 使用自定义颜色创建组(阶段、类别)
- 添加带有标题、注释和优先级的任务(
high / medium / low)和状态(pending / in-progress / done) - 拖放重新排序(组和任务)
- 按状态筛选或按关键字搜索——空组会自动隐藏
- 计数徽章显示
matched/total过滤时 - 实时SSE刷新——AI代理所做的任何更改都会立即显示在浏览器中
2·将MCP服务器连接到您的AI代理
MCP服务器与之通信 tasks.db 因此,来自代理的更改会立即显示在浏览器中。
VS代码(GitHub Copilot/Claude)
添加到您的 .vscode/mcp.json (或创建它):
{
"servers": {
"mcp-task-manager": {
"type": "stdio",
"command": "node",
"args": ["${workspaceFolder}/../MCP_task_manager/mcp-server/server.mjs"]
}
}
}
调整路径以匹配您克隆仓库的任何位置。
自定义数据库路径(适用于任何项目)
默认情况下,MCP服务器会查找 ../task-manager/tasks.db 相对于 mcp-server/server.mjs。您可以将其指向任何具有环境变量的数据库文件:
{
"servers": {
"mcp-task-manager": {
"type": "stdio",
"command": "node",
"args": ["/absolute/path/to/mcp-server/server.mjs"],
"env": {
"MCP_TASKS_DB": "/absolute/path/to/your/tasks.db",
"MCP_TASKS_NAME": "my-project-tasks"
}
}
}
}
克劳德桌面
添加 claude_desktop_config.json:
{
"mcpServers": {
"mcp-task-manager": {
"command": "node",
"args": ["/absolute/path/to/MCP_task_manager/mcp-server/server.mjs"]
}
}
}
可用的MCP工具
| 工具 | 说明 |
|---|---|
tasks_pending |
列出所有待处理的任务。可选的 priority 过滤器。会话开始时呼叫。 |
tasks_list |
列出带有可选项的任务 phase, status, priority 过滤器。 |
tasks_add |
添加新任务。参数: title (必填), id, phase, priority, notes. |
tasks_update |
更新 status, priority,或 notes 通过以下方式完成现有任务 id. |
tasks_complete |
将任务标记为已完成 id. |
tasks_stats |
摘要计数:总计、已完成、进行中、待定、高优先级待定。 |
推荐的代理工作流程
Session start → tasks_pending() # see what needs doing
Before task → tasks_update(in-progress) # signal you're working on it
After task → tasks_complete(id) # mark done immediately
New task found → tasks_add(...) # add to backlog
环境变量
| 变量 | 默认值 | 描述 |
|---|---|---|
MCP_TASKS_DB |
../task-manager/tasks.db |
自定义的绝对路径 tasks.db |
MCP_TASKS_NAME |
mcp-task-manager |
MCP中报告的服务器名称 initialize 回应 |
技术栈
- 仅内置Node.js —
node:http,node:sqlite,node:path,node:fs,node:readline - SQLite WAL模式 --无锁从GUI+MCP服务器并发读取
- 服务器发送的事件 --代理写入任务时浏览器自动刷新
- MCP协议2024-11-05 --基于stdio的JSON-RPC
许可证
麻省理工学院
