SkillAgentSearch skills...

gitlab-mcp

MCP server for GitLab: 100+ tools for projects, MRs, issues, pipelines, wikis and more via the GitLab REST/GraphQL API

Install / Use

claude mcp add zereight -- npx -y github:zereight/gitlab-mcp

If the server publishes to npm under a different name, use that package instead — check the repo README.

About this skill
🔌

MCP Server

Model Context Protocol server

Quality Score

82/100

Category

Automation

Supported Platforms

Claude Code
Claude Desktop
Cursor

Our assessment of gitlab-mcp

gitlab-mcp scores 82/100 on our quality scale, 2340th of 2,913 Automation skills we index.

Its MCP Server is 66 KB long, well organised into 29 sections with 23 code examples: long enough that it reads more like full documentation than a focused instruction file, which agents can find harder to follow.

With 2,046 GitHub stars, it is one of the more widely adopted skills in the catalogue.

Substance
21/30
Structure
20/20
Description
12/15
Adoption
14/20
Freshness
15/15

Maintenance, license and trust

  • The repository was last updated today, so gitlab-mcp is actively maintained.
  • It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
  • Its trust signals score 100/100, with no cautions. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.

gitlab-mcp compared with similar skills

All 4 of these similar skills score higher than gitlab-mcp; compare them before choosing.

SkillScoreStarsUpdatedFormat
gitlab-mcp (this skill)by zereight822.0ktodayMCP Server
Agent-Reachby Panniantong10098.0k1d agoCLAUDE.md
headroomby headroomlabs-ai10075.5ktodayCLAUDE.md
CowAgentby zhayujie10047.4ktodayCLAUDE.md
Scraplingby D4Vinci10088.1ktodayMCP Server

Frequently asked questions

How do I install gitlab-mcp?
Run claude mcp add zereight -- npx -y github:zereight/gitlab-mcp. The install tabs above show the steps for each supported agent.
Which AI agents does gitlab-mcp work with?
It is written for Claude Code, Claude Desktop and Cursor, as a MCP Server file. Other agents that read the same format can often use it too.
Is gitlab-mcp safe to use?
It is MIT-licensed and scores 100/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
Is gitlab-mcp still maintained?
The repository was last updated today, so gitlab-mcp is actively maintained.

GitLab MCP Server

GitHub stars npm downloads npm GitHub License Install in VS Code Install in Cursor Ask DeepWiki MCP Toplist mcpindex

English | 한국어 | 简体中文 | Português (Brasil)

📖 Documentation → Setup guides, environment variables, and the full tool reference live on the hosted docs site.

Install @zereight/mcp-gitlab with the recommended local personal-access-token setup. These commands use the same arguments as the Claude Code and Codex guides.

Install the zereight-mcp-gitlab binary first with npm install -g @zereight/mcp-gitlab, or Homebrew brew tap zereight/gitlab-mcp https://github.com/zereight/gitlab-mcp and brew install zereight/gitlab-mcp/zereight-mcp-gitlab.

Read the token without echo, then export it. The shell history keeps the variable name.

read -rs GITLAB_PERSONAL_ACCESS_TOKEN && export GITLAB_PERSONAL_ACCESS_TOKEN

| Client | Install | | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | Claude Code | claude mcp add gitlab --transport stdio --scope local --env GITLAB_PERSONAL_ACCESS_TOKEN="$GITLAB_PERSONAL_ACCESS_TOKEN" --env GITLAB_API_URL=https://gitlab.com/api/v4 -- zereight-mcp-gitlab | | Codex | codex mcp add gitlab --env GITLAB_PERSONAL_ACCESS_TOKEN="$GITLAB_PERSONAL_ACCESS_TOKEN" --env GITLAB_API_URL=https://gitlab.com/api/v4 -- zereight-mcp-gitlab | | Cursor | Cursor setup guide | | VS Code | VS Code setup guide | | JSON clients | JSON-based MCP clients setup guide |

Star History Chart

@zereight/mcp-gitlab

Agent-workflow-optimized GitLab MCP — manage projects, merge requests, issues, pipelines, wiki, releases, tags, milestones, and more through stdio, SSE, and Streamable HTTP.

Supports PAT, OAuth, read-only mode, dynamic API URLs, and remote authorization for VS Code, Claude, Cursor, Copilot, and other MCP clients.

