Skip to main content

GitLab MCP Server

GitLab for your AI assistant: a Model Context Protocol server exposing GitLab REST API v4 and GraphQL operations as MCP tools. Projects, issues, merge requests, pipelines, CI/CD, wikis, releases, users, groups, search and more, against GitLab.com or any self-managed instance.

This package wraps the native gitlab-mcp-server binary (written in Go) in a platform wheel, the same distribution model used by uv, ruff and ziglang: pip selects the wheel for your OS and architecture, and a tiny launcher hands over to the binary. No Go toolchain, no runtime downloads, no install scripts.

mcp-name: io.github.jmrplens/gitlab-mcp-server

Quick start

Run it directly with uv:

GITLAB_TOKEN=glpat-xxxxxxxxxxxxxxxxxxxx uvx jmrplens-gitlab-mcp-server

Or install it on your PATH:

pipx install jmrplens-gitlab-mcp-server   # or: pip install jmrplens-gitlab-mcp-server

Either way the installed command is gitlab-mcp-server (the native binary); the jmrplens- prefixed command also works, which is what lets uvx resolve it by distribution name. About the name: the unprefixed gitlab-mcp-server project on PyPI is an empty registration held by an unrelated account and is under a PEP 541 reclamation request; this author-prefixed distribution is the official one meanwhile.

Typical MCP client configuration (stdio):

{
  "mcpServers": {
    "gitlab": {
      "command": "uvx",
      "args": ["jmrplens-gitlab-mcp-server"],
      "env": {
        "GITLAB_URL": "https://gitlab.com",
        "GITLAB_TOKEN": "glpat-xxxxxxxxxxxxxxxxxxxx"
      }
    }
  }
}

GITLAB_TOKEN is the only required setting. GITLAB_URL defaults to https://gitlab.com; point it at your own host for self-managed instances.

Verify what you run

The gitlab-mcp-server command a wheel installs is the release binary byte for byte, so the build provenance attestation GitHub holds for that release asset verifies it directly with the GitHub CLI (releases after 2.7.5):

# pip, pipx or uv tool install: the command on your PATH is the binary
gh attestation verify "$(command -v gitlab-mcp-server)" -R jmrplens/gitlab-mcp-server \
  --signer-workflow jmrplens/gitlab-mcp-server/.github/workflows/release.yml

# uvx: the binary sits in uv's cache, and the package says where
gh attestation verify "$(uvx --from jmrplens-gitlab-mcp-server python -c 'import gitlab_mcp_server as m; print(m.find_binary())')" \
  -R jmrplens/gitlab-mcp-server --signer-workflow jmrplens/gitlab-mcp-server/.github/workflows/release.yml

--signer-workflow holds the attestation to the release workflow, since -R alone accepts one any workflow of the repository minted; add --source-ref refs/tags/v<version> to hold it to the release you installed. On Windows, (Get-Command gitlab-mcp-server).Source gives the path for the first form. For a pinned uvx, name the same version in --from (jmrplens-gitlab-mcp-server==<version>). The wheels also carry PyPI's own publish attestation (PEP 740), shown on each file's page on PyPI. The release signature and the other channels are covered in release integrity.

Configuration

Everything is configured through environment variables: GITLAB_MCP_TOOL_SURFACE (dynamic, meta or individual tool catalogs), GITLAB_MCP_READ_ONLY, GITLAB_MCP_SAFE_MODE, GITLAB_MCP_TIER, rate limiting, telemetry and more. See the configuration guide for the full reference.

Platform support

Wheels are published for Linux (glibc), macOS and Windows on amd64 and arm64. On musl systems such as Alpine, use the container image ghcr.io/jmrplens/gitlab-mcp-server instead.

License

MIT

Metadata

