Help us shape the future of Go! Take the 2026 Go Developer Survey

gitlab-mcp-server

module
v3.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 30, 2026 License: MIT

README

GitLab MCP Server

GitHub Release npm PyPI NuGet Platform

CI Quality Gate Coverage Go Reference

Glama MCP Score

MCP Badge MCP Toplist Cursor Directory Hosted endpoint

Connect your AI assistant to GitLab so it can review merge requests, triage pipelines, manage issues, and draft releases — in plain language. One static binary (or a container), 1000+ GitLab tools over the full REST + GraphQL API, working with Claude, Cursor, VS Code, and any MCP client.

You talk to your AI assistant; it does the GitLab work. No project IDs, API endpoints, or JSON to remember.

10,359 tokens of startup context by default, the same on every GitLab tier (1,694 with GITLAB_MCP_CAPABILITY_SURFACE=minimal). Two tools reach the whole catalog; measured with the cl100k_base tokenizer and verified in CI on every commit. How it is measured

"Review merge request !15 — is it safe to merge?" · "Why did the last pipeline fail?" · "List open issues assigned to me" · "Generate release notes from v1.0 to v2.0"


🤖 Using an AI assistant? Give it this repository URL and ask it to install the server for your client. Everything a model needs to do it headlessly — the declarative per-client config, claude mcp add one-liners, and defaults — is in llms.txt (no interactive wizard required).

Install in 60 seconds

Pick one. Each path ends with you typing a prompt to your assistant. Every channel has a full guide: Installation.

Want to look before installing? The browser inspector signs in with OAuth and calls the hosted endpoint read-only from a browser tab — nothing downloaded. Running it yourself is still the way to keep using it.

One-click install
Client One-click button Token step
VS Code Install in VS Code prompts you (masked)
VS Code Insiders Install in VS Code Insiders prompts you (masked)
Cursor Install in Cursor edit YOUR_GITLAB_TOKEN
LM Studio Add to LM Studio edit YOUR_GITLAB_TOKEN
Kiro Add to Kiro edit YOUR_GITLAB_TOKEN
Claude Desktop Download .mcpb extension settings UI

Each button registers the Docker-based server (auto-pulls the image on first run; you need Docker installed). The Claude Desktop row instead downloads a native .mcpb desktop extension (macOS universal, Windows, and Linux amd64 and arm64; no Docker). Open it with Claude Desktop, or on Linux use Extensions > Install Extension..., and fill in the settings. Need a token? Create a Personal Access Token with the api scope. Self-managed GitLab? Add a GITLAB_URL env var in your client's MCP config after install.

Claude Code (claude mcp add)

Docker (no install — pulls the image on first run):

claude mcp add gitlab --env GITLAB_TOKEN=glpat-xxxx --transport stdio \
  -- docker run -i --rm -e GITLAB_TOKEN ghcr.io/jmrplens/gitlab-mcp-server:latest

Or install the native binary first, then register it:

# Any platform (npm/pnpm) — downloads only your platform's prebuilt binary
npx -y @jmrp.io/gitlab-mcp-server          # zero install; clients launch it directly
npm install -g @jmrp.io/gitlab-mcp-server  # or install globally (npm)
pnpm add -g @jmrp.io/gitlab-mcp-server     # or globally (pnpm)
# Any platform (Python: uv/pipx/pip) — platform wheel carrying the same native binary
uvx jmrplens-gitlab-mcp-server             # zero install; clients launch it directly
pipx install jmrplens-gitlab-mcp-server    # or install globally (pipx)
pip install jmrplens-gitlab-mcp-server     # or into the active environment (pip)
# Linux wheels need glibc; on musl systems such as Alpine use the Docker image instead
# Any platform (.NET 10 SDK) — a .NET tool whose entry point is the same native binary
dnx gitlab-mcp-server                      # zero install; clients launch it directly
dotnet tool install -g gitlab-mcp-server   # or install globally (dotnet tool)
# macOS/Linux (Homebrew)
brew install jmrplens/tap/gitlab-mcp-server
# Linux/macOS (script)
curl -fsSL https://raw.githubusercontent.com/jmrplens/gitlab-mcp-server/main/scripts/install.sh | sh
# Windows (winget)
winget install --id jmrplens.gitlab-mcp-server -e
# Windows (PowerShell)
irm https://raw.githubusercontent.com/jmrplens/gitlab-mcp-server/main/scripts/install.ps1 | iex

claude mcp add gitlab --env GITLAB_TOKEN=glpat-xxxx -- gitlab-mcp-server

Clients that launch servers with npx, uvx or dnx need no install at all — point them at npx -y @jmrp.io/gitlab-mcp-server, uvx jmrplens-gitlab-mcp-server or dnx gitlab-mcp-server.

Self-managed GitLab? Add --env GITLAB_URL=https://gitlab.example.com (and, for a self-signed certificate, mount the CA and set --env SSL_CERT_FILE=/path/to/ca-bundle.crt; GITLAB_MCP_SKIP_TLS_VERIFY=true is the blunt alternative, and OAuth mode refuses it for a non-loopback instance).

Run it once to check the install

Started in a terminal, or double-clicked on Windows, with no GITLAB_TOKEN set, the binary prints what it is and what it needs and waits for Enter, so you can confirm the install before configuring anything. Configuration itself lives in your MCP client's JSON, below.

Manual JSON (Claude Desktop, Cursor, VS Code, …)
Show JSON config for native binary and Docker

Native binary (Claude Desktop mcpServers, Cursor, etc.):

{
  "mcpServers": {
    "gitlab": {
      "command": "/path/to/gitlab-mcp-server",
      "env": { "GITLAB_TOKEN": "glpat-xxxxxxxxxxxxxxxxxxxx" }
    }
  }
}

VS Code (.vscode/mcp.json, note servers + type):

{
  "servers": {
    "gitlab": {
      "type": "stdio",
      "command": "/path/to/gitlab-mcp-server",
      "env": { "GITLAB_TOKEN": "glpat-xxxxxxxxxxxxxxxxxxxx" }
    }
  }
}

Docker variant — replace "command"/"args" with:

"command": "docker",
"args": ["run", "-i", "--rm", "-e", "GITLAB_TOKEN", "ghcr.io/jmrplens/gitlab-mcp-server:latest"]

Cline (VS Code) — open the Cline sidebar → MCP servers icon → Edit Global MCP, or edit the settings file directly:

  • macOS: ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
  • Linux: ~/.config/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
  • Windows: %APPDATA%\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json

Cline uses the mcpServers shape shown above for the native binary.

For a shared, long-running HTTP deployment instead of per-user stdio, see HTTP Server Mode.

Try it without installing anything (hosted endpoint)

A public instance runs at https://mcp.jmrp.io/gitlab — nothing to install, no account beyond your own GitLab token. Point any HTTP-capable MCP client at it:

{
  "mcpServers": {
    "gitlab": {
      "type": "http",
      "url": "https://mcp.jmrp.io/gitlab",
      "headers": { "Authorization": "Bearer glpat-xxxxxxxxxxxx" }
    }
  }
}

The endpoint runs in OAuth mode, so the credential travels as Authorization: Bearer — a GitLab personal access token works there, verified exactly like an OAuth one, which is what keeps clients with no OAuth flow (and headless use) working. It travels per request and is never stored on the server. A client that speaks the OAuth flow needs no header at all: the 401 carries an RFC 9728 challenge it follows to authorize in the browser. PRIVATE-TOKEN is the legacy-mode header and is not accepted here; the instance is fixed to https://gitlab.com, so GITLAB-URL is ignored.

A read_api token is accepted and served a read-only tool surface — the write check is per action, so a credential that cannot break anything is a supported way to use the endpoint rather than a rejected one.

Two pages make it easier still. The server card lists the whole catalog with no credential at all and carries copy-paste config for Claude Code, Cursor and VS Code — including the OAuth client ID those clients need. The browser inspector calls the same endpoint read-only from a browser tab: sign in with OAuth, pick a tool, read the raw JSON-RPC it returns — nothing installed.

It is the fastest way to try the server, and the right way to keep using it is still locally (any option above) — for one concrete reason, not as a disclaimer: your token and every request pass through someone else's machine. Running it locally means your credentials and your GitLab traffic never leave your computer, which also makes it the only sensible option for a private self-managed instance.

The endpoint is stateless streamable HTTP on the default dynamic surface: POST is the transport and an authenticated GET answers 405 by design; with no credential, any method answers 401 carrying the RFC 6750 challenge an OAuth client follows — a bare curl that gets 401 is the endpoint working, not failing. https://mcp.jmrp.io/gitlab/health needs no credential and answers 200 with {"status":"ok",…}. A self-hosted HTTP deployment can also run --auth-mode=oauth --gitlab-url=https://gitlab.com --public-url=https://mcp.example.com/mcp (both are required: OAuth needs a fixed instance, and --public-url is the RFC 9728 resource identifier — pass exactly the URL your clients are configured with, since a client discards metadata naming a different one), where clients discover GitLab as the authorization server through that metadata and authorize in the browser instead of copying tokens — see OAuth App Setup. It is one of the servers listed at mcp.jmrp.io, a directory of the MCP servers I maintain, each reachable at its own endpoint; https://mcp.jmrp.io/servers.json is the same list for automated clients.

It is a personal service, run by one person and offered as-is: no SLA, no support channel, and no promise it is unchanged next week. It adds no quota of its own — every call spends GitLab.com's own limits, under your own token. And it moves on its own, normally to the newest release, so what it serves is never a pinned version.

Then just ask: open your AI client and try "List my GitLab projects." See the Getting Started guide for per-client details and more example prompts.


