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.3.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.3.0
File
jmrplens_gitlab_mcp_server-3.3.0-py3-none-win_arm64.whl Python 3 none Windows ARM64 Details
jmrplens_gitlab_mcp_server-3.3.0-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
jmrplens_gitlab_mcp_server-3.3.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.3.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64 Details
jmrplens_gitlab_mcp_server-3.3.0-py3-none-macosx_11_0_x86_64.whl Python 3 none macOS 11.0+ x86-64 Details
jmrplens_gitlab_mcp_server-3.3.0-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details

Total release size: 93.5 MB

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

Download URL jmrplens_gitlab_mcp_server-3.3.0-py3-none-win_arm64.whl
Size 14.2 MB
Tags Python 3 Windows ARM64
SHA-256 checksum
How to use checksums
e3cc8bccc5156dad947ebf095cdcb79bf4d3f23cd013cd53d14124b710e47444
BLAKE2b-256 checksum
How to use checksums
49c5fb5e35ffc204c516972ef97a32dff887eac06b12dbf197eb9ba67f24c7e7
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 20, 2026.

Transparency log

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

Download URL jmrplens_gitlab_mcp_server-3.3.0-py3-none-win_amd64.whl
Size 15.8 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
00ddd04da4bb6f633d01aab9173e2187407501ce62fc79ba1e776f11a98d401b
BLAKE2b-256 checksum
How to use checksums
da902b11ff162fa867a610ae44fe5c716dab1e9ec2042b1a1aa735b183990107
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 20, 2026.

Transparency log

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

Download URL jmrplens_gitlab_mcp_server-3.3.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 16.8 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
c35f1a49f90f78b81f3c4ba19d9dc186c05d2889b20232d9d38735a5e9be2abf
BLAKE2b-256 checksum
How to use checksums
12a3300dd7fe2f22f5134e5305359d246da3cbfa2bfdf1dbb0a69a02d5dedc29
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 20, 2026.

Transparency log

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

Download URL jmrplens_gitlab_mcp_server-3.3.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 15.5 MB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
2f82b9093609709bb6666656237fc66f8b47a88b7fc1b326bce5bbb030372c61
BLAKE2b-256 checksum
How to use checksums
95b9f76338b43555c4b22b85544531cd84a4f22f53db92a2944be0bee8504969
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 20, 2026.

Transparency log

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

Download URL jmrplens_gitlab_mcp_server-3.3.0-py3-none-macosx_11_0_x86_64.whl
Size 16.1 MB
Tags Python 3 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
5811675228efe64b780f74f929f70d1711c8d62a9d1027a4d36b6f854d89c19b
BLAKE2b-256 checksum
How to use checksums
53f1bbfed434da15e6e2cbebff9dd06132406d58fefa51783235105271e054f7
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 20, 2026.

Transparency log

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

Download URL jmrplens_gitlab_mcp_server-3.3.0-py3-none-macosx_11_0_arm64.whl
Size 15.2 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
4420ba87d2db7805b58620af52e61549ddb0e2c1857e4175e026300a489dcc57
BLAKE2b-256 checksum
How to use checksums
15f04770ead7a16287820d96f65c1c756dd06d15141e3d89e40b60e470b9de0e
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 20, 2026.

Transparency log

Security for jmrplens-gitlab-mcp-server 3.3.0

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.

Full provenance

All 6 files in this release have been uploaded with provenance metadata.

Select from 6 files

Attestation for jmrplens_gitlab_mcp_server-3.3.0-py3-none-win_arm64.whl

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 20, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

3.3.0 This release

6 release files Full provenance

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