Release files for jmrplens-gitlab-mcp-server 3.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for jmrplens-gitlab-mcp-server 3.2.0
File
jmrplens_gitlab_mcp_server-3.2.0-py3-none-win_arm64.whl Python 3 none Windows ARM64 Details
jmrplens_gitlab_mcp_server-3.2.0-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
jmrplens_gitlab_mcp_server-3.2.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl Python 3 none Linux glibc 2.17+ x86-64 Details
jmrplens_gitlab_mcp_server-3.2.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64 Details
jmrplens_gitlab_mcp_server-3.2.0-py3-none-macosx_11_0_x86_64.whl Python 3 none macOS 11.0+ x86-64 Details
jmrplens_gitlab_mcp_server-3.2.0-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details

Total release size: 91.9 MB

Release files / jmrplens_gitlab_mcp_server-3.2.0-py3-none-win_arm64.whl

Download URL jmrplens_gitlab_mcp_server-3.2.0-py3-none-win_arm64.whl
Size 14.0 MB
Tags Python 3 Windows ARM64
SHA-256 checksum
How to use checksums
be8009769b4e6a47c11f3f8a89049340a1cbf3fd0258d00126b9fd1501297b84
BLAKE2b-256 checksum
How to use checksums
561f8c25fa50cd3b97786a7db80a598e678578bbb0fa7625339d37013904faba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 9, 2026.

Transparency log

Release files / jmrplens_gitlab_mcp_server-3.2.0-py3-none-win_amd64.whl

Download URL jmrplens_gitlab_mcp_server-3.2.0-py3-none-win_amd64.whl
Size 15.5 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
ddc1e8ca7922d1facb2c7a9fcaa64d29e164295325f14b7b2b7b0bd2c7fa9f2f
BLAKE2b-256 checksum
How to use checksums
68cb24cb9cc841640724e9e4abf25d5d8988da23a2d23fc7771dc39da8e7fef1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 9, 2026.

Transparency log

Release files / jmrplens_gitlab_mcp_server-3.2.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL jmrplens_gitlab_mcp_server-3.2.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 16.5 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
48c357051bb4cc3f0c7c33dc525830dc3152e463189f65e52a004a6ebe482047
BLAKE2b-256 checksum
How to use checksums
ea6a37567e1f485be38d608e4893c2c43838f34a6ddeef2c6c8f41704ad9f853
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 9, 2026.

Transparency log

Release files / jmrplens_gitlab_mcp_server-3.2.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL jmrplens_gitlab_mcp_server-3.2.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 15.2 MB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
4f557a2dce105e0bfc612d1ed403dd4dec39c81fb72067772a4ab9981215aaae
BLAKE2b-256 checksum
How to use checksums
251679b82551ffb589e158c0cee1be80497e71ccd184b5bc5ddaa64020b9cef5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 9, 2026.

Transparency log

Release files / jmrplens_gitlab_mcp_server-3.2.0-py3-none-macosx_11_0_x86_64.whl

Download URL jmrplens_gitlab_mcp_server-3.2.0-py3-none-macosx_11_0_x86_64.whl
Size 15.8 MB
Tags Python 3 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
e13a7766152a0dd09b4e536e78af12abfec35ce42d12884469aa680ce1cb874e
BLAKE2b-256 checksum
How to use checksums
f0b593f09d1166b4d9f55b9a60ec0f3d3d397bccef8aa70e21983c5aecd029f0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 9, 2026.

Transparency log

Release files / jmrplens_gitlab_mcp_server-3.2.0-py3-none-macosx_11_0_arm64.whl

Download URL jmrplens_gitlab_mcp_server-3.2.0-py3-none-macosx_11_0_arm64.whl
Size 14.9 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
c4601809ad7d85ee3386d97784d6f4e2db8102ebf79b608d250d38bc0bdf070d
BLAKE2b-256 checksum
How to use checksums
d8e069145cbab31655c1255066a0ce7f93fc3fb2b2ff26d06cadd34c0dad8690
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 9, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

3.2.0 This release

6 release files

3.1.0

6 release files

3.0.0

6 release files

2.7.5

6 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page