Back to MCP directory
publicPublicdnsLocal runtime

gitlab-mr-mcp

GitLab MR MCP是一个基于模型上下文协议(MCP)的服务,提供AI代理与GitLab仓库交互的能力,包括管理合并请求、查看代码差异、添加评论等功能。

article

README

🚀 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。

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client