GitLab MCP Server

mcp-gitlab is a Model Context Protocol (MCP) server for the GitLab REST API that provides 83 tools, 7 resources, and 6 prompts for AI assistants to manage projects, merge requests, pipelines, CI/CD variables, approvals, issues, code reviews, and more. Works with Claude Desktop, Claude Code, Cursor, Windsurf, VS Code Copilot, and any MCP-compatible client. Its 40 documented tools cover gitlab, project, approval, group.

People connecting developer tools tools to Claude, Cursor, VS Code, or another MCP client. The project is written in Python.

VERIFIED ACTIVE

LAST COMMIT 2026-08-22 · ★ 6 · #22 OF 139 MAINTAINED DEVELOPER TOOLS · VERIFIED 2026-08-25

MIT · Python servers · how we verify → /methodology

01 · Install GitLab

before you install - you'll need

Set GITLAB_URL, GITLAB_TOKEN before connecting.

Claude Code

claude mcp add vish288-mcp-gitlab -- uvx mcp-gitlab

Claude Desktop / Cursor / VS Code - add to config

{
  "mcpServers": {
    "vish288-mcp-gitlab": {
      "command": "uvx",
      "args": [
        "mcp-gitlab"
      ]
    }
  }
}

Same JSON for Cursor. For VS Code, rename the top-level key from `mcpServers` to `servers`.

Using another client? Same JSON, different key

Claude Desktop · mcpServers

Cursor · mcpServers

VS Code · servers

Windsurf · mcpServers

Zed · context_servers

Cline · mcpServers

Roo Code · mcpServers

Continue · mcpServers

LibreChat · mcpServers

Gemini CLI · mcpServers

Codex CLI · mcp_servers

Full setup guides: every client.

02 · Evidence

Security posture

What to check before giving this server access to your agent - from the registry, GitHub, and our own probes. We don't score safety; we show what's verifiable.

runs as local process (stdio) - runs on your machine with your user's permissions

license MIT - declared in the repository

pypi package mcp-gitlab - check the name against the project README before installing (PyPI has no namespace ownership)

registry namespace io.github.vish288 is GitHub-verified and matches the repo owner

03 · What GitLab can do

Prose above is summarized from the project's README and registry record - no invented capabilities.

What you can build

With this server connected, an agent can get project details, create a new project, delete a project, and update merge settings.

The 40 tools it gives your agent

Extracted from the project's README - what mcp-gitlab lets an agent do.

gitlab_get_project
- Get project details
gitlab_create_project
- Create a new project
gitlab_delete_project
- Delete a project
gitlab_update_project_merge_settings
- Update merge settings
gitlab_get_project_approvals
- Get approval config
gitlab_update_project_approvals
- Update approval settings
gitlab_list_project_approval_rules
- List approval rules
gitlab_create_project_approval_rule
- Create approval rule
gitlab_update_project_approval_rule
- Update approval rule
gitlab_delete_project_approval_rule
- Delete approval rule
gitlab_list_mr_approval_rules
- List MR approval rules
gitlab_create_mr_approval_rule
- Create MR approval rule
show all 40 tools
gitlab_update_mr_approval_rule
- Update MR approval rule
gitlab_delete_mr_approval_rule
- Delete MR approval rule
gitlab_list_groups
- List groups
gitlab_get_group
- Get group details
gitlab_share_project_with_group
- Share project with group
gitlab_unshare_project_with_group
- Unshare project from group
gitlab_share_group_with_group
- Share group with group
gitlab_unshare_group_with_group
- Unshare group from group
gitlab_list_branches
- List branches
gitlab_create_branch
- Create a branch
gitlab_delete_branch
- Delete a branch
gitlab_list_commits
- List commits
gitlab_get_commit
- Get commit (with optional diff)
gitlab_create_commit
- Create commit with file actions
gitlab_compare
- Compare branches/tags/commits
gitlab_list_mrs
- List merge requests
gitlab_get_mr
- Get MR details
gitlab_create_mr
- Create merge request
gitlab_update_mr
- Update merge request
gitlab_merge_mr
- Merge a merge request
gitlab_merge_mr_sequence
- Merge multiple MRs in order
gitlab_rebase_mr
- Rebase a merge request
gitlab_mr_changes
- Get MR file changes
gitlab_approve_mr
- Approve a merge request
gitlab_unapprove_mr
- Remove approval from a merge request
gitlab_get_mr_approvals
- Get MR approval state
gitlab_list_mr_pipelines
- List MR pipelines
gitlab_list_mr_commits
- List MR commits

Latest releases

v0.9.3 · 2026-08-22

bump mcp from 1.26.0 to 1.28.1 in the uv group across 1 directory

v0.9.2 · 2026-07-08

bump pydantic-settings from 2.13.1 to 2.14.2 in the uv group across 1 directory · bump actions/checkout from 6 to 7

v0.9.1 · 2026-06-16

fix doc drifts and extend release workflow to bump server.json/gemini-extension.json

04 · Who maintains GitLab

mcp-gitlab is maintained by vish288. We track 3 MCP servers from vish288 - 3 actively maintained, 11 combined GitHub stars, oldest repo from Feb 2026. Full record: all servers from vish288.

  1. mcp-atlassian-extended MCP server for Jira and Confluence - sprints, agile boards, attachments, versions, calendars. ★ 3
  2. mcp-coda MCP server for Coda API - docs, pages, tables, rows, formulas, permissions, and automation. ★ 2

05 · Facts

category
developer tools - ranked #22 of 139 actively-maintained developer tools servers as of 2026-08-25.
release cadence
4 releases in the last 90 days (latest 2026-08-22)
registry
io.github.vish288/mcp-gitlab (active, first published 2026-02-27 · 10 versions)
packages
pypi:mcp-gitlab

06 · GitLab FAQ

Is GitLab still maintained?

Yes - as of 2026-08-25, its last commit was 2026-08-22 and it shipped 4 releases in the last 90 days. We re-verify nightly.

What can GitLab do?

With this server connected, an agent can get project details, create a new project, delete a project, and update merge settings.

How do I install GitLab?

Run `uvx mcp-gitlab`. The README documents 2 environment variables (GITLAB_URL, GITLAB_TOKEN) to set first. Set GITLAB_URL, GITLAB_TOKEN before connecting. You can also paste the ready-made client config above.

Does GitLab run locally?

Yes - it's a stdio server: it runs on your machine (via uvx) with your user's permissions. Your data stays local unless the server itself calls external APIs.

07 · Alternatives to GitLab