Skip to content
mcp/skillhub

GitLab MCP Server

by jmrplensio.github.jmrplens/gitlab-mcp-serverv3.1.0

Go MCP server for GitLab: 2 dynamic tools reach 1000+ REST/GraphQL actions. Free/CE, no paid tier.

43Node.jsstdioremoteofficial registry

context tax

queued

security

queued

cold start

queued

freshness

Active1d ago

Install GitLab MCP server

Install in Claude Code

claude mcp add gitlab -e GITLAB_TOKEN='<gitlab-token>' -- npx -y @jmrp.io/gitlab-mcp-server

Configuration

VariableRequiredSecretDescription
GITLAB_URL——GitLab instance URL (default: https://gitlab.com; set for self-managed instances)
GITLAB_TOKENyesyesGitLab Personal Access Token (glpat-...)
GITLAB_MCP_SKIP_TLS_VERIFY——Skip TLS certificate verification for self-signed certs (default: false)
GITLAB_MCP_TOOL_SURFACE——Tool catalog selector: dynamic, meta, or individual (default: dynamic)
GITLAB_MCP_CAPABILITY_SURFACE——Resource and prompt catalog selector: full or minimal (default: full); resource subscriptions require full
GITLAB_MCP_META_PARAM_SCHEMA——Meta-tool input schema detail: opaque, compact, or full (default: opaque)
GITLAB_MCP_TIER——GitLab edition tier: free/ce, premium, or ultimate. When unset, detected from GET /license (fallback free). Gates Premium/Ultimate tools; GitLab.com Ultimate also exposes Orbit Knowledge Graph tools. Replaces the deprecated GITLAB_ENTERPRISE boolean
GITLAB_MCP_READ_ONLY——Read-only mode: disables all mutating tools (default: false)
GITLAB_MCP_SAFE_MODE——Safe mode: intercepts mutating tools and returns a JSON preview instead of executing (default: false)
GITLAB_MCP_EMBEDDED_RESOURCES——Append EmbeddedResource content blocks (clickable links to MCP resources) to get_* tool results (default: true)
GITLAB_MCP_EXCLUDE_TOOLS——Comma-separated tool names, group names or canonical action IDs to exclude, on every surface (e.g. gitlab_admin,gitlab_runner)
GITLAB_MCP_IGNORE_SCOPES——Skip Personal Access Token scope detection and register all tools regardless of token permissions (default: false)
GITLAB_MCP_UPLOAD_MAX_FILE_SIZE——Maximum attachment upload size in bytes or human-readable (e.g. 2GB). Default: 2147483648 (2 GB)
GITLAB_MCP_ALLOWED_IMPORT_DIRS——Extra OS path-list-separated directories allowed for local GitLab import archives
GITLAB_MCP_RATE_LIMIT_RPS——Per-server tools/call rate limit in requests per second; 0 disables it (default: 0)
GITLAB_MCP_RATE_LIMIT_BURST——Token-bucket burst size when GITLAB_MCP_RATE_LIMIT_RPS is greater than 0 (default: 40)
GITLAB_MCP_LOG_LEVEL——Logging verbosity (default: info)

Remote endpoints

  • streamable-httphttps://mcp.jmrp.io/gitlab

Freshness

Active — last maintenance signal 1d ago. The newest of the signals below sets the band.

  1. Last commit (default branch)

    2026-10-08 · 1d ago · GitHub

  2. Latest release

    2026-09-30 · 9d ago · GitHub · v3.1.0

  3. Package published

    no data · npm/PyPI

  4. Registry entry updated

    2026-09-30 · 9d ago · official registry · v3.1.0

FAQ

›How do I install the GitLab MCP server in Claude Code?

Run: claude mcp add gitlab -e GITLAB_TOKEN='<gitlab-token>' -- npx -y @jmrp.io/gitlab-mcp-server. For Cursor, VS Code, Claude Desktop and Windsurf, use the install tabs above.

›Does GitLab require an API key?

Yes. It expects GITLAB_TOKEN, of which 1 is a secret.

›Can I use GitLab as a remote (hosted) MCP server?

Yes — it offers both a hosted endpoint and a local stdio package.

›Is GitLab in the official MCP registry?

Yes, as io.github.jmrplens/gitlab-mcp-server.

Alternatives to GitLab

Other version control MCP servers.

View all