MCP任务管理器
一个提供全面任务管理功能的Model Context Protocol服务器,支持项目组织、任务跟踪和自动将PRD解析为可执行项。
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"task-manager": {
"args": [
"src/main.py"
],
"command": "python3",
"env": {
"LLM_API_KEY": "YOUR-API-KEY",
"LLM_CHOICE": "gpt-4",
"LLM_PROVIDER": "openai",
"TRANSPORT": "stdio"
}
}
}
}
该服务需要配置环境变量:HOST、LLM_API_KEY、LLM_BASE_URL、LLM_CHOICE、LLM_PROVIDER、PORT、TRANSPORT
服务介绍
任务管理 MCP 服务器
这是一个用于管理和跟踪任务及项目的 模型上下文协议 (MCP) 服务器的模板实现。该服务器提供了一个全面的任务管理系统,支持项目组织、任务跟踪和 PRD 解析。
概览
本项目展示了如何构建一个 MCP 服务器,使 AI 代理能够管理任务、跟踪项目进度,并将产品需求文档 (PRD) 分解为可操作的任务。它作为一个实用模板,帮助您创建具有任务管理功能的 MCP 服务器。
此实现遵循了 Anthropic 对于构建 MCP 服务器的最佳实践,允许与任何兼容 MCP 的客户端无缝集成。
功能
该服务器提供了几个重要的任务管理工具:
-
任务管理
create_task_file: 创建新的项目任务文件add_task: 向项目中添加带有描述和子任务的任务update_task_status: 更新任务及其子任务的状态get_next_task: 从项目中获取下一个未完成的任务
-
项目规划
parse_prd: 自动将 PRD 转换为结构化的任务expand_task: 将任务分解为更小、更易管理的子任务estimate_task_complexity: 估计任务复杂度和时间需求get_task_dependencies: 跟踪任务依赖关系
-
开发支持
generate_task_file: 根据任务描述生成文件模板suggest_next_actions: 获取由 AI 提供的下一步建议
前提条件
- Python 3.12+
- 您选择的 LLM 提供商(OpenAI, OpenRouter 或 Ollama)的 API 密钥
- 如果以容器形式运行 MCP 服务器,则需要 Docker(推荐)
安装
使用 uv
-
如果尚未安装 uv,请先安装:
pip install uv -
克隆此仓库:
git clone https://github.com/coleam00/mcp-mem0.git cd mcp-mem0 -
安装依赖项:
uv pip install -e . -
根据
.env.example创建.env文件:cp .env.example .env -
在
.env文件中配置环境变量(参见配置部分)
使用 Docker(推荐)
-
构建 Docker 镜像:
docker build -t mcp/mem0 --build-arg PORT=8050 . -
根据
.env.example创建.env文件并配置您的环境变量
配置
以下环境变量可以在您的 .env 文件中进行配置:
| 变量 | 描述 | 示例 |
|---|---|---|
TRANSPORT |
传输协议(sse 或 stdio) | sse |
HOST |
使用 SSE 传输时绑定的主机 | 0.0.0.0 |
PORT |
使用 SSE 传输时监听的端口 | 8050 |
运行服务器
使用 Python 3
# Set TRANSPORT=sse in .env then:
python3 src/main.py
服务器将在配置的主机和端口上启动(默认:http://0.0.0.0:8050)。
使用 Docker
docker build -t task-manager-mcp .
docker run --env-file .env -p 8050:8050 task-manager-mcp
使用任务管理器
创建新项目
- 为您的项目创建一个任务文件:
await mcp.create_task_file(project_name="my-project")
- 向您的项目中添加任务:
await mcp.add_task(
project_name="my-project",
title="Setup Development Environment",
description="Configure the development environment with required tools",
subtasks=[
"Install dependencies",
"Configure linters",
"Set up testing framework"
]
)
- 解析 PRD 以自动创建任务:
await mcp.parse_prd(
project_name="my-project",
prd_content="# Your PRD content..."
)
管理任务
- 更新任务状态:
await mcp.update_task_status(
project_name="my-project",
task_title="Setup Development Environment",
subtask_title="Install dependencies",
status="done"
)
- 获取下一个要处理的任务:
next_task = await mcp.get_next_task(project_name="my-project")
- 将任务扩展为子任务:
await mcp.expand_task(
project_name="my-project",
task_title="Implement Authentication"
)
开发工作流程
- 为任务生成文件模板:
await mcp.generate_task_file(
project_name="my-project",
task_title="User Authentication"
)
- 获取任务复杂度估计:
complexity = await mcp.estimate_task_complexity(
project_name="my-project",
task_title="User Authentication"
)
- 获取下一步操作建议:
suggestions = await mcp.suggest_next_actions(
project_name="my-project",
task_title="User Authentication"
)
与 MCP 客户端集成
SSE 配置
要使用 SSE 传输连接到服务器,请使用以下配置:
{
"mcpServers": {
"task-manager": {
"transport": "sse",
"url": "http://localhost:8050/sse"
}
}
}
标准输入输出配置
对于标准输入输出传输,请使用以下配置:
{
"mcpServers": {
"task-manager": {
"command": "python3",
"args": ["src/main.py"],
"env": {
"TRANSPORT": "stdio",
"LLM_PROVIDER": "openai",
"LLM_API_KEY": "YOUR-API-KEY",
"LLM_CHOICE": "gpt-4"
}
}
}
}
构建您自己的服务器
此模板为构建更复杂的任务管理 MCP 服务器提供了基础。要扩展它:
- 使用
@mcp.tool()装饰器添加新的任务管理工具 - 实现自定义任务分析和自动化功能
- 添加特定于项目的任务模板和工作流程
- 与您现有的开发工具和流程集成