一个使用 Model Context Protocol (MCP) 实现与 GitLab 合并请求和问题交互的服务器,借助该服务器,可让 AI 代理与 GitLab 仓库进行交互。
该项目实现了一个基于 Model Context Protocol (MCP) 的服务器,允许 AI 代理与 GitLab 仓库进行交互,能实现列出可用项目、获取合并请求详细信息等功能。
要通过 Smithery 自动安装 GitLab MR MCP 以便在 Claude Desktop 上使用:
npx -y @smithery/cli@latest install @kopfrechner/gitlab-mr-mcp --client claude --config '"{\"gitlabMrMcpToken\":\"YOUR_GITLAB_TOKEN\", \"gitlabMrMcpHost\": \"YOUR_GITLAB_HOST\"}"'
npm install
{
"mcpServers": {
"gitlab-mr-mcp": {
"command": "node",
"args": ["/path/to/gitlab-mr-mcp/index.js"]
},
"env": {
"MR_MCP_GITLAB_TOKEN": "your_gitlab_token",
"MR_MCP_GITLAB_HOST": "your_gitlab_host"
}
}
}
工具名称 | 详情 |
---|---|
get_projects |
获取您可以访问的所有 GitLab 项目的列表。 |
list_open_merge_requests |
列出指定项目中的所有打开的合并请求。 |
get_merge_request_details |
获取特定合并请求的详细信息。 |
get_merge_request_comments |
获取特定合并请求上的评论,包括讨论笔记和代码差分注释。 |
add_merge_request_comment |
在特定合并请求上添加一条一般评论。 |
add_merge_request_diff_comment |
在特定文件中的某一行向合并请求添加注释。 |
get_merge_request_diff |
获取合并请求的代码差分。 |
get_issue_details |
获取特定问题的详细信息。 |
设置环境变量:
export MR_MCP_GITLAB_TOKEN=your_gitlab_token
export MR_MCP_GITLAB_HOST=your_gitlab_host
用于与 MCP 客户端一起使用时,可以运行:
npx -y @modelcontextprotocol/inspector npm start
如果遇到权限问题(403 禁止),请检查:
MIT
欢迎贡献!请随意提交 Pull Request。