Why use this GitLab MCP?

  • 276 tools: 274 in toolsets + execute_graphql + discover_tools — start with a small toolset; activate more at runtime without CQRS-style grouping
  • MR 2-step review — list_merge_request_changed_files → batched get_merge_request_file_diff
  • Agent Skill built in — workflow guidance in skills/gitlab-mcp/
  • Flexible auth — Personal Access Token, local OAuth2 browser flow, MCP OAuth proxy, and per-request remote authorization
  • Multiple transports — stdio for local clients, SSE for legacy clients, and Streamable HTTP for modern remote deployments
  • Client-friendly setup — examples for Claude Code, Codex, Antigravity, OpenCode, Copilot, Cline, Roo Code, Cursor, Kilo Code, and Amp Code
  • Self-hosted ready — works with custom GitLab instances, proxy settings, and dynamic API URL routing
  • JMESPath result filtering — optional jmespath on tool calls (see tools/list) shrinks JSON results without changing GitLab API requests; when response masking is enabled, JMESPath runs on masked data.

How we compare

| | @zereight/mcp-gitlab | GitLab MCP A (community CQRS-style) | GitLab official MCP server | | -------------- | ----------------------------------------------------------------- | -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ | | Best for | AI agent workflows | Enterprise multi-instance / grouped tools | Built into GitLab, no separate install | | Tool model | 276 tools: 274 in toolsets + execute_graphql + discover_tools | ~50–60 grouped browse_* / manage_* tools | Toolsets chosen with an HTTP header | | MR review | 2-step batched diff | Varies | get_merge_request with diffs | | Node.js | >=18.17 | Often >=24 | Node.js 20+ for stdio via mcp-remote | | License | MIT | Varies | Part of GitLab |

Full comparison with GitLab MCP A →

GitLab also ships an official MCP server.

  • Free, Premium, and Ultimate. Moved from Premium to Free in GitLab 19.2. Generally available in GitLab 19.5.
  • On GitLab.com, a top-level group Owner allows access to the MCP server. On GitLab Self-Managed and GitLab Dedicated, an administrator controls the instance setting. Default rules are on the official page.
  • Remote clients use HTTP https://<gitlab.example.com>/api/v4/mcp with OAuth 2.0 dynamic client registration.
  • stdio goes through mcp-remote and needs Node.js 20 or later.
  • Toolsets use the X-Gitlab-Enabled-Mcp-Server-Toolsets header. An optional X-Gitlab-Mcp-Server-Tool-Name-Prefix header keeps the first 32 characters of a tool-name prefix.

Quick start: choose either Personal Access Token or OAuth2 setup below, install @zereight/mcp-gitlab, and use zereight-mcp-gitlab in your MCP client configuration.

Client Setup Guides

Usage

Setup Overview

Authentication Methods

The server supports four authentication methods:

For local/desktop use (most common):

  1. Personal Access Token (GITLAB_PERSONAL_ACCESS_TOKEN or GITLAB_PERSONAL_ACCESS_TOKEN_FILE) — simplest setup
  2. OAuth2 — Local Browser (GITLAB_USE_OAUTH) — recommended for better security

For server/remote deployments:

  1. OAuth2 — MCP Proxy (GITLAB_MCP_OAUTH) — for remote MCP clients such as Claude.ai
  2. Remote Authorization (REMOTE_AUTHORIZATION) — multi-user deployments where each caller provides their own token

Quick setup paths

For the simplest local setup, start with a Personal Access Token. For browser-based local auth, use OAuth2. For remote or multi-user deployments, continue to the MCP OAuth and Remote Authorization sections later in this README.

Install the server once:

brew tap zereight/gitlab-mcp https://github.com/zereight/gitlab-mcp
brew install zereight/gitlab-mcp/zereight-mcp-gitlab

Or with npm:

npm install -g @zereight/mcp-gitlab

Or with Nix, by adding this flake to your own:

# flake.nix
inputs.gitlab-mcp.url = "github:zereight/gitlab-mcp";

# wherever you configure your MCP client:
command = lib.getExe inputs.gitlab-mcp.packages.${system}.default;

The store path is pinned by your lock file; update it with nix flake update gitlab-mcp.

The examples use zereight-mcp-gitlab, a less collision-pron

Truncated for display — read the full file on GitHub.

Related Skills

View on GitHub
GitHub Stars2.0k
CategoryAutomation
Updated6h ago
Forks358

Languages

TypeScript

Trust signals

100/100

From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.

No cautions