MCP Gitlab logo

MCP Gitlab

Connect an AI agent to GitLab projects, issues, merge requests, pipelines, groups, and search through local stdio.

Install MCP Gitlab

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

STDIOPython
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "mcp-gitlab": {
      "command": "uvx",
      "args": [
        "mcp-gitlab-crunchtools"
      ],
      "env": {
        "GITLAB_TOKEN": "YOUR_VALUE_HERE",
        "GITLAB_URL": "YOUR_VALUE_HERE",
        "SSL_CERT_FILE": "YOUR_VALUE_HERE",
        "GITLAB_SSL_VERIFY": "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.

uvx mcp-gitlab-crunchtools

Process exited before answering 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 6d ago.

Overview

MCP Gitlab MCP server exposes GitLab project, group, merge request, issue, pipeline, and search operations to MCP-compatible clients. It runs locally over stdio and uses a personal access token to call GitLab REST APIs, with a configurable URL for gitlab.com, self-hosted, or enterprise instances. Reach for it when an agent needs to inspect repositories or perform supported GitLab actions such as creating issues, updating merge requests, or reviewing pipeline logs. Installation is available through uvx, pip, or a Podman container.

Use cases

  • List projects and branches available to a user
  • Review merge requests and their comments or diffs
  • Create and update GitLab issues
  • Check failed pipelines and inspect job logs
  • Search code or resources across GitLab

Key features

  • Project, group, branch, and commit queries
  • Merge request creation, updates, comments, and diffs
  • Issue creation, updates, and comments
  • Pipeline, job, and log inspection
  • Global and project-scoped GitLab search
  • Configurable GitLab URL with token handling and input validation

Security & health

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

ActiveLast checked 3d ago

Recent health check succeeded.

7/7 checks healthy over the last 41d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 16d ago via OSV.dev · mcp-gitlab-crunchtools (PyPI)

Adoption & maintenance

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

GitHub stars2Stargazers on the source repository.
Last commit6d agoMost recent push to the default branch.
Install checkInconclusiveDidn't respond in our test window — often a slow first install.
Directory activity3 viewsConfig copies, upvotes, and views on AllMCPs.

How MCP Gitlab works

What MCP Gitlab MCP server does

MCP Gitlab MCP server connects an MCP-compatible agent to GitLab through the GitLab REST API. It covers project and group discovery, repository branches and commits, merge requests, issues, CI/CD pipelines, and resource search. Both gitlab.com and custom GitLab URLs are supported, making it suitable for self-hosted and enterprise deployments.

Read operations include listing and retrieving projects, groups, branches, commits, merge requests, issues, pipelines, jobs, comments, and job logs. Write operations can create or update merge requests and issues, and can add notes to either. Search can run across accessible GitLab resources or within one project.

How it works

The MCP Gitlab MCP server runs locally through stdio, so the GitLab token is kept on the machine running the process rather than sent to a third-party service. An MCP client starts the command and supplies GITLAB_TOKEN through the environment. The server then translates tool calls into GitLab API requests.

Inputs are checked with Pydantic models. The implementation also documents a threat model, stores the token as a SecretStr, sanitizes it from errors, validates project and group identifiers, and blocks path traversal. Requests use timeouts and response-size limits. HTTPS and certificate validation are enabled by default, except for localhost behavior described by the project.

Setup and configuration

The recommended package-based launch command is uvx mcp-gitlab-crunchtools. You can also install mcp-gitlab-crunchtools with pip, or run quay.io/crunchtools/mcp-gitlab with Podman. The container requires the token to be passed into its environment.

Set GITLAB_TOKEN to a GitLab personal access token. A read_api scope supports listing and viewing resources; the api scope is needed for the documented create and update features. GITLAB_URL defaults to https://gitlab.com and can point to another GitLab instance. For an internal certificate authority, set SSL_CERT_FILE to a CA bundle path. GITLAB_SSL_VERIFY defaults to true; disabling it is not recommended.

The README gives a Claude Code configuration using claude mcp add and the uvx command, with an alternative Podman form. It also shows how to provide a self-hosted URL. The project supports Linux, macOS, and Windows.

Tools and capabilities

The MCP Gitlab MCP server provides 27 listed tools across these areas:

  • Projects: filter and search projects, retrieve project details, and inspect branches and commits.
  • Groups: list or retrieve groups and list their projects, including subgroup support.
  • Merge requests: filter and retrieve MRs, create or update them, list or add notes, and inspect changes.
  • Issues: filter and retrieve issues, create or update them, and list or add notes.
  • Pipelines: filter and retrieve pipelines, list pipeline jobs, and read job output.
  • Search: search all accessible GitLab resources or search within a selected project.

Use read-only token scopes when an agent only needs visibility. Grant the broader API scope only when the workflow requires mutations such as creating issues or updating merge requests.

Reviews

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

Frequently Asked Questions about MCP Gitlab

MCP Gitlab is an MCP server that connects AI clients to GitLab instances, including gitlab.com, self-hosted, and enterprise deployments. Its main tools list and retrieve projects, groups, merge requests, issues, pipelines, and search results, while also creating or updating issues and merge requests and reading comments, diffs, and job logs.

Install it with `uvx mcp-gitlab-crunchtools`, use `pip install mcp-gitlab-crunchtools`, or run the published Podman container. Set `GITLAB_TOKEN` before starting the stdio server. The README also provides a Claude Code command for registering either the uvx or container launch.

Set `GITLAB_URL` to the self-hosted GitLab instance URL and provide `GITLAB_TOKEN`. If the instance uses an internal certificate authority, set `SSL_CERT_FILE` to the custom CA bundle. TLS verification remains enabled by default through `GITLAB_SSL_VERIFY=true`.

Use a personal access token with `read_api` for read-only project, issue, merge request, and pipeline access. Use the `api` scope when the agent must create or update issues or merge requests, or add notes. The token is supplied through `GITLAB_TOKEN`.

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 PreviewMCP Gitlab AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/mcp-gitlab?style=directory)](https://allmcps.com/mcp/mcp-gitlab)
HTML Embed
<a href="https://allmcps.com/mcp/mcp-gitlab"><img src="https://allmcps.com/api/badge/mcp-gitlab?style=directory" alt="MCP Gitlab on AllMCPs" /></a>