使用说明
项目简介
GamePlan 是一个基于 Flask 开发的项目管理应用,专为AI编码项目设计,并完整支持模型上下文协议 (MCP)。通过 GamePlan MCP 服务器,AI助手(如 Windsurf)可以与 GamePlan 应用集成,实现项目管理的自动化。
主要功能点
- 资源管理: 托管和管理项目 (Projects)、迭代 (Sprints)、任务 (Tasks) 和问题 (Issues) 等项目管理核心资源。
- 数据访问能力: 提供对项目管理资源进行CRUD操作的工具,允许AI助手读取和修改项目数据。
- 工具注册与执行: 注册了一系列用于项目、迭代、任务和问题管理的工具,例如创建项目、列出任务、更新问题等,AI助手可以调用这些工具来执行项目管理操作。
- MCP协议支持: 实现了完整的模型上下文协议,通过 JSON-RPC 协议与 MCP 客户端通信,支持 'initialize', 'tools/list', 'tools/call', 'shutdown' 等标准方法。
- HTTP诊断接口: 内置 HTTP 服务器,提供 '/mcp' 和 '/mcp/tools' 接口用于健康检查和工具列表查看。
安装步骤
- 环境准备: 确保已安装 Python 3.8 或更高版本,并安装了 'venv' 模块。
- 创建虚拟环境:
python -m venv venv source venv/bin/activate # Linux/macOS venv\Scripts\activate # Windows - 安装依赖:
如果 'requests' 或 'flask-cors' 缺失,可以运行 'install_dependencies.py' 脚本辅助安装:pip install -r requirements.txtpython install_dependencies.py - 初始化数据库:
flask init-db - 创建示例数据 (可选):
flask create-sample-data - 运行 GamePlan 应用:
GamePlan 应用默认运行在 'http://127.0.0.1:5001'。flask run
服务器配置
MCP 客户端需要配置连接 GamePlan MCP 服务器的信息。以下是 Windsurf 等 MCP 客户端所需的 'mcp_config.json' 配置示例:
{ "serverName": "GamePlan-MCP", "command": "python", "args": [ "mcp/new_mcp_server.py" ], "serverUrl": "http://localhost:5050/mcp", "baseUrl": "http://127.0.0.1:5001", "description": "GamePlan Model Context Protocol Server", "capabilities": { "tools": { "supported": true } } }
参数注释:
- 'serverName': MCP 服务器的名称,可以自定义。
- 'command': 启动 MCP 服务器的命令,这里使用 'python'。
- 'args': 启动命令的参数,指向 'new_mcp_server.py' 脚本。
- 'serverUrl': MCP 服务器的 HTTP JSON-RPC 端点 URL,默认为 'http://localhost:5050/mcp',用于HTTP传输协议的MCP客户端。
- 'baseUrl': GamePlan Flask 应用的根 URL,MCP 服务器需要连接到 GamePlan 应用获取工具和执行操作,默认为 'http://127.0.0.1:5001'。 请确保此 URL 与您运行的 GamePlan 应用地址一致。
- 'description': MCP 服务器的描述信息。
- 'capabilities': 声明服务器的能力,'tools.supported: true' 表示支持工具功能。
基本使用方法
- 启动 GamePlan 应用: 按照上述安装步骤运行 'flask run' 启动 GamePlan Web 应用。
- 配置 MCP 客户端: 将上述 'mcp_config.json' 文件复制到 MCP 客户端(如 Windsurf)的配置目录,并根据实际情况修改 'baseUrl' 为您的 GamePlan 应用地址。
- 在 MCP 客户端中选择 GamePlan: 在 MCP 客户端中选择 "GamePlan-MCP" 作为 MCP 提供者。
- AI助手调用工具: 配置完成后,AI助手即可通过 MCP 协议调用 GamePlan 提供的项目管理工具,例如:
- 列出所有项目
- 创建新的任务
- 更新迭代状态
- 查询问题详情
具体工具列表及其参数,请参考仓库 'app/mcp/server.py' 文件中 'TOOLS' 变量的定义。
信息
分类
生产力应用