Why this server

  • Plain-language GitLab. The AI translates "is MR !15 safe to merge?" into the right API calls. You don't touch endpoints, IDs, or JSON.
  • The whole platform — 1000+ tools. Broad GitLab REST v4 + GraphQL coverage: projects, branches, tags, releases, merge requests, issues, pipelines, jobs, groups, users, wikis, environments, deployments, packages, container registry, runners, feature flags, CI/CD variables, security, admin, tokens, and more.
  • Low-token by default. The default dynamic surface exposes just 2 tools (find + execute) while reaching the full catalog — so it fits any client's context window. (Token footprint →)
  • Safe by design. Read-only mode, safe mode (dry-run preview of every mutation), TLS options for self-hosted GitLab, and continuous SonarCloud quality/security gates.
  • Runs anywhere. One static binary or container; Windows, Linux & macOS; amd64 & arm64; stdio (desktop) and HTTP (remote).
More: resources, prompts, and capabilities
  • 45 MCP resources (read-only data: projects, issues, pipelines, MRs, branches, members, the surface-aware gitlab://tools manifest, and workflow best-practice guides). 26 resource kinds, single objects plus three single-parent lists, are also subscribable.
  • 37 MCP prompts (code review, pipeline status, risk assessment, release notes, standup, analytics, audit, and more).
  • 4 elicitation wizards (interactive issue/MR/release/project creation).
  • 4 MCP capabilities (completions, progress, elicitation, and resource subscriptions — live resources/updated notifications, honored by polling) and 51 tool icons (50 domain icons plus the project mark) for visual identification in MCP clients.
  • Pagination on every list endpoint with full metadata.

Tool surfaces

The server can present GitLab in three shapes, controlled by GITLAB_MCP_TOOL_SURFACE. The default needs no configuration.

Surface Visible tools Best for
Dynamic (default) 2 (gitlab_find_action, gitlab_execute_action) Lowest token cost; reaches the full catalog via find/execute.
Meta-tools (meta) 34 base / 51 Ultimate / 52 GitLab.com Ultimate Domain-grouped dispatchers with an action parameter.
Individual (individual) ~868 Free/CE · ~1022 Premium · 1088–1094 Ultimate One MCP tool per GitLab operation; needs a large context window.

Tool counts scale with your GitLab edition (GITLAB_MCP_TIER); higher tiers expose more actions. See Dynamic Toolset and Meta-Tools Reference for the ranking model, safety guards, and full catalogs. For dynamic runs where resources dominate context, set GITLAB_MCP_CAPABILITY_SURFACE=minimal.

Token Footprint

Measured with go run ./cmd/audit_tokens/ -footprint against the current catalog. Totals estimate startup context visible to an MCP client: visible tool schemas plus shared resources and prompts, using the cl100k_base tokenizer (GPT-4/GPT-3.5 encoding). For the full matrix (meta and individual surfaces, all GITLAB_MCP_META_PARAM_SCHEMA modes), see Token Footprint Reference.

Default configuration: with GITLAB_MCP_TOOL_SURFACE unset or GITLAB_MCP_TOOL_SURFACE=dynamic, GITLAB_MCP_CAPABILITY_SURFACE=full, GITLAB_MCP_META_PARAM_SCHEMA=opaque, and GITLAB_MCP_TIER unset (detected, fallback free), the server uses the dynamic find/execute surface. Use GITLAB_MCP_TOOL_SURFACE=meta only when you explicitly want domain meta-tools; use GITLAB_MCP_TOOL_SURFACE=individual only when your client can handle the full tool catalog.

Configuration (GITLAB_MCP_TOOL_SURFACE / GITLAB_MCP_CAPABILITY_SURFACE) Tier Visible tools Reachable actions GITLAB_MCP_META_PARAM_SCHEMA Tool schema tokens Shared tokens Total tokens
dynamic / full (default) Free/CE 2 872 n/a 1,524 8,835 10,359
dynamic / minimal Free/CE 2 872 n/a 1,524 170 1,694
dynamic / full (default) Premium 2 1,026 n/a 1,524 8,835 10,359
dynamic / minimal Premium 2 1,026 n/a 1,524 170 1,694
dynamic / full (default) Ultimate 2 1,092 n/a 1,524 8,835 10,359
dynamic / minimal Ultimate 2 1,092 n/a 1,524 170 1,694

Rows use the base Community Edition catalog unless the Tier column says otherwise. GITLAB_MCP_TIER controls which actions are available; higher tiers expose more tools and thus more reachable actions.

Compatibility

MCP Capability Support
Tools Up to 1094 individual / 34–52 meta
Resources 45 (static + templates)
Prompts 37 templates
Completions 18 argument names, among them projects, groups, users, branches, tags, MRs, issues, pipelines, jobs, labels, milestones and SHAs
Server logs Structured (text/JSON) to stderr — not the MCP logging capability, which is deprecated (SEP-2577) and deliberately not advertised
Progress Tool execution progress reporting
Elicitation 4 interactive creation wizards
Subscriptions resources/updated by polling, 26 resource kinds

Tested with: VS Code + GitHub Copilot, Claude Desktop, Claude Code, Cursor, Windsurf, JetBrains IDEs, Zed, Kiro, Cline. See the full Compatibility Matrix.

AI Model Tool-Use Evaluation

The project includes an automated evaluator for model-facing MCP quality, and it currently publishes no result. Every figure this section used to carry has been withdrawn, including the 99.5% aggregate success this README led with.

They were withdrawn because the measurement did not measure what it claimed. One struct fed the stimulus the model was given, the environment it acted in, the scorer that graded it and the report at the same time, so parts of the corpus put the expected call in the prompt the scorer then checked against, repairs were made from an answer key the harness supplied, and the scorer compared parameter names rather than their values. A run could not have failed for the reasons it was meant to catch. The tables as they last stood can be read at commit 4587cbfb3; the account of what was wrong with them is kept in AI Model Evaluation Results.

The replacement is being built as a tagged package under test/e2e/ on the end-to-end harness, which already keeps the stimulus, the environment and the record apart. Numbers return here when that harness produces them.

Withdrawn. The CE dynamic table published here, last refreshed from a Docker run dated 20260627-232303, is readable at commit 4587cbfb3 and is not reproduced because the measurement behind it was unsound.

Meta-tools and Enterprise evaluation results

Withdrawn. No CE meta-tools table was ever published here, and none will be until the rebuilt harness produces one.

Withdrawn. The Enterprise meta table published here, last refreshed from a Docker run dated 20260527, is readable at commit 4587cbfb3 and is not reproduced because the measurement behind it was unsound.

Withdrawn. The Enterprise dynamic table published here, last refreshed from a Docker run dated 20260628-015421, is readable at commit 4587cbfb3 and is not reproduced because the measurement behind it was unsound.

Documentation

Full documentation is at jmrp.io/docs/gitlab-mcp-server. Use this map for the source-of-truth reference on a specific area:

Document Description
Getting Started Install paths, first query, per-client configuration
Installation Every install channel (binary, Homebrew, winget, Docker, npm, PyPI, NuGet, .mcpb, Agent Plugins, hosted), verification, upgrade and uninstall
IDE Configuration Per-client stdio, HTTP legacy, and HTTP OAuth examples
Configuration Environment variables, transport modes, TLS
Environment Variables Exhaustive environment variable table with defaults and examples
CLI Reference All command-line flags, exit codes, and runtime examples
HTTP Server Mode Shared HTTP deployments, authentication, server pool isolation
OAuth App Setup GitLab OAuth application, scopes, redirect URIs, and which clients can complete a flow
CI/CD Running the server inside GitLab CI and GitHub Actions pipelines
Output Format The response contract every tool follows: content blocks, pagination, next steps
Error Handling Error classification, GitLab message extraction, and the hints tools return
Tools Reference All individual tools with input/output schemas, including GitLab.com-only Orbit
Meta-Tools 34/51/52 domain meta-tools with action dispatching
Dynamic Toolset 2-tool low-token mode with canonical action catalog, safety model, and examples
Resources All 45 resources with URI templates
Prompts All 37 prompts with arguments and output format
Testing Unit, E2E, schema model evaluation, Docker model evaluation, and curated model results
Security Security model, token scopes, input validation
Architecture System architecture, component design, data flow
Development Guide Building, testing, CI/CD, contributing
Troubleshooting Common startup, token, TLS, transport, and tool-discovery issues

FAQ

Does it work with self-hosted GitLab?

Yes. Set GITLAB_URL to your instance URL. When GITLAB_URL is omitted, stdio mode uses https://gitlab.com. Self-signed TLS certificates are supported by installing the CA in the system trust store or pointing SSL_CERT_FILE at a bundle; GITLAB_MCP_SKIP_TLS_VERIFY=true skips verification instead, and --auth-mode=oauth refuses it for a non-loopback instance.

Is my data safe?

When you run it yourself, locally over stdio or on your own infrastructure over HTTP, every request goes to your GitLab instance and nowhere else. There is no update check, no license check and no telemetry: your instance is the only host this server contacts.

The exception is the hosted endpoint: using https://mcp.jmrp.io/gitlab means your token and every request pass through that machine. Nothing is stored there, but it is someone else's server, which is why the hosted section says to keep using it locally.

See PRIVACY.md for the full data-flow statement, and SECURITY.md for the security model.

Can I use it in read-only mode?

Yes. Set GITLAB_MCP_READ_ONLY=true to disable all mutating tools (create, update, delete). Only read operations will be available.

Alternatively, set GITLAB_MCP_SAFE_MODE=true for a dry-run mode: mutating tools remain visible but return a structured JSON preview instead of executing. Useful for auditing, training, or reviewing what an AI assistant would do.

What GitLab editions are supported?

Both Community Edition (CE) and Enterprise Edition (EE). Set GITLAB_MCP_TIER=premium or GITLAB_MCP_TIER=ultimate in stdio mode to enable additional tools for Premium/Ultimate features (DORA metrics, vulnerabilities, compliance, etc.); leave it unset to detect the tier from the instance license (fallback free). In HTTP mode, --tier can force the tier, otherwise it is detected per token+URL pool entry from the license.

How does it handle rate limiting?

The server includes retry logic with backoff for GitLab API rate limits. Errors are classified as transient (retryable) or permanent, with actionable hints in error messages.

Which AI clients are supported?

Any MCP-compatible client: VS Code + GitHub Copilot, Claude Desktop, Cursor, Claude Code, Windsurf, JetBrains IDEs, Zed, Kiro, and others. Each one's configuration snippet is in Getting Started, and the one-click buttons above cover the most common ones.

Building from Source

git clone https://github.com/jmrplens/gitlab-mcp-server.git
cd gitlab-mcp-server
make build

The published container image is ghcr.io/jmrplens/gitlab-mcp-server:latest. See the Development Guide for cross-compilation, Docker Compose, and contributing guidelines.

Component Technology
Language Go 1.27+
MCP SDK github.com/modelcontextprotocol/go-sdk v1.8.0
GitLab Client gitlab.com/gitlab-org/api/client-go/v3 v3.14.0
Transport stdio (default), HTTP (Streamable HTTP)

Privacy Policy

The server runs entirely on your machine and has no telemetry, analytics, or backend of its own — data flows only between your MCP client and the GitLab instance you configure (plus an optional signed-binary update check against GitHub Releases). Your token is used solely to authenticate GitLab requests and is never logged. Full details: PRIVACY.md.

Upstream contributions

This server is built on GitLab's REST and GraphQL APIs, on client-go and on the MCP Go SDK. When building it turns up a gap in one of them, the fix goes upstream rather than staying a workaround here, so every other user of those projects gets it too:

  • client-go: response fields GitLab sends that the SDK's structs did not model, found by holding each struct against what a running GitLab actually sends, and fixes such as a panic decoding an issue with no id (merge requests).
  • GitLab: API documentation and response annotations corrected where they disagreed with what the API sends, a fix so a revoked GPG identity no longer verifies commits, and proposed additions such as cancelling an automatic merge (merge requests).
  • MCP Go SDK: protocol conformance fixes around cancellation, protocol version negotiation and the initialize handshake (pull requests).

Every gap is tracked in docs/development/upstream-bugs.md: the upstream issue or merge request, whether it has merged and in which release, and the workaround this server carries until it ships.

Contributing & Security

Repository mirror: GitHub is the canonical repository. A read-only mirror is available on GitLab.com for discoverability; please open contributions on GitHub.

Unnecessary statistics — numbers nobody asked for
File counts

Counted over every git-tracked .go file, which includes the fixture trees under cmd/audit_e2e_coverage/testdata that exist to be read by the coverage audit rather than to run. docs/development/testing/testing.md counts the packages go list returns instead, so its unit-test figures are lower. Both are correct answers to different questions.

Category Files Lines
Source (.go, non-test) 1,387 322,483
Unit tests (_test.go) 957 641,615
End-to-end tests 508 108,635
Total 2,852 1,072,733
Functions
Category Count
Source functions 11,071
. Exported (public) 3,293
. Unexported (private) 7,778
Unit test functions (TestXxx) 18,816
Subtests (t.Run(...)) 6,963
End-to-end test functions 1,401
Ratios worth noting
Observation Value
Test lines vs source lines 1.99× more tests than code
Average source file length ~233 lines
Average test file length ~670 lines
Comment lines in source 79,084 (~24.5% of source)
Test functions per source function 1.7×
Code patterns
Pattern Count
if err != nil checks 9,959
defer statements 1,328
struct types defined 3,553
//nolint suppressions 244
TODO / FIXME / HACK comments 2
Project
Metric Value
Go packages 301
Direct dependencies (go.mod) 34
Indirect dependencies 37
Hall of fame
Record File
Longest source file cmd/server/main.go. 4,965 lines
Longest test file cmd/server/main_test.go. 15,257 lines
Because why not
Fact Value
Source code printed at 55 lines/page ~5,863 pages of A4
Source lines mentioning "gitlab" 15,034 (impossible to avoid)
Longest function name in source assertDynamicCompatibilityPolicyOwnedByActionCompat (51 chars)
Longest test function name TestDomainCoverageFor_GitLabClientRegisterToolsOnAUtilitySurface_NamesNoMissingConstructor (90 chars)

Maintained by José M. Requena Plens · Project page · Hosted instance: mcp.jmrp.io/gitlab

Directories

Path Synopsis
cmd
audit_1to1 command
Command audit_1to1 is the consolidated 1:1 SDK↔API parity audit.
Command audit_1to1 is the consolidated 1:1 SDK↔API parity audit.
audit_1to1/internal/actions
Package actions reports client-go SDK endpoints that no MCP action invokes (R-ACTION).
Package actions reports client-go SDK endpoints that no MCP action invokes (R-ACTION).
audit_1to1/internal/enums
Package enums holds the 1:1 audit rule for enumerated values (R-ENUM).
Package enums holds the 1:1 audit rule for enumerated values (R-ENUM).
audit_1to1/internal/merge
Package merge combines the four 1:1-audit gap reports — struct completeness (R-INPUT/R-OUTPUT), action coverage (R-ACTION), metadata completeness (R-META), and enum values (R-ENUM) — into a single per-package backlog.
Package merge combines the four 1:1-audit gap reports — struct completeness (R-INPUT/R-OUTPUT), action coverage (R-ACTION), metadata completeness (R-META), and enum values (R-ENUM) — into a single per-package backlog.
audit_1to1/internal/metadata
Package metadata reports discovery-metadata gaps (R-META) across the canonical ActionSpec catalog.
Package metadata reports discovery-metadata gaps (R-META) across the canonical ActionSpec catalog.
audit_1to1/internal/paths
Package paths holds the 1:1 audit rule about the request an action actually issues (R-PATH).
Package paths holds the 1:1 audit rule about the request an action actually issues (R-PATH).
audit_1to1/internal/sdk
Package sdk holds the two 1:1 audit rules whose universe comes from the SDK rather than from this repository's own call sites (R-SERVICE, R-GRAPHQL).
Package sdk holds the two 1:1 audit rules whose universe comes from the SDK rather than from this repository's own call sites (R-SERVICE, R-GRAPHQL).
audit_1to1/internal/shared
Package shared holds constants and helpers used across multiple audit_1to1 sub-packages so they cannot drift.
Package shared holds constants and helpers used across multiple audit_1to1 sub-packages so they cannot drift.
audit_1to1/internal/structs
Package structs verifies the 1:1 field mapping between the MCP tool input/output structs and the client-go SDK Options/result structs they wrap.
Package structs verifies the 1:1 field mapping between the MCP tool input/output structs and the client-go SDK Options/result structs they wrap.
audit_action_ids command
Command audit_action_ids holds every canonical action ID this repository publishes to a model against the IDs the catalog really builds.
Command audit_action_ids holds every canonical action ID this repository publishes to a model against the IDs the catalog really builds.
audit_catalog_first command
Command audit_catalog_first generates a source-discovered inventory of internal/tools domain coverage for the ActionSpec migration.
Command audit_catalog_first generates a source-discovered inventory of internal/tools domain coverage for the ActionSpec migration.
audit_dead_consts command
Command audit_dead_consts reports every unexported constant in this repository that nothing reads.
Command audit_dead_consts reports every unexported constant in this repository that nothing reads.
audit_discovery_completeness command
Command audit_discovery_completeness reports discovery-metadata gaps that affect how well models can find and choose the right action.
Command audit_discovery_completeness reports discovery-metadata gaps that affect how well models can find and choose the right action.
audit_doc_coverage command
Command audit_doc_coverage reports per-doc-file gaps between docs/reference/tools/<doc>.md and the canonical action catalog.
Command audit_doc_coverage reports per-doc-file gaps between docs/reference/tools/<doc>.md and the canonical action catalog.
audit_doc_tool_names command
Command audit_doc_tool_names checks every name the documentation teaches a reader to call against what the server really serves: the `gitlab_*` tool names against the names it registers, and the `domain.action` IDs against the catalog it builds.
Command audit_doc_tool_names checks every name the documentation teaches a reader to call against what the server really serves: the `gitlab_*` tool names against the names it registers, and the `domain.action` IDs against the catalog it builds.
audit_dynamic_aliases command
Command audit_dynamic_aliases checks the dynamic toolset compatibility alias catalog for governance issues.
Command audit_dynamic_aliases checks the dynamic toolset compatibility alias catalog for governance issues.
audit_e2e_coverage command
Command audit_e2e_coverage is the one command that says what the end-to-end suite covers.
Command audit_e2e_coverage is the one command that says what the end-to-end suite covers.
audit_edition_tier command
Command audit_edition_tier reports the doc-grounded licensing tier of every canonical MCP action and compares it to the action's current gating.
Command audit_edition_tier reports the doc-grounded licensing tier of every canonical MCP action and compares it to the action's current gating.
audit_gateway_chars command
Command audit_gateway_chars scans everything a client receives from tools/list, prompts/list and resources/list, on every tool surface and at the widest tier, for characters that MCP gateway validators reject.
Command audit_gateway_chars scans everything a client receives from tools/list, prompts/list and resources/list, on every tool surface and at the widest tier, for characters that MCP gateway validators reject.
audit_graphql_documents command
Command audit_graphql_documents fails when a raw GraphQL document in this repository is one the pinned GitLab schema refuses.
Command audit_graphql_documents fails when a raw GraphQL document in this repository is one the pinned GitLab schema refuses.
audit_graphql_shapes command
Command audit_graphql_shapes fails when a struct this repository decodes a GraphQL response into cannot hold what the document it is sent with asks for.
Command audit_graphql_shapes fails when a struct this repository decodes a GraphQL response into cannot hold what the document it is sent with asks for.
audit_install_buttons command
Command audit_install_buttons checks the one-click install buttons against what the pages around them claim.
Command audit_install_buttons checks the one-click install buttons against what the pages around them claim.
audit_md_escaping command
Command audit_md_escaping fails when a Markdown formatter interpolates a value this server did not write into a construct that value can change the shape of.
Command audit_md_escaping fails when a Markdown formatter interpolates a value this server did not write into a construct that value can change the shape of.
audit_meta_descriptions command
Command audit_meta_descriptions checks the prose a meta-tool serves against the parameters its actions actually accept.
Command audit_meta_descriptions checks the prose a meta-tool serves against the parameters its actions actually accept.
audit_metrics command
Command audit_metrics generates a comprehensive metrics summary for the gitlab-mcp-server MCP server.
Command audit_metrics generates a comprehensive metrics summary for the gitlab-mcp-server MCP server.
audit_readonly_graphql command
Command audit_readonly_graphql fails when an action the canonical catalog classifies ReadOnly can reach a GraphQL mutation.
Command audit_readonly_graphql fails when an action the canonical catalog classifies ReadOnly can reach a GraphQL mutation.
audit_sdk_context command
Command audit_sdk_context reports every call into client-go that does not hand the SDK the caller's context.
Command audit_sdk_context reports every call into client-go that does not hand the SDK the caller's context.
audit_supply_chain command
Command audit_supply_chain audits the release supply chain's configuration invariants.
Command audit_supply_chain audits the release supply chain's configuration invariants.
audit_surface_quality command
Command audit_surface_quality is the consolidated MCP tool surface quality audit.
Command audit_surface_quality is the consolidated MCP tool surface quality audit.
audit_tenancy command
Command audit_tenancy holds the tenant policy register, internal/tenancy, to the code that enforces it.
Command audit_tenancy holds the tenant policy register, internal/tenancy, to the code that enforces it.
audit_test_goroutines command
Command audit_test_goroutines detects testing.T abort calls made from goroutines other than the one running the test.
Command audit_test_goroutines detects testing.T abort calls made from goroutines other than the one running the test.
audit_test_names command
Command audit_test_names scans all Go test files and classifies test function names by their naming pattern.
Command audit_test_names scans all Go test files and classifies test function names by their naming pattern.
audit_test_subtests command
Command audit_test_subtests finds case loops in test functions that assert without opening a subtest, and can rewrite the mechanical ones.
Command audit_test_subtests finds case loops in test functions that assert without opening a subtest, and can rewrite the mechanical ones.
audit_tokens command
Command audit_tokens measures the LLM context window overhead of all registered MCP tool definitions.
Command audit_tokens measures the LLM context window overhead of all registered MCP tool definitions.
bench_resources command
Command bench_resources measures what this server costs to run, and draws the charts the documentation publishes.
Command bench_resources measures what this server costs to run, and draws the charts the documentation publishes.
format_md_tables command
Command format_md_tables normalizes Markdown pipe tables in README.md, docs/ and the Astro documentation site under site/src/content/docs/.
Command format_md_tables normalizes Markdown pipe tables in README.md, docs/ and the Astro documentation site under site/src/content/docs/.
gen_action_catalog_manifest command
Command gen_action_catalog_manifest generates the ActionSpec group builder manifest used by the catalog-first runtime.
Command gen_action_catalog_manifest generates the ActionSpec group builder manifest used by the catalog-first runtime.
gen_api_live command
Command gen_api_live pins what a booted GitLab says its own REST API is.
Command gen_api_live pins what a booted GitLab says its own REST API is.
gen_brand command
Command gen_brand emits every vector brand asset from one parametric geometry, so the mark cannot drift between its surfaces.
Command gen_brand emits every vector brand asset from one parametric geometry, so the mark cannot drift between its surfaces.
gen_graphql_schema command
Command gen_graphql_schema pins a GitLab GraphQL schema into the repository.
Command gen_graphql_schema pins a GitLab GraphQL schema into the repository.
gen_icon_webp command
Command gen_icon_webp rasterizes the SVG icon constants declared in internal/toolutil/icons.go into lossless WebP fallbacks for MCP clients that reject image/svg+xml (VS Code Copilot's mcpIcons.ts MIME allowlist, for example, admits image/webp but not SVG).
Command gen_icon_webp rasterizes the SVG icon constants declared in internal/toolutil/icons.go into lossless WebP fallbacks for MCP clients that reject image/svg+xml (VS Code Copilot's mcpIcons.ts MIME allowlist, for example, admits image/webp but not SVG).
gen_lhm_manifest command
Command gen_lhm_manifest regenerates the tools, prompts, and resources arrays in lhm.plugin.json, the manifest published to the LobeHub Marketplace.
Command gen_lhm_manifest regenerates the tools, prompts, and resources arrays in lhm.plugin.json, the manifest published to the LobeHub Marketplace.
gen_llms command
Command gen_llms generates llms.txt and llms-full.txt files.
Command gen_llms generates llms.txt and llms-full.txt files.
gen_model_corpus command
Command gen_model_corpus renders the model evaluation corpus breadth ledger: what the corpus asks about, counted against the action catalog.
Command gen_model_corpus renders the model evaluation corpus breadth ledger: what the corpus asks about, counted against the action catalog.
gen_model_results command
Command gen_model_results turns what a model evaluation run observed into what this repository publishes: the committed record, the reference page and the README tables.
Command gen_model_results turns what a model evaluation run observed into what this repository publishes: the committed record, the reference page and the README tables.
gen_orbit_record command
Command gen_orbit_record records what GitLab.com's Orbit routes answer and commits the key tree of each answer to docs/development/orbit-responses.json.
Command gen_orbit_record records what GitLab.com's Orbit routes answer and commits the key tree of each answer to docs/development/orbit-responses.json.
gen_request_inventory command
Command gen_request_inventory merges the request shards the unit suite records into the committed inventory of what this server sends GitLab.
Command gen_request_inventory merges the request shards the unit suite records into the committed inventory of what this server sends GitLab.
gen_stats command
Command gen_stats auto-generates the repository statistics section in README.md.
Command gen_stats auto-generates the repository statistics section in README.md.
gen_testing_docs command
Command gen_testing_docs regenerates the managed test metrics section in docs/development/testing/testing.md.
Command gen_testing_docs regenerates the managed test metrics section in docs/development/testing/testing.md.
godoc_tool command
Command godoc_tool is the consolidated Go documentation auditor and fixer.
Command godoc_tool is the consolidated Go documentation auditor and fixer.
internal/actionids
Package actionids is the one reader of the canonical action IDs this repository publishes, and the one rule for spotting one inside prose.
Package actionids is the one reader of the canonical action IDs this repository publishes, and the one rule for spotting one inside prose.
internal/apidocs
Package apidocs is a shared fetcher for the GitLab API reference docs (the doc/api/<area>.md files in the gitlab-org/gitlab monorepo) used as a source of truth alongside the client-go SDK by the audit utilities.
Package apidocs is a shared fetcher for the GitLab API reference docs (the doc/api/<area>.md files in the gitlab-org/gitlab monorepo) used as a source of truth alongside the client-go SDK by the audit utilities.
internal/apilive
Package apilive is the committed record of what a booted GitLab says its own REST API is, and the one reader of it.
Package apilive is the committed record of what a booted GitLab says its own REST API is, and the one reader of it.
internal/auditshared
Package auditshared holds analysis helpers shared by the discovery-metadata auditors (cmd/audit_1to1 R-META and cmd/audit_discovery_completeness): the projected-description probe, owner-package resolution, and the shared usage/description quality checks.
Package auditshared holds analysis helpers shared by the discovery-metadata auditors (cmd/audit_1to1 R-META and cmd/audit_discovery_completeness): the projected-description probe, owner-package resolution, and the shared usage/description quality checks.
internal/docgen
Package docgen contains helpers for generated project documentation.
Package docgen contains helpers for generated project documentation.
internal/golist
Package golist holds the row shape two commands ask `go list` for, and the one answer to which `go` they ask it of.
Package golist holds the row shape two commands ask `go list` for, and the one answer to which `go` they ask it of.
internal/goprogram
Package goprogram is the one go/packages front end for the gates that type-check this repository's own source.
Package goprogram is the one go/packages front end for the gates that type-check this repository's own source.
internal/graphqldocs
Package graphqldocs reads every raw GraphQL document this repository writes out of the source and judges each one against a GitLab schema.
Package graphqldocs reads every raw GraphQL document this repository writes out of the source and judges each one against a GitLab schema.
internal/graphqlintrospect
Package graphqlintrospect asks a GitLab instance for its GraphQL schema and converts the answer to SDL.
Package graphqlintrospect asks a GitLab instance for its GraphQL schema and converts the answer to SDL.
internal/mcpsurface
Package mcpsurface is the one reader of the MCP surface this server serves.
Package mcpsurface is the one reader of the MCP surface this server serves.
internal/orbitrecord
Package orbitrecord is the committed record of what GitLab.com's Orbit routes answer, and the one reader of it.
Package orbitrecord is the committed record of what GitLab.com's Orbit routes answer, and the one reader of it.
internal/provenance
Package provenance holds the one age verdict the commands that pin an external truth pass on their committed record.
Package provenance holds the one age verdict the commands that pin an external truth pass on their committed record.
internal/requestinventory
Package requestinventory holds the committed record of what this server sends GitLab, and the one definition of which catalog actions it covers.
Package requestinventory holds the committed record of what this server sends GitLab, and the one definition of which catalog actions it covers.
internal/testsource
Package testsource answers the three questions every command that reads _test.go files in this repository used to answer for itself: whether a function name is a Go test entry point, which naming bucket that name falls in, and which files a scan of the tree may look at.
Package testsource answers the three questions every command that reads _test.go files in this repository used to answer for itself: whether a function name is a Go test entry point, which naming bucket that name falls in, and which files a scan of the tree may look at.
server command
Command server is the MCP server entry point for gitlab-mcp-server.
Command server is the MCP server entry point for gitlab-mcp-server.
internal
cachehints
Package cachehints applies SEP-2549 cache hints (ttlMs/cacheScope) to MCP results.
Package cachehints applies SEP-2549 cache hints (ttlMs/cacheScope) to MCP results.
capguard
Package capguard keeps the methods this server answers in step with the capabilities it declares.
Package capguard keeps the methods this server answers in step with the capabilities it declares.
clientcompat
Package clientcompat applies per-client response compatibility profiles to MCP results.
Package clientcompat applies per-client response compatibility profiles to MCP results.
cmdutil
Package cmdutil provides shared helpers for repository command utilities.
Package cmdutil provides shared helpers for repository command utilities.
completions
Package completions provides a CompletionHandler for GitLab-aware autocomplete of prompt arguments and resource URI template parameters.
Package completions provides a CompletionHandler for GitLab-aware autocomplete of prompt arguments and resource URI template parameters.
config
Package config loads, normalizes, and validates runtime configuration for the GitLab MCP server.
Package config loads, normalizes, and validates runtime configuration for the GitLab MCP server.
edition
Package edition defines the GitLab licensing tier model used to gate tool availability across the MCP server.
Package edition defines the GitLab licensing tier model used to gate tool availability across the MCP server.
elicitation
Package elicitation provides a Client for requesting structured user input via the MCP elicitation protocol.
Package elicitation provides a Client for requesting structured user input via the MCP elicitation protocol.
freshness
Package freshness reads the one harness setting that decides whether a test comparing a committed, generated artifact runs that comparison now or leaves it to the run where the artifact is refreshed.
Package freshness reads the one harness setting that decides whether a test comparing a committed, generated artifact runs that comparison now or leaves it to the run where the artifact is refreshed.
gatewaycompat
Package gatewaycompat rewrites the human-readable text this server lists — tool, prompt, resource and resource-template descriptions and titles, and the description and title annotations embedded in tool schemas — according to operator-defined substitutions.
Package gatewaycompat rewrites the human-readable text this server lists — tool, prompt, resource and resource-template descriptions and titles, and the description and title annotations embedded in tool schemas — according to operator-defined substitutions.
gitlab
Package gitlab provides a wrapper around the GitLab REST API v4 client.
Package gitlab provides a wrapper around the GitLab REST API v4 client.
graphqlschema
Package graphqlschema holds the pinned GitLab GraphQL schema and validates documents against it.
Package graphqlschema holds the pinned GitLab GraphQL schema and validates documents against it.
mcpotel
Package mcpotel instruments MCP request handling with OpenTelemetry.
Package mcpotel instruments MCP request handling with OpenTelemetry.
oauth
Package oauth provides GitLab-specific OAuth 2.0 support for HTTP mode.
Package oauth provides GitLab-specific OAuth 2.0 support for HTTP mode.
progress
Package progress provides a Tracker for sending MCP progress notifications to the client during long-running tool operations.
Package progress provides a Tracker for sending MCP progress notifications to the client during long-running tool operations.
prompts
Package prompts registers MCP prompt templates that generate AI-optimized summaries, reviews, reports, and assessments from GitLab project, group, and cross-project data.
Package prompts registers MCP prompt templates that generate AI-optimized summaries, reviews, reports, and assessments from GitLab project, group, and cross-project data.
resources
Package resources registers read-only MCP resources for GitLab and server metadata.
Package resources registers read-only MCP resources for GitLab and server metadata.
serverpool
Package serverpool manages a pool of credential entries keyed by GitLab token and URL.
Package serverpool manages a pool of credential entries keyed by GitLab token and URL.
sourcewalk
Package sourcewalk answers one question for everything here that walks this repository's tree: which directories below a walk root are this repository's own source, and which are something else that merely lives inside the checkout.
Package sourcewalk answers one question for everything here that walks this repository's tree: which directories below a walk root are this repository's own source, and which are something else that merely lives inside the checkout.
subscriptions
Package subscriptions implements MCP resource subscriptions (resources/subscribe) over GitLab resources.
Package subscriptions implements MCP resource subscriptions (resources/subscribe) over GitLab resources.
telemetry
Package telemetry is the only place in this server that knows about OpenTelemetry.
Package telemetry is the only place in this server that knows about OpenTelemetry.
tenancy
Package tenancy is the register of every decision this server makes about who a caller is and what it may hold, spend or be told.
Package tenancy is the register of every decision this server makes about who a caller is and what it may hold, spend or be told.
testutil
Package testutil provides test helpers for gitlab-mcp-server.
Package testutil provides test helpers for gitlab-mcp-server.
testutil/e2ecalls
Package e2ecalls declares the record the end-to-end suite writes down while it runs, and the coverage audit reads back afterwards: what a test asked the server to do, what the server dispatched, and on which runtime, surface and mode.
Package e2ecalls declares the record the end-to-end suite writes down while it runs, and the coverage audit reads back afterwards: what a test asked the server to do, what the server dispatched, and on which runtime, surface and mode.
testutil/hints
Package hints collects the canonical action IDs a package's Markdown invites a model to call, by rendering the package's own formatters rather than by reading its constants: a hint spelled as a literal at the call site is published exactly like one behind a constant, and a test that reads only the constants cannot see it.
Package hints collects the canonical action IDs a package's Markdown invites a model to call, by rendering the package's own formatters rather than by reading its constants: a hint spelled as a literal at the call site is published exactly like one behind a constant, and a test that reads only the constants cannot see it.
testutil/modelcorpus
Package modelcorpus is the model evaluation corpus: for each case, the stimulus a model is given and the key that stimulus is scored against, held apart so that no code which produces a stimulus can read a key.
Package modelcorpus is the model evaluation corpus: for each case, the stimulus a model is given and the key that stimulus is scored against, held apart so that no code which produces a stimulus can read a key.
testutil/modelrecord
Package modelrecord declares what one model evaluation run writes down: the stimulus a model was given, every request that went to a provider, every tool call the model made, what the server dispatched for it, and what GitLab answered.
Package modelrecord declares what one model evaluation run writes down: the stimulus a model was given, every request that went to a provider, every tool call the model made, what the server dispatched for it, and what GitLab answered.
testutil/modelscore
Package modelscore turns one attempt's record into the verdict a published row is made of.
Package modelscore turns one attempt's record into the verdict a published row is made of.
testutil/serialtypecheck
Package serialtypecheck makes golang.org/x/tools/go/packages type-check one package at a time in a race build, and does nothing in any other build.
Package serialtypecheck makes golang.org/x/tools/go/packages type-check one package at a time in a race build, and does nothing in any other build.
testutil/shardio
Package shardio is the shard mechanism the records written by a test process and read back by a command are built on: one shard file per process, one JSON line per record, a directory tree read in one pass, and a line nobody can read reported rather than dropped.
Package shardio is the shard mechanism the records written by a test process and read back by a command are built on: one shard file per process, one JSON line per record, a directory tree read in one pass, and a line nobody can read reported rather than dropped.
tools
Package tools provides the MCP tool orchestration layer for the GitLab MCP server.
Package tools provides the MCP tool orchestration layer for the GitLab MCP server.
tools/accessrequests
Package accessrequests implements MCP tools for GitLab project and group access request operations.
Package accessrequests implements MCP tools for GitLab project and group access request operations.
tools/accesstokens
Package accesstokens implements MCP tools for GitLab project, group, and personal access token operations.
Package accesstokens implements MCP tools for GitLab project, group, and personal access token operations.
tools/achievements
Package achievements implements MCP tools for GitLab achievements: the badges a namespace defines and the awards handed out from them.
Package achievements implements MCP tools for GitLab achievements: the badges a namespace defines and the awards handed out from them.
tools/actioncatalog
Package actioncatalog provides the canonical GitLab action catalog shared by catalog-backed MCP tool surfaces.
Package actioncatalog provides the canonical GitLab action catalog shared by catalog-backed MCP tool surfaces.
tools/actioncompat
Package actioncompat applies compatibility aliases and parameter normalization policies to canonical catalog action specs.
Package actioncompat applies compatibility aliases and parameter normalization policies to canonical catalog action specs.
tools/adminspecs
Package adminspecs defines catalog-backed action specs for GitLab instance administration operations.
Package adminspecs defines catalog-backed action specs for GitLab instance administration operations.
tools/alertmanagement
Package alertmanagement implements MCP tools for GitLab alert management operations.
Package alertmanagement implements MCP tools for GitLab alert management operations.
tools/appearance
Package appearance implements MCP tools for GitLab instance appearance settings.
Package appearance implements MCP tools for GitLab instance appearance settings.
tools/applications
Package applications implements MCP tools for GitLab OAuth application operations.
Package applications implements MCP tools for GitLab OAuth application operations.
tools/appstatistics
Package appstatistics implements MCP tools for GitLab instance application statistics.
Package appstatistics implements MCP tools for GitLab instance application statistics.
tools/attestations
Package attestations implements MCP tools for GitLab package attestation operations.
Package attestations implements MCP tools for GitLab package attestation operations.
tools/auditevents
Package auditevents implements MCP tools for GitLab audit event operations.
Package auditevents implements MCP tools for GitLab audit event operations.
tools/avatar
Package avatar implements MCP tools for GitLab avatar lookup operations.
Package avatar implements MCP tools for GitLab avatar lookup operations.
tools/awardemoji
Package awardemoji implements MCP tools for GitLab award emoji operations.
Package awardemoji implements MCP tools for GitLab award emoji operations.
tools/badges
Package badges implements MCP tools for GitLab project badge operations.
Package badges implements MCP tools for GitLab project badge operations.
tools/boards
Package boards implements MCP tools for GitLab project issue board operations.
Package boards implements MCP tools for GitLab project issue board operations.
tools/branches
Package branches implements MCP tools for GitLab branch and protected branch operations.
Package branches implements MCP tools for GitLab branch and protected branch operations.
tools/branchrules
Package branchrules implements MCP tools for GitLab branch rule discovery.
Package branchrules implements MCP tools for GitLab branch rule discovery.
tools/broadcastmessages
action_specs.go holds what this package contributes to the canonical action catalog.
action_specs.go holds what this package contributes to the canonical action catalog.
tools/bulkimports
Package bulkimports implements MCP tools for GitLab bulk import operations.
Package bulkimports implements MCP tools for GitLab bulk import operations.
tools/cicatalog
Package cicatalog implements MCP tools for GitLab CI/CD catalog resources.
Package cicatalog implements MCP tools for GitLab CI/CD catalog resources.
tools/cilint
Package cilint implements MCP tools for GitLab CI configuration linting.
Package cilint implements MCP tools for GitLab CI configuration linting.
tools/civariables
Package civariables implements MCP tools for GitLab project CI/CD variable operations.
Package civariables implements MCP tools for GitLab project CI/CD variable operations.
tools/ciyamltemplates
Package ciyamltemplates implements MCP tools for GitLab CI/CD YAML template operations.
Package ciyamltemplates implements MCP tools for GitLab CI/CD YAML template operations.
tools/clusteragents
Package clusteragents implements MCP tools for GitLab Kubernetes cluster agent operations.
Package clusteragents implements MCP tools for GitLab Kubernetes cluster agent operations.
tools/commitdiscussions
Package commitdiscussions implements MCP tools for GitLab commit discussion operations.
Package commitdiscussions implements MCP tools for GitLab commit discussion operations.
tools/commits
Package commits implements MCP tools for GitLab commit operations.
Package commits implements MCP tools for GitLab commit operations.
tools/compliancepolicy
Package compliancepolicy implements MCP tools for GitLab security and compliance policy operations.
Package compliancepolicy implements MCP tools for GitLab security and compliance policy operations.
tools/containerregistry
Package containerregistry implements MCP tools for GitLab container registry operations.
Package containerregistry implements MCP tools for GitLab container registry operations.
tools/customattributes
action_specs.go holds what this package contributes to the canonical action catalog.
action_specs.go holds what this package contributes to the canonical action catalog.
tools/customemoji
Package customemoji implements MCP tools for GitLab group custom emoji operations.
Package customemoji implements MCP tools for GitLab group custom emoji operations.
tools/dbmigrations
Package dbmigrations implements MCP tools for GitLab database migration administration.
Package dbmigrations implements MCP tools for GitLab database migration administration.
tools/dependencies
Package dependencies implements MCP tools for GitLab dependency list operations.
Package dependencies implements MCP tools for GitLab dependency list operations.
tools/dependencyfirewall
Package dependencyfirewall implements the MCP tool for GitLab's Dependency Firewall package evaluation endpoint.
Package dependencyfirewall implements the MCP tool for GitLab's Dependency Firewall package evaluation endpoint.
tools/dependencyproxy
Package dependencyproxy implements MCP tools for GitLab Dependency Proxy cache management.
Package dependencyproxy implements MCP tools for GitLab Dependency Proxy cache management.
tools/deploykeys
Package deploykeys implements MCP tools for GitLab deploy key operations.
Package deploykeys implements MCP tools for GitLab deploy key operations.
tools/deploymentmergerequests
Package deploymentmergerequests implements MCP tools for merge requests associated with GitLab deployments.
Package deploymentmergerequests implements MCP tools for merge requests associated with GitLab deployments.
tools/deployments
Package deployments implements MCP tools for GitLab deployment operations.
Package deployments implements MCP tools for GitLab deployment operations.
tools/deploytokens
Package deploytokens implements MCP tools for GitLab project and group deploy token operations.
Package deploytokens implements MCP tools for GitLab project and group deploy token operations.
tools/dockerfiletemplates
Package dockerfiletemplates implements MCP tools for GitLab Dockerfile template operations.
Package dockerfiletemplates implements MCP tools for GitLab Dockerfile template operations.
tools/dorametrics
Package dorametrics implements MCP tools for GitLab DORA metrics.
Package dorametrics implements MCP tools for GitLab DORA metrics.
tools/dynamic
Package dynamic implements low-token GitLab MCP tool surfaces over the canonical action catalog.
Package dynamic implements low-token GitLab MCP tool surfaces over the canonical action catalog.
tools/dynamiccatalog
Package dynamiccatalog builds the catalog the dynamic surface executes over, for every caller that needs one built the way the server builds it.
Package dynamiccatalog builds the catalog the dynamic surface executes over, for every caller that needs one built the way the server builds it.
tools/elicitationtools
Package elicitationtools implements interactive MCP tools that gather missing values through the MCP elicitation capability before calling GitLab actions.
Package elicitationtools implements interactive MCP tools that gather missing values through the MCP elicitation capability before calling GitLab actions.
tools/enterpriseusers
Package enterpriseusers implements MCP tools for GitLab enterprise user operations.
Package enterpriseusers implements MCP tools for GitLab enterprise user operations.
tools/environments
Package environments implements MCP tools for GitLab environment operations.
Package environments implements MCP tools for GitLab environment operations.
tools/epicdiscussions
Package epicdiscussions implements MCP tools for GitLab epic discussion operations.
Package epicdiscussions implements MCP tools for GitLab epic discussion operations.
tools/epicissues
Package epicissues implements MCP tools for GitLab epic issue relation operations.
Package epicissues implements MCP tools for GitLab epic issue relation operations.
tools/epicnotes
Package epicnotes implements MCP tools for GitLab epic note operations.
Package epicnotes implements MCP tools for GitLab epic note operations.
tools/epics
Package epics implements MCP tools for GitLab epic operations.
Package epics implements MCP tools for GitLab epic operations.
tools/epicworkitems
Package epicworkitems is the home for the shared GraphQL helpers used by the epic-family sub-packages (epics, epicnotes, epicissues).
Package epicworkitems is the home for the shared GraphQL helpers used by the epic-family sub-packages (epics, epicnotes, epicissues).
tools/errortracking
Package errortracking implements MCP tools for GitLab error tracking operations.
Package errortracking implements MCP tools for GitLab error tracking operations.
tools/events
Package events implements MCP tools for GitLab event operations.
Package events implements MCP tools for GitLab event operations.
tools/externalstatuschecks
Package externalstatuschecks implements MCP tools for GitLab external status check operations.
Package externalstatuschecks implements MCP tools for GitLab external status check operations.
tools/featureflags
Package featureflags implements MCP tools for GitLab feature flag operations.
Package featureflags implements MCP tools for GitLab feature flag operations.
tools/features
action_specs.go holds what this package contributes to the canonical action catalog.
action_specs.go holds what this package contributes to the canonical action catalog.
tools/ffuserlists
Package ffuserlists implements MCP tools for GitLab feature flag user list operations.
Package ffuserlists implements MCP tools for GitLab feature flag user list operations.
tools/files
Package files implements MCP tools for GitLab repository file operations.
Package files implements MCP tools for GitLab repository file operations.
tools/freezeperiods
Package freezeperiods implements MCP tools for GitLab deploy freeze period operations.
Package freezeperiods implements MCP tools for GitLab deploy freeze period operations.
tools/geo
Package geo implements MCP tools for GitLab Geo site management.
Package geo implements MCP tools for GitLab Geo site management.
tools/gitignoretemplates
Package gitignoretemplates implements MCP tools for GitLab gitignore template operations.
Package gitignoretemplates implements MCP tools for GitLab gitignore template operations.
tools/groupanalytics
Package groupanalytics implements MCP tools for GitLab group analytics.
Package groupanalytics implements MCP tools for GitLab group analytics.
tools/groupboards
Package groupboards implements MCP tools for GitLab group issue board operations.
Package groupboards implements MCP tools for GitLab group issue board operations.
tools/groupcredentials
Package groupcredentials implements MCP tools for GitLab group credential inventory operations.
Package groupcredentials implements MCP tools for GitLab group credential inventory operations.
tools/groupepicboards
Package groupepicboards implements MCP tools for GitLab group epic board operations.
Package groupepicboards implements MCP tools for GitLab group epic board operations.
tools/groupimportexport
Package groupimportexport implements MCP tools for GitLab group import and export operations.
Package groupimportexport implements MCP tools for GitLab group import and export operations.
tools/groupiterations
Package groupiterations implements MCP tools for GitLab group iteration operations.
Package groupiterations implements MCP tools for GitLab group iteration operations.
tools/grouplabels
Package grouplabels implements MCP tools for GitLab group label operations.
Package grouplabels implements MCP tools for GitLab group label operations.
tools/groupldap
Package groupldap implements MCP tools for GitLab group LDAP link operations.
Package groupldap implements MCP tools for GitLab group LDAP link operations.
tools/groupmarkdownuploads
Package groupmarkdownuploads implements MCP tools for GitLab group Markdown upload operations.
Package groupmarkdownuploads implements MCP tools for GitLab group Markdown upload operations.
tools/groupmembers
Package groupmembers implements MCP tools for GitLab group member operations.
Package groupmembers implements MCP tools for GitLab group member operations.
tools/groupmilestones
Package groupmilestones implements MCP tools for GitLab group milestone operations.
Package groupmilestones implements MCP tools for GitLab group milestone operations.
tools/groupprotectedbranches
Package groupprotectedbranches implements MCP tools for GitLab group protected branch operations.
Package groupprotectedbranches implements MCP tools for GitLab group protected branch operations.
tools/groupprotectedenvs
Package groupprotectedenvs implements MCP tools for GitLab group protected environment operations.
Package groupprotectedenvs implements MCP tools for GitLab group protected environment operations.
tools/grouprelationsexport
Package grouprelationsexport implements MCP tools for GitLab group relation export operations.
Package grouprelationsexport implements MCP tools for GitLab group relation export operations.
tools/groupreleases
Package groupreleases implements MCP tools for GitLab group release operations.
Package groupreleases implements MCP tools for GitLab group release operations.
tools/groups
Package groups implements MCP tools for GitLab group operations.
Package groups implements MCP tools for GitLab group operations.
tools/groupsaml
Package groupsaml implements MCP tools for GitLab group SAML link operations.
Package groupsaml implements MCP tools for GitLab group SAML link operations.
tools/groupscim
Package groupscim implements MCP tools for GitLab group SCIM operations.
Package groupscim implements MCP tools for GitLab group SCIM operations.
tools/groupserviceaccounts
Package groupserviceaccounts implements MCP tools for GitLab group service account operations.
Package groupserviceaccounts implements MCP tools for GitLab group service account operations.
tools/groupsshcerts
Package groupsshcerts implements MCP tools for GitLab group SSH certificate operations.
Package groupsshcerts implements MCP tools for GitLab group SSH certificate operations.
tools/groupstoragemoves
Package groupstoragemoves implements MCP tools for GitLab group repository storage move operations.
Package groupstoragemoves implements MCP tools for GitLab group repository storage move operations.
tools/groupvariables
Package groupvariables implements MCP tools for GitLab group CI/CD variable operations.
Package groupvariables implements MCP tools for GitLab group CI/CD variable operations.
tools/groupwikis
Package groupwikis implements MCP tools for GitLab group wiki operations, a GitLab Premium feature.
Package groupwikis implements MCP tools for GitLab group wiki operations, a GitLab Premium feature.
tools/health
Package health implements MCP tools for GitLab server and MCP server health checks.
Package health implements MCP tools for GitLab server and MCP server health checks.
tools/impersonationtokens
Package impersonationtokens implements MCP tools for GitLab impersonation token operations.
Package impersonationtokens implements MCP tools for GitLab impersonation token operations.
tools/importservice
Package importservice implements MCP tools for GitLab external import operations.
Package importservice implements MCP tools for GitLab external import operations.
tools/instancevariables
Package instancevariables implements MCP tools for GitLab instance CI/CD variable operations.
Package instancevariables implements MCP tools for GitLab instance CI/CD variable operations.
tools/integrations
Package integrations implements MCP tools for GitLab project and group integrations.
Package integrations implements MCP tools for GitLab project and group integrations.
tools/invites
Package invites implements MCP tools for GitLab project and group invitation operations.
Package invites implements MCP tools for GitLab project and group invitation operations.
tools/issuediscussions
Package issuediscussions implements MCP tools for GitLab issue discussion operations.
Package issuediscussions implements MCP tools for GitLab issue discussion operations.
tools/issuelinks
Package issuelinks implements MCP tools for GitLab issue link operations.
Package issuelinks implements MCP tools for GitLab issue link operations.
tools/issuenotes
Package issuenotes implements MCP tools for GitLab issue note operations.
Package issuenotes implements MCP tools for GitLab issue note operations.
tools/issues
Package issues implements MCP tools for GitLab issue lifecycle operations.
Package issues implements MCP tools for GitLab issue lifecycle operations.
tools/issuestatistics
Package issuestatistics implements MCP tools for GitLab issue statistics.
Package issuestatistics implements MCP tools for GitLab issue statistics.
tools/iterationdata
Package iterationdata contains shared GitLab iteration conversion helpers.
Package iterationdata contains shared GitLab iteration conversion helpers.
tools/jobs
Package jobs implements MCP tools for GitLab CI/CD job operations.
Package jobs implements MCP tools for GitLab CI/CD job operations.
tools/jobtokenscope
Package jobtokenscope implements MCP tools for GitLab CI/CD job token scope operations.
Package jobtokenscope implements MCP tools for GitLab CI/CD job token scope operations.
tools/keys
Package keys implements MCP tools for GitLab SSH key operations.
Package keys implements MCP tools for GitLab SSH key operations.
tools/labeldata
Package labeldata contains shared GitLab label conversion helpers.
Package labeldata contains shared GitLab label conversion helpers.
tools/labels
Package labels implements MCP tools for GitLab project label operations.
Package labels implements MCP tools for GitLab project label operations.
tools/license
Package license implements MCP tools for GitLab instance license operations.
Package license implements MCP tools for GitLab instance license operations.
tools/licensetemplates
Package licensetemplates implements MCP tools for GitLab license template operations.
Package licensetemplates implements MCP tools for GitLab license template operations.
tools/markdown
Package markdown implements MCP tools for rendering GitLab-flavored Markdown.
Package markdown implements MCP tools for rendering GitLab-flavored Markdown.
tools/memberroles
Package memberroles implements MCP tools for GitLab member role operations.
Package memberroles implements MCP tools for GitLab member role operations.
tools/members
Package members implements MCP tools for GitLab project member operations.
Package members implements MCP tools for GitLab project member operations.
tools/mergerequests
Package mergerequests implements MCP tools for GitLab merge request operations.
Package mergerequests implements MCP tools for GitLab merge request operations.
tools/mergetrains
Package mergetrains implements MCP tools for GitLab merge train operations.
Package mergetrains implements MCP tools for GitLab merge train operations.
tools/metadata
Package metadata implements MCP tools for the GitLab Metadata API.
Package metadata implements MCP tools for the GitLab Metadata API.
tools/milestones
Package milestones implements MCP tools for GitLab project milestone operations.
Package milestones implements MCP tools for GitLab project milestone operations.
tools/modelregistry
Package modelregistry implements MCP tools for GitLab model registry operations.
Package modelregistry implements MCP tools for GitLab model registry operations.
tools/mrapprovals
Package mrapprovals implements MCP tools for GitLab merge request approval operations.
Package mrapprovals implements MCP tools for GitLab merge request approval operations.
tools/mrapprovalsettings
Package mrapprovalsettings implements MCP tools for GitLab project merge request approval settings.
Package mrapprovalsettings implements MCP tools for GitLab project merge request approval settings.
tools/mrchanges
Package mrchanges implements MCP tools for GitLab merge request changes and diff operations.
Package mrchanges implements MCP tools for GitLab merge request changes and diff operations.
tools/mrcontextcommits
Package mrcontextcommits implements MCP tools for GitLab merge request context commit operations.
Package mrcontextcommits implements MCP tools for GitLab merge request context commit operations.
tools/mrdiscussions
Package mrdiscussions implements MCP tools for GitLab merge request discussion operations.
Package mrdiscussions implements MCP tools for GitLab merge request discussion operations.
tools/mrdraftnotes
Package mrdraftnotes implements MCP tools for GitLab merge request draft note operations.
Package mrdraftnotes implements MCP tools for GitLab merge request draft note operations.
tools/mrnotes
Package mrnotes implements MCP tools for GitLab merge request note operations.
Package mrnotes implements MCP tools for GitLab merge request note operations.
tools/namespaces
Package namespaces implements MCP tools for GitLab namespace operations.
Package namespaces implements MCP tools for GitLab namespace operations.
tools/notifications
Package notifications implements MCP tools for GitLab notification setting operations.
Package notifications implements MCP tools for GitLab notification setting operations.
tools/orbit
Package orbit implements MCP tools for the experimental GitLab Orbit Knowledge Graph API on GitLab.com.
Package orbit implements MCP tools for the experimental GitLab Orbit Knowledge Graph API on GitLab.com.
tools/packages
Package packages implements MCP tools for GitLab Generic Packages registry operations.
Package packages implements MCP tools for GitLab Generic Packages registry operations.
tools/pages
Package pages implements MCP tools for GitLab Pages operations.
Package pages implements MCP tools for GitLab Pages operations.
tools/pipelines
Package pipelines implements MCP tools for GitLab pipeline operations.
Package pipelines implements MCP tools for GitLab pipeline operations.
tools/pipelineschedules
Package pipelineschedules implements MCP tools for GitLab pipeline schedule operations.
Package pipelineschedules implements MCP tools for GitLab pipeline schedule operations.
tools/pipelinetriggers
Package pipelinetriggers implements MCP tools for GitLab pipeline trigger operations.
Package pipelinetriggers implements MCP tools for GitLab pipeline trigger operations.
tools/planlimits
Package planlimits implements MCP tools for GitLab plan limit operations.
Package planlimits implements MCP tools for GitLab plan limit operations.
tools/projectaliases
Package projectaliases implements MCP tools for GitLab project alias operations.
Package projectaliases implements MCP tools for GitLab project alias operations.
tools/projectdiscovery
Package projectdiscovery implements MCP tools that resolve Git remote URLs to GitLab project metadata.
Package projectdiscovery implements MCP tools that resolve Git remote URLs to GitLab project metadata.
tools/projectimportexport
Package projectimportexport implements MCP tools for GitLab project import and export operations.
Package projectimportexport implements MCP tools for GitLab project import and export operations.
tools/projectiterations
Package projectiterations implements MCP tools for GitLab project iteration operations.
Package projectiterations implements MCP tools for GitLab project iteration operations.
tools/projectmirrors
Package projectmirrors implements MCP tools for GitLab project remote mirror operations.
Package projectmirrors implements MCP tools for GitLab project remote mirror operations.
tools/projects
Package projects implements MCP tools for GitLab project operations.
Package projects implements MCP tools for GitLab project operations.
tools/projectserviceaccounts
Package projectserviceaccounts implements MCP tools for GitLab project service accounts.
Package projectserviceaccounts implements MCP tools for GitLab project service accounts.
tools/projectstatistics
Package projectstatistics implements MCP tools for GitLab project statistics.
Package projectstatistics implements MCP tools for GitLab project statistics.
tools/projectstoragemoves
Package projectstoragemoves implements MCP tools for GitLab project repository storage move operations.
Package projectstoragemoves implements MCP tools for GitLab project repository storage move operations.
tools/projecttemplates
Package projecttemplates implements MCP tools for GitLab project template operations.
Package projecttemplates implements MCP tools for GitLab project template operations.
tools/protectedenvs
Package protectedenvs implements MCP tools for GitLab protected environment operations.
Package protectedenvs implements MCP tools for GitLab protected environment operations.
tools/protectedpackages
Package protectedpackages implements MCP tools for GitLab package protection rule operations.
Package protectedpackages implements MCP tools for GitLab package protection rule operations.
tools/releaselinks
Package releaselinks implements MCP tools for GitLab release asset link operations.
Package releaselinks implements MCP tools for GitLab release asset link operations.
tools/releases
Package releases implements MCP tools for GitLab release operations.
Package releases implements MCP tools for GitLab release operations.
tools/repository
Package repository implements MCP tools for GitLab repository tree, compare, archive, blob, and contributor operations.
Package repository implements MCP tools for GitLab repository tree, compare, archive, blob, and contributor operations.
tools/repositorysubmodules
Package repositorysubmodules implements MCP tools for GitLab repository submodule operations.
Package repositorysubmodules implements MCP tools for GitLab repository submodule operations.
tools/resourceevents
Package resourceevents implements MCP tools for GitLab resource state event operations.
Package resourceevents implements MCP tools for GitLab resource state event operations.
tools/resourcegroups
Package resourcegroups implements MCP tools for GitLab CI/CD resource group operations.
Package resourcegroups implements MCP tools for GitLab CI/CD resource group operations.
tools/runnercontrollers
Package runnercontrollers implements MCP tools for GitLab runner controller operations.
Package runnercontrollers implements MCP tools for GitLab runner controller operations.
tools/runnercontrollerscopes
Package runnercontrollerscopes implements MCP tools for GitLab runner controller scope operations.
Package runnercontrollerscopes implements MCP tools for GitLab runner controller scope operations.
tools/runnercontrollertokens
Package runnercontrollertokens implements MCP tools for GitLab runner controller token operations.
Package runnercontrollertokens implements MCP tools for GitLab runner controller token operations.
tools/runners
Package runners implements MCP tools for GitLab runner operations.
Package runners implements MCP tools for GitLab runner operations.
tools/search
Package search implements MCP tools for GitLab global, group, project, code, issue, and merge request search operations.
Package search implements MCP tools for GitLab global, group, project, code, issue, and merge request search operations.
tools/securefiles
Package securefiles implements MCP tools for GitLab project secure file operations.
Package securefiles implements MCP tools for GitLab project secure file operations.
tools/securityattributes
Package securityattributes implements MCP tools for GitLab security attributes.
Package securityattributes implements MCP tools for GitLab security attributes.
tools/securitycategories
Package securitycategories implements MCP tools for GitLab security categories.
Package securitycategories implements MCP tools for GitLab security categories.
tools/securityfindings
Package securityfindings implements MCP tools for GitLab vulnerability finding operations.
Package securityfindings implements MCP tools for GitLab vulnerability finding operations.
tools/securityscanprofiles
Package securityscanprofiles implements MCP tools for GitLab security scan profiles through the GraphQL API.
Package securityscanprofiles implements MCP tools for GitLab security scan profiles through the GraphQL API.
tools/securitysettings
Package securitysettings implements MCP tools for GitLab project security settings.
Package securitysettings implements MCP tools for GitLab project security settings.
tools/settings
Package settings implements MCP tools for GitLab instance application settings.
Package settings implements MCP tools for GitLab instance application settings.
tools/sidekiq
Package sidekiq implements MCP tools for GitLab Sidekiq metrics.
Package sidekiq implements MCP tools for GitLab Sidekiq metrics.
tools/snippetdiscussions
Package snippetdiscussions implements MCP tools for GitLab snippet discussion operations.
Package snippetdiscussions implements MCP tools for GitLab snippet discussion operations.
tools/snippetnotes
Package snippetnotes implements MCP tools for GitLab snippet note operations.
Package snippetnotes implements MCP tools for GitLab snippet note operations.
tools/snippets
Package snippets implements MCP tools for GitLab personal and project snippets.
Package snippets implements MCP tools for GitLab personal and project snippets.
tools/snippetstoragemoves
Package snippetstoragemoves implements MCP tools for GitLab snippet repository storage move operations.
Package snippetstoragemoves implements MCP tools for GitLab snippet repository storage move operations.
tools/surfaces
Package surfaces projects standalone runtime and interactive tool specs into visible MCP surfaces and dynamic catalog routes.
Package surfaces projects standalone runtime and interactive tool specs into visible MCP surfaces and dynamic catalog routes.
tools/systemhooks
Package systemhooks implements MCP tools for GitLab instance system hooks.
Package systemhooks implements MCP tools for GitLab instance system hooks.
tools/tags
Package tags implements MCP tools for GitLab tag and protected tag operations.
Package tags implements MCP tools for GitLab tag and protected tag operations.
tools/terraformstates
Package terraformstates implements MCP tools for GitLab Terraform state operations.
Package terraformstates implements MCP tools for GitLab Terraform state operations.
tools/todos
Package todos implements MCP tools for GitLab todo operations.
Package todos implements MCP tools for GitLab todo operations.
tools/toolvisibility
Package toolvisibility decides which registered tool a narrowed deployment serves, for every caller that registers a tool surface the way the server does.
Package toolvisibility decides which registered tool a narrowed deployment serves, for every caller that registers a tool surface the way the server does.
tools/topics
Package topics implements MCP tools for GitLab project topic operations.
Package topics implements MCP tools for GitLab project topic operations.
tools/uploads
Package uploads implements MCP tools for GitLab project upload operations.
Package uploads implements MCP tools for GitLab project upload operations.
tools/usagedata
Package usagedata implements MCP tools for GitLab usage data and service ping metrics.
Package usagedata implements MCP tools for GitLab usage data and service ping metrics.
tools/useremails
Package useremails implements MCP tools for GitLab user email operations.
Package useremails implements MCP tools for GitLab user email operations.
tools/usergpgkeys
Package usergpgkeys implements MCP tools for GitLab user GPG key operations.
Package usergpgkeys implements MCP tools for GitLab user GPG key operations.
tools/users
Package users implements GitLab user MCP tools for the current authenticated user, administrator user management, user CRUD, SSH keys, service accounts, personal access tokens, memberships, activities, runner details, and identity deletion.
Package users implements GitLab user MCP tools for the current authenticated user, administrator user management, user CRUD, SSH keys, service accounts, personal access tokens, memberships, activities, runner details, and identity deletion.
tools/vulnerabilities
Package vulnerabilities implements MCP tools for GitLab vulnerability management through the GraphQL API.
Package vulnerabilities implements MCP tools for GitLab vulnerability management through the GraphQL API.
tools/waitpoll
Package waitpoll provides shared polling loops for wait-style tools.
Package waitpoll provides shared polling loops for wait-style tools.
tools/wikis
Package wikis implements MCP tools for GitLab project wiki operations.
Package wikis implements MCP tools for GitLab project wiki operations.
tools/workitems
Package workitems implements MCP tools for GitLab work item operations exposed through issue workflows.
Package workitems implements MCP tools for GitLab work item operations exposed through issue workflows.
tools/workitemsavedviews
Package workitemsavedviews implements MCP tools for GitLab work item saved views through the GraphQL API.
Package workitemsavedviews implements MCP tools for GitLab work item saved views through the GraphQL API.
toolutil
Package toolutil provides shared utilities for MCP tool handler sub-packages.
Package toolutil provides shared utilities for MCP tool handler sub-packages.
test
e2e/collector
Package collectore2e proves that a real OTLP receiver accepts what the server exports: traces, metrics and logs reach a collector started for the test, with the identity policy and the metric views applied as configured.
Package collectore2e proves that a real OTLP receiver accepts what the server exports: traces, metrics and logs reach a collector started for the test, with the identity policy and the metric views applied as configured.
e2e/gitlab/ce
Package ce holds the end-to-end tests that only hold on a GitLab with no license.
Package ce holds the end-to-end tests that only hold on a GitLab with no license.
e2e/gitlab/common
Package common holds the end-to-end tests that run on every GitLab runtime.
Package common holds the end-to-end tests that run on every GitLab runtime.
e2e/gitlab/ee
Package ee holds the end-to-end tests that need a licensed GitLab, Premium or Ultimate.
Package ee holds the end-to-end tests that need a licensed GitLab, Premium or Ultimate.
e2e/http
Package httpe2e drives the real gitlab-mcp-server binary over HTTP the way a client does: cross-origin decisions, preflight, the authentication modes, rate limiting, the JSON-RPC shape of a refusal, shutdown and draining, and the flags that restrict them.
Package httpe2e drives the real gitlab-mcp-server binary over HTTP the way a client does: cross-origin decisions, preflight, the authentication modes, rate limiting, the JSON-RPC shape of a refusal, shutdown and draining, and the flags that restrict them.
e2e/internal/fixture
Package fixture is the GitLab state an end-to-end test stands on.
Package fixture is the GitLab state an end-to-end test stands on.
e2e/internal/harness
Package harness is the only route from an end-to-end test to an MCP server.
Package harness is the only route from an end-to-end test to an MCP server.
e2e/modeleval
Package modeleval runs a language model against the real gitlab-mcp-server binary and writes down what it did.
Package modeleval runs a language model against the real gitlab-mcp-server binary and writes down what it did.
e2e/orbit
Package orbit holds the live tests of the six read-only gitlab_orbit_* tools against GitLab.com's experimental Knowledge Graph API, on the fixtures scripts/setup-orbit-fixtures.sh provisions under test/fixtures/orbit.
Package orbit holds the live tests of the six read-only gitlab_orbit_* tools against GitLab.com's experimental Knowledge Graph API, on the fixtures scripts/setup-orbit-fixtures.sh provisions under test/fixtures/orbit.
e2e/stdio
Package stdioe2e drives the real gitlab-mcp-server binary over pipes the way an MCP client does: process lifetime, stdout carrying nothing but JSON-RPC, logs on stderr, readiness before the catalog is built, and the environment variables stdio configuration actually reads.
Package stdioe2e drives the real gitlab-mcp-server binary over pipes the way an MCP client does: process lifetime, stdout carrying nothing but JSON-RPC, logs on stderr, readiness before the catalog is built, and the environment variables stdio configuration actually reads.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL