GitLab PR 分析 MCP 服务器是一款用于自动化处理 GitLab 上合并请求(Pull Requests)的工具。它能够与 Confluence 集成,助力团队记录和共享开发活动,提升团队协作效率。
pip install -r requirements.txt
uv add
.env.example 到项目根目录并重命名为 .env.env 文件,填写以下环境变量:
GITLAB_URL: GitLab 实例的 URLGITLAB_TOKEN: GitLab API 访问 TokenCONFLUENCE_URL: Confluence 实例的 URL(可选)CONFLUENCE_TOKEN: Confluence API 访问 Token(可选)python src/MRConfluenceLinker-mcp-server/server.py
在 Claude Desktop 中添加以下配置到 uv.json:
{
"name": "gitlab-pr-analysis",
"path": "/path/to/your/project/src/MRConfluenceLinker-mcp-server/server.py"
}
# 从 GitLab 获取指定项目的合并请求详细信息
# 参数:
# - project_id: 要获取的项目 ID
# - mr_id: 要获取的合并请求 ID
fetch_mr_details(project_id, mr_id)
# 分析合并请求中的代码变更,生成详细的变更报告
# 参数:
# - project_id: 要分析的项目 ID
# - mr_id: 要分析的合并请求 ID
analyze_code_changes(project_id, mr_id)
# 将合并请求的详细信息和分析结果存储到 Confluence 中
# 参数:
# - project_id: 要存储的项目 ID
# - mr_id: 要存储的合并请求 ID
store_in_confluence(project_id, mr_id)
project_id: 要获取的项目 IDmr_id: 要获取的合并请求 IDproject_id: 要分析的项目 IDmr_id: 要分析的合并请求 IDproject_id: 要存储的项目 IDmr_id: 要存储的合并请求 ID服务器运行时会在 mcp_server.log 文件中生成日志,便于调试和排查问题。
项目内置了多种错误处理机制,包括:
mcp_server.log 日志文件以获取更多信息。MRConfluenceLinker-mcp-server/
├── src/ # 源代码目录
│ └── MRConfluenceLinker-mcp-server/ # 主服务器包
│ ├── resources/ # 资源模块
│ │ ├── __init__.py
│ │ ├── client.py # 客户端实现 / GitLab PR 集成
│ ├── server.py # 主服务器实现
│ └── mcp_server.log # 服务器日志
├── __pycache__/ # Python 缓存文件
├── .git/ # Git 仓库
├── .gitignore # Git 忽略规则
├── CONTRIBUTING.md # 贡献指南
├── LICENSE # 项目许可证
├── README.md # 项目说明
└── requirements.txt # 依赖项管理文件
如有任何问题或建议,请联系项目维护人员。
本项目的许可证信息请查看 LICENSE 文件。