← Index

GitLab MCP Server

io.github.jmrplens/gitlab-mcp-serverv2.5.3Git & Code Hosting

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

In-path gate · all MCP tools

Using GitLab MCP Server in Claude, Cursor, Gemini CLI, Cline, or Zed?

MCP tool contracts can change remotely with no version bump. The mcpindex gate pins each contract and HOLDs the call when it drifts-before your agent acts. Zero credentials. This is not the package install for this server itself (use Install this server for that).

Install the mcpindex gate (one command)

Rewrites your MCP host config so each server launches behind the gate. Inspect first: curl -fsSL https://mcpindex.ai/install.sh | less

uv tool install mcpindex-gate && mcpindex-config-wire
Trust verdict · v1 advisory · method
REVIEWstatus: PARTIALfresh until 2026-08-28 23:03 UTC
screened 2026-07-29tier: scannedgranularity: description-levelsource: registry

Semantic screen found no manipulation pattern in the description. Conformance probe not yet run.

mcpindex.integrity.descriptionpassINFO

evidenceNo hidden actionsvia static_description

Limits of this verdict
  • - Semantic screen only - the deterministic conformance probe has not run on this server
  • - Confidence is reported but not yet calibrated (v1)
  • - Screen reads the tool description, not the live behavior
  • - advisory
  • - registry description only no input schema

Semantic screen: an LLM judge reads the tool description for hidden instructions (status PARTIAL). A pass means the description is not lying, not that the tool is safe: a high-capability tool with an honest description still warrants caution. The deterministic conformance probe has not been run on this server yet, so the screen here is semantic-only. Posture: advisory. Confidences are reported but not yet calibrated (calibrated=false at v1). Full verdict history is not shown on this page.

Own this server? Screen its description →

That verdict was true at screening time (snapshot 2026-07-31).

Contracts can change after screening, with no version bump. The gate pins GitLab MCP Server’s tool contracts on first sight and holds any silent change before your agent acts - the check that keeps being true on Tuesday.

See your first HOLD in 2 minutes →

Related: how to trust an MCP server · screen before install · silent contract drift

Embed this badge

A live verdict badge for your README or listing. It reflects the current screen, links back here, and updates when the verdict does.

