Gitlab Mr Mcp

Gitlab Mr Mcp

🚀 GitLab MR MCP

一个使用 Model Context Protocol (MCP) 实现与 GitLab 合并请求和问题交互的服务器,借助该服务器,可让 AI 代理与 GitLab 仓库进行交互。

🚀 快速开始

该项目实现了一个基于 Model Context Protocol (MCP) 的服务器,允许 AI 代理与 GitLab 仓库进行交互,能实现列出可用项目、获取合并请求详细信息等功能。

✨ 主要特性

  • 列出可用的 GitLab 项目
  • 获取合并请求的详细信息和评论
  • 获取合并请求的代码差分
  • 在合并请求上添加评论
  • 在代码差分的特定行上添加注释
  • 获取问题的详细信息

📦 安装指南

⚡ 使用 Smithery

要通过 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\"}"'

🛠️ 手动安装

🔧 先决条件

  • Node.js
  • 具有 API 访问权限的 GitLab 访问令牌
  • GitLab 项目 ID(s)

📖 设置

  1. 克隆此仓库
  2. 安装依赖项:
npm install
  1. 将以下内容添加到您的 MCP 客户端配置中:
{
"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 获取特定问题的详细信息。

🏗️ 开发

🔍 运行 Inspector

设置环境变量:

export MR_MCP_GITLAB_TOKEN=your_gitlab_token
export MR_MCP_GITLAB_HOST=your_gitlab_host

用于与 MCP 客户端一起使用时,可以运行:

npx -y @modelcontextprotocol/inspector npm start

🛠️ 问题排除

如果遇到权限问题(403 禁止),请检查:

  1. 您的 GitLab 令牌具有适当的范围(api, read_api)
  2. 令牌用户对项目有适当的访问权限
  3. 项目 ID 是正确的

📄 许可证

MIT

🤝 贡献

欢迎贡献!请随意提交 Pull Request。

  • 0 关注
  • 0 收藏,8 浏览
  • system 提出于 2025-09-27 05:21

相似服务问题