Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

Advanced GitLab MCP server

by structured-worldversion 13.2.0i★ –iRuns on your computer
Registry nameio.github.structured-world/gitlab-mcp

Install

Overview

Description from the maker (original English)

66 tools, 241 typed actions, 27 registry groups

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Runs on your computer
  • Transport: stdio
  • Category: Developer tools
  • You need to fill in: GITLAB_TOKEN

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 1 of 1 passed
  • Runs on your computer with your user’s permissions (files, network, apps).
  • You fill in yourself: GITLAB_TOKEN, GITLAB_API_URL, GITLAB_READ_ONLY_MODE

Values marked secret are keys to your account. Never share them or paste them into a chat.

You need

  • npmNode.js installed (for the npx command)

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

Download the maker’s .mcpb file

The link goes to the maker’s own file; we do not host or repackage it. Open the file and Claude Desktop installs it.

Run this in your terminal

claude mcp add gitlab --env GITLAB_TOKEN=your-value --env GITLAB_API_URL=your-value --env GITLAB_READ_ONLY_MODE=your-value -- npx -y @structured-world/gitlab-mcp

Fill in the empty values before running it.

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "gitlab": {
      "command": "npx",
      "args": [
        "-y",
        "@structured-world/gitlab-mcp"
      ],
      "env": {
        "GITLAB_TOKEN": "your-value",
        "GITLAB_API_URL": "your-value",
        "GITLAB_READ_ONLY_MODE": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "gitlab": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@structured-world/gitlab-mcp"
      ],
      "env": {
        "GITLAB_TOKEN": "your-value",
        "GITLAB_API_URL": "your-value",
        "GITLAB_READ_ONLY_MODE": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.

Your choice stays on this device in a cookie; no account needed.

Values you fill in

  • GITLAB_TOKEN secret required env
    GitLab Personal Access Token with 'api' and 'read_user' scopes
  • GITLAB_API_URL env
    GitLab instance API URL for self-hosted instances (defaults to https://gitlab.com)
  • GITLAB_READ_ONLY_MODE env
    Enable read-only mode (disable all manage_* write operations)

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

Runs on your computer; the tool list appears in your AI app after you install it.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account structured-world, which owns the repo

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • – Not applicable

    Endpoint responds

    This one runs on your computer; there is no internet endpoint

  • – Not applicable

    Sign-in with OAuth

    Runs on your computer and uses local settings instead

  • … Not checked yet

    No hidden instructions in tool descriptions

    Runs on your computer; we can only read tool lists from internet endpoints

Compared with others in Developer toolsi

  • More stars than 0% of the other 1385 servers in this category
  • Published to the registry more recently than 96% of the other 1385 servers in this category
  • Basic checks equal to or better than 100% of the other 1385 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is Advanced GitLab MCP server safe?

It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

You need to fill in: GITLAB_TOKEN

Does it run on my computer or in the cloud?

It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).

Is it still maintained?

The GitHub repo last changed –, and the latest version (13.2.0) reached the registry yesterday.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js, MCPB on your computer.

What can I use instead?

In the same category: GitHub, Desktop Commander, Cloudflare MCP

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

GitHub

by github

GitHub’s official server lets AI read and manage code, issues and pull requests in your account. Use GitHub’s hosted version or run it locally with Docker.

Computer or cloud★ 34,245MITUpdated 3 days ago
Install

Desktop Commander

by wonderwhy-er

MCP server for terminal commands, file operations, and process management

Runs on your computer★ 10,225MITUpdated 15 days ago
Install

Cloudflare MCP

by cloudflare

Cloudflare MCP servers

Runs in the cloud★ 4,446Apache-2.0Updated 14 months ago
Install

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

Advanced GitLab MCP server

Advanced GitLab MCP server: 66 tools across 27 registry groups, including 60 CQRS tools with 241 typed actions and 6 setup helpers. The tool catalog and parameters are filtered to each instance's GitLab version, tier, and token scopes, so the agent sees only what the connected instance actually supports.

Packages

This is a monorepo with two npm packages:

  • [`@structured-world/gitlab-mcp`](https://www.npmjs.com/package/@structured-world/gitlab-mcp) — the MCP server. In-memory and file OAuth-session storage, no database dependency. This is all most users need.
  • [`@structured-world/gitlab-mcp-db`](https://www.npmjs.com/package/@structured-world/gitlab-mcp-db) — optional PostgreSQL/Prisma OAuth-session backend for running multiple replicas behind a load balancer. Enable it with OAUTH_STORAGE_TYPE=postgresql; see the PostgreSQL deployment guide for the full setup.

Quick Start

{

"mcpServers": { "gitlab": { "command": "npx", "args": ["-y", "@structured-world/gitlab-mcp"], "env": { "GITLAB_TOKEN": "your_gitlab_token", "GITLAB_API_URL": "https://gitlab.com" } } } }

Requirements: Node.js >= 24

GitLab Duo sessions

GitLab Duo sessions are also supported: discover agents and flows, inspect progress and outputs, and explicitly start or answer asynchronous CI sessions. Commands can consume credits and change GitLab. See the Duo session guide.

Supported clients

The Codex plugin can be installed before configuring a target. Its connection panel supports a GitLab instance with a locally started core server, or an existing HTTP MCP server. The local plugin requires Node.js 24+; credentials are entered in its private panel. See the installation guide for marketplace setup and authentication.

The shared sw.foundation marketplace lists verified releases. Add it once with codex plugin marketplace add structured-world/repo --sparse .agents/plugins, then install GitLab MCP from that catalog after its first configurable plugin release.

Download the ready-made Codex marketplace ZIP and its SHA-256 checksum from GitHub Releases. It includes the local runtime and dependencies, separately from the Claude Desktop MCPB bundles. Add the extracted marketplace once, then install through Codex. An install link requires an already configured marketplace; downloading the ZIP does not install it automatically. Older releases may not contain these assets.

With the Codex CLI installed and GITLAB_API_URL and GITLAB_TOKEN set in your environment, run npx @structured-world/gitlab-mcp install --codex to register a local server. For Antigravity, add the server to .agents/mcp_config.json in your workspace. Follow the linked guides for authentication, remote-server setup and client-specific configuration.

Codex and Claude Code can be configured side by side. Antigravity CLI 1.4.10 is qualified against the installed core package on macOS and Linux, including empty and single-MR lists. See the client overview for all setup guides.

Highlights

  • 66 tools across 27 registry groups: projects, merge requests, pipelines, work items, wiki, and more
  • CQRS architecture — browse_* for queries, manage_* for commands
  • Connection resilience — Bounded startup, auto-reconnect with exponential backoff, disconnected mode when GitLab is unreachable
  • Multi-instance support — Connect to GitLab.com, self-managed, and self-hosted instances with per-instance OAuth and rate limiting; one connection can link several accounts, such as a company GitLab and a personal GitLab.com account, and each chat switches between them
  • Multiple transports — stdio, SSE, StreamableHTTP
  • OAuth 2.1 — Per-user authentication via Claude Custom Connector
  • Read-only mode — Safe operation for production environments
  • Auto-discovery — Detects GitLab config from git remotes
  • Fine-grained control — Enable/disable tool groups, filter actions, customize descriptions
  • Docker support — ghcr.io/structured-world/gitlab-mcp:latest

Tool model

GitLab exposes hundreds of API operations. Giving each its own MCP tool floods an agent's context; a thin API wrapper pushes that complexity back onto the agent. This server takes a third path: 60 CQRS tools expose 241 typed actions, with 6 additional helpers for account, connection and settings work. The complete catalog contains 66 tools across 27 registry groups. This total includes core and account/context tools. Settings expose a different set of configurable tool groups: core and context tools are always available, and CI job tokens and deploy keys share one switch.

  • browse_* tools are read-only queries; manage_* tools are writes.
  • Sub-resources fold into actions rather than new tools — browse_pipelines covers pipelines, jobs, and logs in a single tool.
  • The tool list, actions, and parameters are resolved at schema-generation time against GitLab version, tier, token scopes, admin-mode, feature flags, and profiles.

Examples:

  • browse_pipelines — list, get, jobs, job, logs, triggers
  • manage_pipeline — create, retry, cancel
  • browse_environments — list, get, list_deployments
  • manage_environment — create, update, stop, delete, update_deployment_status
  • browse_deploy_keys / manage_deploy_key — list, get / add, enable, update, delete

Documentation

Full documentation is available at [gitlab-mcp.sw.foundation](https://gitlab-mcp.sw.foundation)

SectionDescription
Installationnpm, Docker, VS Code, Codex
ConfigurationEnvironment variables, feature flags
Multi-InstanceConnect to multiple GitLab instances
Tool ReferenceAll 66 tools with parameters
OAuth SetupTeam authentication with Claude
TLS/HTTPSProduction deployment with SSL
CustomizationTool descriptions, action filtering
CLI ToolsBrowse and export tool documentation
Auto-generated Tool Reference

For the complete tool reference with parameters:

# View locally

yarn list-tools --detail

Generate documentation

yarn list-tools --export --toc > docs/tools/api-reference.md

See the Full API Reference for the auto-generated tool documentation.

Docker

# HTTP mode

docker run -e PORT=3002 -e GITLAB_TOKEN=your_token -p 3333:3002 \ ghcr.io/structured-world/gitlab-mcp:latest

stdio mode

docker run -i --rm -e GITLAB_TOKEN=your_token \ ghcr.io/structured-world/gitlab-mcp:latest

Connection Resilience

The server handles GitLab connectivity issues gracefully:

  • Bounded startup — Server starts within GITLAB_INIT_TIMEOUT_MS (default 5s) regardless of GitLab availability
  • Disconnected mode — When GitLab is unreachable (disconnected/failed state), only the manage_context tool is exposed, with local actions such as whoami, switch_preset, and set_scope for diagnostics. During active reconnect (connecting state), the full tool list remains available so MCP clients don't lose their tool catalog during brief outages. MCP clients are notified of tool availability changes via tools/list_changed
  • Auto-reconnect — Exponential backoff reconnection (5s → 60s) with ±10% jitter
  • Error classification — Transient errors (network, 5xx, timeouts) trigger auto-reconnect. Auth/config errors at startup transition to failed state (no auto-reconnect). Mid-session token revocation is detected via an authenticated HEAD /api/v4/user check that runs alongside each periodic health check (static token mode only; skipped in OAuth mode). A 401 or 403 on this check transitions the instance to failed state immediately.
  • Instance health monitor — Each monitored instance URL has its own XState state machine. Untracked OAuth URLs currently pass through as reachable.
VariableDefaultDescription
GITLAB_INIT_TIMEOUT_MS5000Max time to wait for GitLab during startup
GITLAB_RECONNECT_BASE_DELAY_MS5000Initial reconnect delay (doubles each attempt)
GITLAB_RECONNECT_MAX_DELAY_MS60000Maximum reconnect delay
GITLAB_HEALTH_CHECK_INTERVAL_MS60000Health check interval when connected

| GITLAB_FAILURE_THRESHOLD | 3 | Consecutive transient failures before di

Only the beginning is shown; read the rest in the repo

Ask PopNx