GitLab MCP Server

io.github.jmrplens由 GitHub 账号 jmrplens 发布v3.4.0更新于 Oct 31, 2026

Go MCP server for GitLab: 2 dynamic tools reach ~876 actions on Free/CE, up to ~1103 on Ultimate.

发布方自己的服务:Gitlab

已验证Streamable HTTP可网页运行效率与工作流开发者工具

概览

AI 生成的概览

GitLab MCP 服务器,通过两个发现工具访问数百个 GitLab 操作,涵盖项目、合并请求、议题、流水线与发布。

可以做什么
  • 搜索本地操作目录,获取操作 ID、参数结构与示例
  • 按规范 ID 执行 GitLab 操作:项目、群组、成员与上传
  • 处理合并请求、议题、分支、标签、提交、文件与 Wiki 页面
  • 创建发布、发布软件包并关联发布附件
  • 订阅单个资源的变化通知,无需反复轮询
适用场景
适合让助手直接操作 GitLab 实例:审查合并请求、处理议题、排查流水线失败、管理分支与文件或发布版本;支持 GitLab.com 与自建实例,覆盖 Free 到 Ultimate。
运行要求
需要具备 api 或 read_api 权限的 GitLab 个人、项目或群组访问令牌,通过 GITLAB_TOKEN 传入;自建实例需设置 GITLAB_URL。可作为本地进程运行(npm、PyPI、NuGet、Homebrew、winget、Docker 或桌面扩展),也可使用带 OAuth 的托管 HTTP 端点。需能访问 GitLab 实例的网络。
安装前请注意
令牌拥有其权限范围内的全部能力,除非启用 GITLAB_MCP_READ_ONLY 或 GITLAB_MCP_SAFE_MODE,否则可执行写入、删除等破坏性操作;破坏性操作需 confirm=true。托管端点 mcp.jmrp.io 会接收你的令牌和所有请求,若需保护凭据请自行部署。上传与下载操作会在配置的目录内读写本地文件。

安装

在 SourceWeft 中

  1. 打开 控制台中的 GitLab MCP Server,将其添加到工作区。
  2. 连接 所需的 凭据。它们会被私密存储,绝不会在公开页面上展示。
  3. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.github.jmrplens%2Fgitlab-mcp-server/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。 客户端会在首次连接时完成 OAuth 登录。

{
  "mcpServers": {
    "gitlab": {
      "type": "http",
      "url": "https://mcp.jmrp.io/gitlab"
    }
  }
}

README

[GitLab MCP Server: GitLab for your AI assistant, one action catalog, three MCP tool surfaces]

GitLab MCP Server

All of GitLab for your AI assistant. Up to 1,103 actions over GitLab's REST and GraphQL APIs, from Free to Ultimate and on GitLab.com, in one self-contained binary that works with Claude, Cursor, VS Code, Codex and any other MCP client. You ask in plain language; it does the GitLab work.

11,396 tokens of startup context by default, the same on every GitLab tier (1,994 with GITLAB_MCP_CAPABILITY_SURFACE=minimal). Two tools reach the whole catalog, where listing every tool as its own costs from 558,319 to 715,378 tokens. Measured with the cl100k_base tokenizer and checked in CI. How it is measured

"Review merge request !15: is it safe to merge?" · "Why did the last pipeline fail?" · "List open issues assigned to me" · "Generate release notes from v1.0 to v2.0"

Why this server

  • Every tier and every instance. Free/CE, Premium and Ultimate, self-managed or GitLab.com with its Orbit knowledge graph. The tier is detected and the catalog follows it.
  • The token you already have. A personal, project or group access token with api, or read_api for the actions GitLab accepts from it; a fine-grained token, judged action by action from its grant; OAuth in HTTP mode. Each action's tool reference entry says which scope and which fine-grained permissions it needs.
  • Guard rails. Read-only mode, safe mode (a preview of each write instead of the write), tools excluded by name, and a confirmation before anything destructive.
  • Three surfaces, two transports. Two discovery tools by default, one tool per domain or one per action; stdio for a desktop client, or HTTP for a shared deployment that keeps each credential apart. 45 resources and 37 prompts besides.
  • Releases you can verify. Signed checksums, an SBOM per binary and build provenance for every artifact.

