Better GitLab MCP Server 使用说明

项目简介

Better GitLab MCP Server 是一个改进的 GitLab MCP 服务器实现,它扩展了原始 GitLab MCP 服务器的功能,并修复了一些已知的问题。该服务器允许 LLM 客户端通过 Model Context Protocol (MCP) 标准协议与 GitLab 进行交互,从而实现代码仓库管理、问题跟踪、合并请求处理等多种 DevOps 功能。

主要功能点

  • 代码仓库操作: 支持创建、更新文件,推送文件到仓库,获取文件内容,搜索仓库,fork 仓库,创建分支等功能。
  • 问题 (Issue) 管理: 支持创建 GitLab Issues。
  • 合并请求 (Merge Request) 管理: 支持创建、更新、获取合并请求及其差异,以及为合并请求或 issue 添加评论。
  • 项目管理: 支持创建 GitLab 项目。

所有功能均通过工具 (Tools) 的形式暴露给 MCP 客户端,客户端可以通过调用这些工具来完成与 GitLab 的交互。

安装步骤

  1. 安装 Node.js 和 npm: 确保你的系统已安装 Node.js 和 npm。你可以从 nodejs.org 下载并安装。
  2. 全局安装 npm 包: 打开终端或命令提示符,运行以下命令全局安装 '@zereight/mcp-gitlab' 包:
    npm install -g @zereight/mcp-gitlab

服务器配置

MCP 服务器是为 MCP 客户端设计的,客户端需要配置服务器的启动命令才能连接。以下是使用不同 MCP 客户端时需要配置的 JSON 格式服务器信息示例。

对于 Claude App, Cline, Roo Code:

{
  "mcpServers": {
    "GitLab communication server": {
      "command": "npx",
      "args": ["-y", "@zereight/mcp-gitlab"],
      "env": {
        "GITLAB_PERSONAL_ACCESS_TOKEN": "你的 GitLab 私人访问令牌",
        "GITLAB_API_URL": "你的 GitLab API URL (默认为 https://gitlab.com/api/v4)"
      }
    }
  }
}

配置参数说明:

  • '"GitLab communication server"': 服务器名称,可以自定义。
  • '"command": "npx"': 启动服务器的命令,这里使用 'npx' 来运行 npm 包。
  • '"args": ["-y", "@zereight/mcp-gitlab"]': 'npx' 命令的参数,'-y' 表示自动确认安装包,'@zereight/mcp-gitlab' 是要运行的 npm 包名。
  • '"env"': 环境变量配置。
    • '"GITLAB_PERSONAL_ACCESS_TOKEN"': 必须配置。你的 GitLab 私人访问令牌,用于服务器访问 GitLab API。你需要在 GitLab 中生成一个具有 'api' 权限的私人访问令牌。
    • '"GITLAB_API_URL"': 可选配置。你的 GitLab API 的 URL。如果你的 GitLab 实例不是在 'gitlab.com' 上,你需要修改此项。默认为 'https://gitlab.com/api/v4'。

对于 Cursor:

在 Cursor 中,你可以直接设置环境变量并在终端中运行服务器:

env GITLAB_PERSONAL_ACCESS_TOKEN=你的GitLab私人访问令牌 GITLAB_API_URL=你的GitLab API URL npx @zereight/mcp-gitlab

环境变量说明:

  • 'GITLAB_PERSONAL_ACCESS_TOKEN': 你的 GitLab 私人访问令牌,必须设置
  • 'GITLAB_API_URL': 你的 GitLab API URL,可选设置,默认为 'https://gitlab.com/api/v4'。

基本使用方法

  1. 启动服务器: 根据你使用的 MCP 客户端配置并启动服务器。对于 Claude App 等客户端,服务器会在客户端连接时自动启动。对于 Cursor,你需要在终端手动运行启动命令。
  2. 在 MCP 客户端中使用: 在支持 MCP 协议的 LLM 客户端(如 Claude, Cursor, Roo Code 等)中,配置并连接到你启动的 GitLab MCP 服务器。连接成功后,你就可以在客户端中通过自然语言指令调用 GitLab 的各种功能,例如:
    • "创建一个名为 'bug fix' 的 issue,标题为 '修复登录错误',描述为 '用户无法正常登录系统'。"
    • "在项目 'my-project' 的 'main' 分支下创建一个名为 'new_feature.py' 的文件,内容为 'print("Hello, world!")'。"
    • "搜索名为 'test' 的 GitLab 项目。"

客户端会根据你的指令,调用服务器提供的工具,并返回 GitLab 的操作结果。

信息

分类

开发者工具