使用说明
项目简介
Task Manager MCP Server 是一个基于 Model Context Protocol (MCP) 实现的任务管理服务器模板。它旨在帮助开发者快速构建能够与 LLM 客户端集成的任务管理后端应用。该服务器提供了一系列工具,用于创建、管理和跟踪项目中的任务,并支持从产品需求文档 (PRD) 自动生成任务,以及利用 AI 辅助任务分解和规划。
主要功能点
- 项目任务管理: 创建项目任务文件,添加、更新任务和子任务,获取下一个待办任务,方便用户组织和跟踪项目进度。
- PRD解析与任务生成: 能够解析产品需求文档 (PRD),自动将其转化为结构化的任务列表,提高项目启动效率。
- AI辅助功能: 利用 AI 技术进行任务扩展(分解为子任务)、复杂度评估和下一步行动建议,提升任务管理的智能化水平。(仓库代码中AI功能为占位符,需自行实现对接LLM的功能)
- 灵活的传输协议: 支持 SSE 和 Stdio 两种传输协议,方便与不同类型的 MCP 客户端集成。
安装步骤
前提条件:
- Python 3.12+
- 已安装 pip 或 uv
- 可选:Docker (推荐使用 Docker 部署)
- 已配置 LLM 提供商的 API 密钥 (OpenAI, OpenRouter, 或 Ollama,虽然仓库代码中AI功能为占位符,但配置环境变量是标准步骤)
使用 uv (推荐):
- 克隆仓库到本地:
git clone https://github.com/tradesdontlie/task-manager-mcp.git cd task-manager-mcp - 安装依赖:
uv pip install -e . - 复制 '.env.example' 文件并重命名为 '.env',根据需要配置环境变量,主要是 'LLM_PROVIDER' 和 'LLM_API_KEY' 等。
使用 Docker:
- 构建 Docker 镜像:
docker build -t task-manager-mcp . - 复制 '.env.example' 文件并重命名为 '.env',根据需要配置环境变量。
服务器配置
MCP 客户端需要配置以下 JSON 信息才能连接到 Task Manager MCP Server。请根据您选择的传输协议进行配置:
SSE 配置 (示例):
{ "mcpServers": { "task-manager": { // 服务器名称,客户端自定义 "transport": "sse", // 传输协议,设置为 sse "url": "http://localhost:8050/sse" // 服务器 SSE 端点 URL,默认为 http://localhost:8050/sse } } }
Stdio 配置 (示例):
{ "mcpServers": { "task-manager": { // 服务器名称,客户端自定义 "command": "python3", // 启动服务器的命令 "args": ["src/main.py"], // 启动命令的参数,这里指向服务器主程序入口 "env": { // 环境变量配置 "TRANSPORT": "stdio", // 传输协议,设置为 stdio "LLM_PROVIDER": "openai", // LLM 提供商,根据实际情况配置 "LLM_API_KEY": "YOUR-API-KEY", // LLM API 密钥,替换为您的密钥 "LLM_CHOICE": "gpt-4" // 使用的 LLM 模型,根据实际情况配置 } } } }
基本使用方法
-
启动服务器:
- Python: 在项目根目录下,确保 '.env' 文件配置正确,然后运行 'python3 src/main.py'。
- Docker: 确保 '.env' 文件配置正确,然后运行 'docker run --env-file .env -p 8050:8050 task-manager-mcp'。
-
客户端交互: 使用 MCP 客户端(例如 Cursor 编辑器或其他 MCP 客户端),根据上述 服务器配置 配置连接到 Task Manager MCP Server。
-
使用任务管理工具: 通过 MCP 客户端调用服务器提供的工具 (Tools) 来管理任务,例如:
- 创建项目任务文件
- 添加新任务
- 解析 PRD 生成任务
- 更新任务状态
- 获取下一个任务
- 获取任务依赖
- 评估任务复杂度
- 获取任务下一步行动建议
- 生成任务文件模板
具体工具的使用方法请参考仓库 'README.md' 文件中 "Using the Task Manager" 部分的示例代码。
注意: 仓库代码中 AI 相关的功能(如 'expand_task', 'estimate_task_complexity', 'suggest_next_actions')目前是占位符,需要开发者自行实现与 LLM 的集成,才能真正使用 AI 辅助功能。
信息
分类
生产力应用