Install

The buttons register the Docker image, so they need Docker; the Claude Desktop row downloads a native extension instead. Create a personal access token with the api scope (or read_api for the actions GitLab accepts from it; add GITLAB_MCP_READ_ONLY=true when nothing may be written).

ClientOne-click buttonToken step
VS Code[Install in VS Code] [Install in VS Code Insiders]prompts you (masked)
Cursor[Install in Cursor]edit YOUR_GITLAB_TOKEN
LM Studio[Add to LM Studio]edit YOUR_GITLAB_TOKEN
Kiro[Add to Kiro]edit YOUR_GITLAB_TOKEN
Claude Desktop[Download the .mcpb extension]settings UI

Claude Code. The registration command never carries the token: -e GITLAB_TOKEN forwards it from the environment Claude Code hands docker.

bash
export GITLAB_TOKEN=glpat-xxxxclaude mcp add gitlab --transport stdio \  -- docker run -i --rm -e GITLAB_TOKEN ghcr.io/jmrplens/gitlab-mcp-server:latest

Any other client runs one of these as the server's command, with GITLAB_TOKEN in the environment it passes:

bash
npx -y @jmrp.io/gitlab-mcp-server                   # npm, nothing installed firstuvx jmrplens-gitlab-mcp-server                      # PyPI, nothing installed firstdnx gitlab-mcp-server                               # NuGet (.NET 10 SDK), nothing installed firstbrew install jmrplens/tap/gitlab-mcp-server         # Homebrew, macOS and Linuxwinget install --id jmrplens.gitlab-mcp-server -e   # winget, Windowsdocker run -i --rm -e GITLAB_TOKEN ghcr.io/jmrplens/gitlab-mcp-server:latest

For a self-managed instance, set GITLAB_URL=https://gitlab.example.com beside the token; with the Docker image, also forward it by adding -e GITLAB_URL to the docker arguments, since the container receives only the variables named there (Docker install). Every channel, per-client configuration and verification step is in the installation guide, and an assistant installing it for you will find the same in llms.txt.

To try it first, a public instance runs at https://mcp.jmrp.io/gitlab, and the browser inspector calls it read-only after an OAuth sign-in. Your token and every request pass through that machine, so run it yourself to keep using it; the hosted endpoint page says what it is and is not.

Documentation

Everything else is at docs.jmrp.io/gitlab-mcp-server, in English and Spanish: getting started, configuration, tool surfaces, HTTP server mode, security, privacy and troubleshooting.

Packages and listings

Contributing, security and licence

Contributions are welcome here on GitHub; CONTRIBUTING.md describes the workflow and how a change is reviewed, and CODE_OF_CONDUCT.md applies. GOVERNANCE.md says how decisions are made and who holds which role, and the roadmap says where the project is going. Report a vulnerability privately, as SECURITY.md describes. The server is MIT licensed (LICENSE).


Maintained by José M. Requena Plens · Project page · Hosted instance: mcp.jmrp.io/gitlab

来源:README.md,提交 a8c79c8

工具

2

gitlab_execute_action

GitLab Execute Action

Execute one GitLab catalog action by canonical ID or alias. Always pass params as an object. Destructive actions require top-level confirm=true. Use find first only when action or params are unclear. Example: {"action":"issue.list","params":{"project_id":"group/project"}}

输入参数action必填params必填confirm

gitlab_find_action

GitLab Find Action

Search the local GitLab action catalog. Read-only and no GitLab API call. Use when the action ID or params are unclear. Returns schemas, hints, destructive flags, and execute examples. Example: {"query":"issue list"}

输入参数limitquery必填explain

版本历史

5
  1. v3.4.0最新Oct 31, 2026
  2. v3.3.0Oct 20, 2026
  3. v3.2.0Oct 9, 2026
  4. v3.1.0Oct 1, 2026
  5. v3.0.0Sep 16, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

其他 Gitlab 集成