GitLab MCP Server logo

GitLab MCP Server

Connects AI agents to GitLab for project, merge request, pipeline, environment, and other API operations.

Install GitLab MCP Server

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "gitlab-mcp-server-2": {
      "command": "npx",
      "args": [
        "-y",
        "@structured-world/gitlab-mcp"
      ],
      "env": {
        "GITLAB_TOKEN": "YOUR_VALUE_HERE",
        "GITLAB_API_URL": "YOUR_VALUE_HERE"
      }
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Values are written into the snippet above so you can paste it as is. They never leave your browser.

We couldn’t confirm it starts correctly

We ran the install command but it didn't respond within our test window — this can mean a slow first-time install rather than a real problem.

npx -y @structured-world/gitlab-mcp

No response to initialize.

This is an experimental automated check and can have false negatives — missing environment variables, a slow cold install, etc. It doesn’t necessarily mean something’s wrong. Last checked 1d ago.

Overview

GitLab MCP Server MCP server connects MCP-compatible agents to GitLab.com, self-managed, and self-hosted instances. It groups 230 GitLab operations into 58 CQRS tools, separating read-only `browse_*` queries from write-capable `manage_*` commands. Tool schemas are filtered according to the GitLab version, tier, token scopes, feature flags, and configuration. Reach for it when an agent needs to inspect or change GitLab projects, merge requests, CI/CD pipelines, environments, or related resources.

Use cases

  • Inspect GitLab pipelines, jobs, and logs
  • Create, retry, or cancel CI/CD pipelines
  • Review and update GitLab environments
  • Connect agents to self-managed GitLab instances
  • Restrict agent access with read-only mode

Key features

  • 58 CQRS tools covering 230 GitLab operations
  • Pipeline, environment, project, and merge request access
  • Schema filtering by GitLab capabilities and token scopes
  • stdio, SSE, and Streamable HTTP transports
  • Static token and OAuth 2.1 authentication
  • Automatic reconnect and disconnected operation

Tools4

What GitLab MCP Server lets your agent do. Expand a tool for its parameters.

Self-reported~52 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 1d ago

Recent health check succeeded.

7/7 checks healthy over the last 38d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 9d ago via OSV.dev · @structured-world/gitlab-mcp (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars8Stargazers on the source repository.
npm downloads9.6kPackage downloads in the last 30 days.
Last commit1d agoMost recent push to the default branch.
Install checkInconclusiveDidn't respond in our test window — often a slow first install.
Tools exposed4Callable tools this server registers over MCP.
Directory activity1 viewsConfig copies, upvotes, and views on AllMCPs.

How GitLab MCP Server works

What GitLab MCP Server MCP server does

GitLab MCP Server MCP server exposes GitLab API functionality through the Model Context Protocol. The repository describes 58 tools covering 230 operations across 26 GitLab entity types, including projects, merge requests, pipelines, work items, wiki content, environments, and deploy keys.

The tool design follows CQRS conventions. Tools beginning with browse_ handle read operations, while manage_ tools handle changes. Related sub-resources are represented as actions within a tool rather than as separate tools. For example, browse_pipelines includes pipeline, job, log, and trigger actions, while manage_pipeline supports creating, retrying, and cancelling pipelines.

How it works

The server connects to GitLab through its API and can target GitLab.com or self-managed and self-hosted installations. At schema-generation time, it evaluates the connected instance's GitLab version, subscription tier, token scopes, feature flags, administrative mode, and configured profiles. The resulting tool list and parameter schemas therefore reflect the operations available to that connection.

GitLab MCP Server MCP server supports stdio, SSE, and Streamable HTTP transports. It can use a static token or per-user OAuth 2.1 authentication through the documented Claude Custom Connector flow. Multiple GitLab instances are supported with per-instance OAuth handling and rate limiting.

Connectivity failures do not necessarily stop the process. Startup has a bounded wait, transient failures trigger exponential-backoff reconnects, and a disconnected instance exposes only the local manage_context diagnostics tool. During reconnection, the normal catalog remains available so clients do not lose it during brief outages. A read-only mode is available for environments where write operations should be disabled.

Setup and configuration

The standard npm package is @structured-world/gitlab-mcp, and the documented requirement is Node.js 24 or newer. A minimal stdio configuration runs the package with npx and supplies GITLAB_TOKEN and GITLAB_API_URL. The default API URL shown in the example is https://gitlab.com.

A Docker image is also provided at ghcr.io/structured-world/gitlab-mcp:latest. It can run in HTTP mode with a port mapping or in stdio mode with interactive input. The regular package stores OAuth sessions in memory or files and does not require a database. An optional PostgreSQL/Prisma package is available for multi-replica deployments; selecting it uses OAUTH_STORAGE_TYPE=postgresql.

Tools and capabilities

GitLab MCP Server MCP server includes capabilities for browsing and modifying pipelines and environments. Examples include listing or inspecting pipelines, retrieving jobs and logs, creating or retrying pipelines, listing environments, viewing deployments, and creating, updating, stopping, or deleting environments. The full catalog also covers the broader entity set documented by the project.

Tool groups and individual actions can be enabled or disabled, and descriptions can be customized. The project also provides CLI commands for listing tool details and exporting a generated reference.

Limitations and notes

Available operations depend on the connected GitLab instance and the token's permissions. The server may hide tools or parameters when the GitLab version, tier, scopes, feature flags, or profile do not support them. Authentication or configuration failures enter a failed state rather than automatically retrying, while network errors, timeouts, and server-side 5xx responses are treated as transient.

The optional PostgreSQL backend is intended for deployments with multiple replicas; ordinary use does not require it.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about GitLab MCP Server

GitLab MCP Server is an MCP server that connects AI agents to GitLab.com, self-managed, and self-hosted GitLab instances. Its main tools use `browse_*` queries and `manage_*` commands to inspect and modify projects, merge requests, pipelines, environments, and other GitLab resources through 58 tools.

Install it by running the `@structured-world/gitlab-mcp` npm package with `npx` or by using the published Docker image. The npm setup requires Node.js 24 or newer and a configuration containing `GITLAB_TOKEN` and `GITLAB_API_URL`.

Yes, it can connect to GitLab.com, self-managed installations, and self-hosted instances. Set the GitLab API URL for the target instance, then provide authentication through a token or the supported OAuth configuration.

It names Claude Desktop and VS Code installation paths, and its stdio, SSE, and Streamable HTTP transports may be usable by other MCP clients, but Cursor compatibility is not documented here.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewGitLab MCP Server AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/gitlab-mcp-server-2?style=directory)](https://allmcps.com/mcp/gitlab-mcp-server-2)
HTML Embed
<a href="https://allmcps.com/mcp/gitlab-mcp-server-2"><img src="https://allmcps.com/api/badge/gitlab-mcp-server-2?style=directory" alt="GitLab MCP Server on AllMCPs" /></a>