关于 GitHub Project Manager MCP
GitHub Project Manager MCP 是通过 GitHub CLI(`gh`)管理 GitHub 资源的 MCP 服务,主要处理 issues 和 pull requests。GitHub Projects 集成列为未来计划。
主要功能
- 01管理 GitHub issues
- 02管理 pull requests
- 03使用 GitHub CLI(`gh`)
- 04以 Docker 容器运行
- 05针对 GitHub API 的集成测试
适用场景
- 01管理 GitHub 仓库中的 issues
- 02通过 MCP 工具处理 pull requests
- 03在 Docker 中使用 GitHub token 运行服务
- 04在测试仓库中验证 GitHub 操作
MCP 相关
通过 MCP 工具向客户端提供 GitHub 管理功能,并使用 GitHub CLI(`gh`)执行操作。文档介绍了在 Cursor 中配置该服务。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
docker run -i --rm -e GH_TOKEN ghcr.io/marioalvial/gh-project-manager-mcpGH_TOKEN密钥本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
ghcr.io/marioalvial/gh-project-manager-mcpstdio工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
GitHub Project Manager MCP
一个用于管理 GitHub 项目的 MCP(Model Context Protocol)服务。
描述
本项目实现了一个专门用于 GitHub 项目管理操作的 MCP 服务,通过 GitHub CLI(gh)集成来处理常见任务,例如:
- Issue 管理
- Pull Request 管理
- 未来计划:集成 GitHub Projects
使用 Docker
每次发布新版本时,都会自动将 Docker 镜像发布到 GitHub Container Registry:
docker run -i --rm -e GH_TOKEN=seu_token ghcr.io/marioalvial/gh-project-manager-mcp
在 Cursor 中配置 MCP
要在 Cursor 中使用此 MCP,请将以下配置添加到 .cursor/mcp.json:
"gh-project-manager": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GH_TOKEN",
"ghcr.io/marioalvial/gh-project-manager-mcp"
],
"env": {
"GH_TOKEN": "seu_token_github"
}
}
版本控制
本项目采用 Semantic Versioning,并根据提交规范自动发布新版本。
集成测试
本项目包含一套全面的集成测试,用于通过实际的 GitHub API 验证 GitHub MCP 工具的功能。这些测试会在执行期间创建和管理真实的 GitHub 资源,并在之后进行清理。
运行集成测试
要运行集成测试,你需要一个具有相应权限的 GitHub 令牌:
- 创建一个至少具有以下权限范围的 GitHub 个人访问令牌:
repo、project - 在项目根目录中创建一个
.env文件,内容如下:GH_INTEGRATION_TEST_TOKEN=your_github_token_here GH_INTEGRATION_TEST_OWNER=marioalvial # or your own username/organization GH_INTEGRATION_TEST_REPO=gh-project-manager-mcp # or your own repository GH_INTEGRATION_TEST_PROJECT_ID=your_project_id # required for project tests - 运行集成测试:
make function-integration-test
测试方法
集成测试直接调用实现函数,绕过 MCP 协议层,以专注于 GitHub CLI 的核心交互。这种方法可确保:
- 我们的工具实现能够正确地与 GitHub CLI 命令交互
- 资源的创建和清理按预期进行
- 错误处理能够妥善应对各种情况,包括令牌权限受限的情况
这些测试旨在应对各种 GitHub API 限制和令牌权限情况,并自动跳过或调整需要的权限超出所提供令牌权限范围的测试。
注意:测试会创建和管理真实的 GitHub 资源(Issue、PR、分支等),因此请务必使用测试仓库,以免在生产仓库中造成杂乱。
用于拉取请求测试的测试行 — 更新为 PR 测试。
演示 PR
此更改演示了如何使用 MCP 工具创建 PR。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。