Markdown
[![mcpindex](https://mcpindex.ai/api/v1/badge/io-github-jmrplens-gitlab-mcp-server)](https://mcpindex.ai/server/io-github-jmrplens-gitlab-mcp-server)
HTML
<a href="https://mcpindex.ai/server/io-github-jmrplens-gitlab-mcp-server"><img src="https://mcpindex.ai/api/v1/badge/io-github-jmrplens-gitlab-mcp-server" alt="mcpindex verdict" height="20" /></a>
Environment variables
GITLAB_URL

GitLab instance URL (default: https://gitlab.com; set for self-managed instances)

GITLAB_TOKEN
requiredsecret

GitLab Personal Access Token (glpat-...)

GITLAB_SKIP_TLS_VERIFY

Skip TLS certificate verification for self-signed certs (default: false)

TOOL_SURFACE

Tool catalog selector: dynamic, meta, or individual (default: dynamic)

CAPABILITY_SURFACE

Resource and prompt catalog selector: full or minimal (default: full)

META_PARAM_SCHEMA

Meta-tool input schema detail: opaque, compact, or full (default: opaque)

GITLAB_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_READ_ONLY

Read-only mode: disables all mutating tools (default: false)

GITLAB_SAFE_MODE

Safe mode: intercepts mutating tools and returns a JSON preview instead of executing (default: false)

EMBEDDED_RESOURCES

Append EmbeddedResource content blocks (clickable links to MCP resources) to get_* tool results (default: true)

EXCLUDE_TOOLS

Comma-separated tool names to exclude from registration (e.g. gitlab_admin,gitlab_runner)

GITLAB_IGNORE_SCOPES

Skip Personal Access Token scope detection and register all tools regardless of token permissions (default: false)

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

RATE_LIMIT_RPS

Per-server tools/call rate limit in requests per second; 0 disables it (default: 0)

RATE_LIMIT_BURST

Token-bucket burst size when RATE_LIMIT_RPS is greater than 0 (default: 40)

LOG_LEVEL

Logging verbosity (default: info)

AUTO_UPDATE

Auto-update mode: true (auto-apply), check (log-only), false (disabled). Default: true

AUTO_UPDATE_REPO

GitHub repository slug for release assets (default: jmrplens/gitlab-mcp-server)

AUTO_UPDATE_INTERVAL

Periodic update check interval in HTTP mode (default: 1h)

AUTO_UPDATE_TIMEOUT

Startup/background update timeout, range 5s-10m (default: 60s)

GITLAB_URL

GitLab instance URL (default: https://gitlab.com; set for self-managed instances)

GITLAB_TOKEN
requiredsecret

GitLab Personal Access Token (glpat-...)

GITLAB_SKIP_TLS_VERIFY

Skip TLS certificate verification for self-signed certs (default: false)

TOOL_SURFACE

Tool catalog selector: dynamic, meta, or individual (default: dynamic)

CAPABILITY_SURFACE

Resource and prompt catalog selector: full or minimal (default: full)

META_PARAM_SCHEMA

Meta-tool input schema detail: opaque, compact, or full (default: opaque)

GITLAB_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_READ_ONLY

Read-only mode: disables all mutating tools (default: false)

GITLAB_SAFE_MODE

Safe mode: intercepts mutating tools and returns a JSON preview instead of executing (default: false)

EMBEDDED_RESOURCES

Append EmbeddedResource content blocks (clickable links to MCP resources) to get_* tool results (default: true)

EXCLUDE_TOOLS

Comma-separated tool names to exclude from registration (e.g. gitlab_admin,gitlab_runner)

GITLAB_IGNORE_SCOPES

Skip Personal Access Token scope detection and register all tools regardless of token permissions (default: false)

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

RATE_LIMIT_RPS

Per-server tools/call rate limit in requests per second; 0 disables it (default: 0)

RATE_LIMIT_BURST

Token-bucket burst size when RATE_LIMIT_RPS is greater than 0 (default: 40)

LOG_LEVEL

Logging verbosity (default: info)

AUTO_UPDATE

Auto-update mode: true (auto-apply), check (log-only), false (disabled). Default: true

AUTO_UPDATE_REPO

GitHub repository slug for release assets (default: jmrplens/gitlab-mcp-server)

AUTO_UPDATE_INTERVAL

Periodic update check interval in HTTP mode (default: 1h)

AUTO_UPDATE_TIMEOUT

Startup/background update timeout, range 5s-10m (default: 60s)

GITLAB_URL

GitLab instance URL (default: https://gitlab.com; set for self-managed instances)

GITLAB_TOKEN
requiredsecret

GitLab Personal Access Token (glpat-...)

GITLAB_SKIP_TLS_VERIFY

Skip TLS certificate verification for self-signed certs (default: false)

TOOL_SURFACE

Tool catalog selector: dynamic, meta, or individual (default: dynamic)

CAPABILITY_SURFACE

Resource and prompt catalog selector: full or minimal (default: full)

META_PARAM_SCHEMA

Meta-tool input schema detail: opaque, compact, or full (default: opaque)

GITLAB_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_READ_ONLY

Read-only mode: disables all mutating tools (default: false)

GITLAB_SAFE_MODE

Safe mode: intercepts mutating tools and returns a JSON preview instead of executing (default: false)

EMBEDDED_RESOURCES

Append EmbeddedResource content blocks (clickable links to MCP resources) to get_* tool results (default: true)

EXCLUDE_TOOLS

Comma-separated tool names to exclude from registration (e.g. gitlab_admin,gitlab_runner)

GITLAB_IGNORE_SCOPES

Skip Personal Access Token scope detection and register all tools regardless of token permissions (default: false)

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

RATE_LIMIT_RPS

Per-server tools/call rate limit in requests per second; 0 disables it (default: 0)

RATE_LIMIT_BURST

Token-bucket burst size when RATE_LIMIT_RPS is greater than 0 (default: 40)

LOG_LEVEL

Logging verbosity (default: info)

AUTO_UPDATE

Auto-update mode: true (auto-apply), check (log-only), false (disabled). Default: true

AUTO_UPDATE_REPO

GitHub repository slug for release assets (default: jmrplens/gitlab-mcp-server)

AUTO_UPDATE_INTERVAL

Periodic update check interval in HTTP mode (default: 1h)

AUTO_UPDATE_TIMEOUT

Startup/background update timeout, range 5s-10m (default: 60s)

GITLAB_URL

GitLab instance URL (default: https://gitlab.com; set for self-managed instances)

GITLAB_TOKEN
requiredsecret

GitLab Personal Access Token (glpat-...)

GITLAB_SKIP_TLS_VERIFY

Skip TLS certificate verification for self-signed certs (default: false)

TOOL_SURFACE

Tool catalog selector: dynamic, meta, or individual (default: dynamic)

CAPABILITY_SURFACE

Resource and prompt catalog selector: full or minimal (default: full)

META_PARAM_SCHEMA

Meta-tool input schema detail: opaque, compact, or full (default: opaque)

GITLAB_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_READ_ONLY

Read-only mode: disables all mutating tools (default: false)

GITLAB_SAFE_MODE

Safe mode: intercepts mutating tools and returns a JSON preview instead of executing (default: false)

EMBEDDED_RESOURCES

Append EmbeddedResource content blocks (clickable links to MCP resources) to get_* tool results (default: true)

EXCLUDE_TOOLS

Comma-separated tool names to exclude from registration (e.g. gitlab_admin,gitlab_runner)

GITLAB_IGNORE_SCOPES

Skip Personal Access Token scope detection and register all tools regardless of token permissions (default: false)

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

RATE_LIMIT_RPS

Per-server tools/call rate limit in requests per second; 0 disables it (default: 0)

RATE_LIMIT_BURST

Token-bucket burst size when RATE_LIMIT_RPS is greater than 0 (default: 40)

LOG_LEVEL

Logging verbosity (default: info)

AUTO_UPDATE

Auto-update mode: true (auto-apply), check (log-only), false (disabled). Default: true

AUTO_UPDATE_REPO

GitHub repository slug for release assets (default: jmrplens/gitlab-mcp-server)

AUTO_UPDATE_INTERVAL

Periodic update check interval in HTTP mode (default: 1h)

AUTO_UPDATE_TIMEOUT

Startup/background update timeout, range 5s-10m (default: 60s)

GITLAB_URL

GitLab instance URL (default: https://gitlab.com; set for self-managed instances)

GITLAB_TOKEN
requiredsecret

GitLab Personal Access Token (glpat-...)

GITLAB_SKIP_TLS_VERIFY

Skip TLS certificate verification for self-signed certs (default: false)

TOOL_SURFACE

Tool catalog selector: dynamic, meta, or individual (default: dynamic)

CAPABILITY_SURFACE

Resource and prompt catalog selector: full or minimal (default: full)

META_PARAM_SCHEMA

Meta-tool input schema detail: opaque, compact, or full (default: opaque)

GITLAB_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_READ_ONLY

Read-only mode: disables all mutating tools (default: false)

GITLAB_SAFE_MODE

Safe mode: intercepts mutating tools and returns a JSON preview instead of executing (default: false)

EMBEDDED_RESOURCES

Append EmbeddedResource content blocks (clickable links to MCP resources) to get_* tool results (default: true)

EXCLUDE_TOOLS

Comma-separated tool names to exclude from registration (e.g. gitlab_admin,gitlab_runner)

GITLAB_IGNORE_SCOPES

Skip Personal Access Token scope detection and register all tools regardless of token permissions (default: false)

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

RATE_LIMIT_RPS

Per-server tools/call rate limit in requests per second; 0 disables it (default: 0)

RATE_LIMIT_BURST

Token-bucket burst size when RATE_LIMIT_RPS is greater than 0 (default: 40)

LOG_LEVEL

Logging verbosity (default: info)

AUTO_UPDATE

Auto-update mode: true (auto-apply), check (log-only), false (disabled). Default: true

AUTO_UPDATE_REPO

GitHub repository slug for release assets (default: jmrplens/gitlab-mcp-server)

AUTO_UPDATE_INTERVAL

Periodic update check interval in HTTP mode (default: 1h)

AUTO_UPDATE_TIMEOUT

Startup/background update timeout, range 5s-10m (default: 60s)

GITLAB_URL

GitLab instance URL (default: https://gitlab.com; set for self-managed instances)

GITLAB_TOKEN
requiredsecret

GitLab Personal Access Token (glpat-...)

GITLAB_SKIP_TLS_VERIFY

Skip TLS certificate verification for self-signed certs (default: false)

TOOL_SURFACE

Tool catalog selector: dynamic, meta, or individual (default: dynamic)

CAPABILITY_SURFACE

Resource and prompt catalog selector: full or minimal (default: full)

META_PARAM_SCHEMA

Meta-tool input schema detail: opaque, compact, or full (default: opaque)

GITLAB_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_READ_ONLY

Read-only mode: disables all mutating tools (default: false)

GITLAB_SAFE_MODE

Safe mode: intercepts mutating tools and returns a JSON preview instead of executing (default: false)

EMBEDDED_RESOURCES

Append EmbeddedResource content blocks (clickable links to MCP resources) to get_* tool results (default: true)

EXCLUDE_TOOLS

Comma-separated tool names to exclude from registration (e.g. gitlab_admin,gitlab_runner)

GITLAB_IGNORE_SCOPES

Skip Personal Access Token scope detection and register all tools regardless of token permissions (default: false)

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

RATE_LIMIT_RPS

Per-server tools/call rate limit in requests per second; 0 disables it (default: 0)

RATE_LIMIT_BURST

Token-bucket burst size when RATE_LIMIT_RPS is greater than 0 (default: 40)

LOG_LEVEL

Logging verbosity (default: info)

AUTO_UPDATE

Auto-update mode: true (auto-apply), check (log-only), false (disabled). Default: true

AUTO_UPDATE_REPO

GitHub repository slug for release assets (default: jmrplens/gitlab-mcp-server)

AUTO_UPDATE_INTERVAL

Periodic update check interval in HTTP mode (default: 1h)

AUTO_UPDATE_TIMEOUT

Startup/background update timeout, range 5s-10m (default: 60s)

MCP quality score · maturity, not trust · methodology
freshness
25
completeness
25
installability
25
documentation
15
stability
10
Alternatives in Git & Code Hosting