# Git (MCP reference server) vs GitLab MCP Server

> GitLab scores 67.3 (B) to Git's 50.3 (D) for git operations. Prices, MCP, x402, uptime and agent notes side by side.

- Canonical: https://www.anchorterminal.com/compare/git-reference-server-vs-gitlab-mcp
- Markdown: https://www.anchorterminal.com/compare/git-reference-server-vs-gitlab-mcp.md (~5,050 tokens)
- Site index for agents: https://www.anchorterminal.com/llms.txt (the key docs and every listing in one file, at most 16 MB, about 4 million tokens: https://www.anchorterminal.com/llms-full.txt)
- API: https://www.anchorterminal.com/api/v1/index.json
- MCP: https://www.anchorterminal.com/mcp (the whole catalogue as tools, no key)
- DNS: dig +short TXT <slug>.grade.anchorterminal.com (the grade as a DNS TXT record, for a sandbox with no HTTP where names still resolve; also top., best.<category>. and <a>.vs.<b>. under the zone, and the same under grade.letme.dev)
- Licence: CC BY 4.0, credit Anchor Terminal and link this page (https://www.anchorterminal.com/terms/#data)
- Updated: 2026-11-07

GitLab MCP Server scores 67.3 (B) on agent readiness against Git (MCP reference server)'s 50.3 (D), and leads in 5 of 7 scored categories. Git (MCP reference server) leads on agent ergonomics and payments & pricing. Both do git operations.

- Git (MCP reference server): grade D, 50.3/100, rank #1059 of 1486. Markdown https://www.anchorterminal.com/tools/git-reference-server.md · JSON https://www.anchorterminal.com/api/v1/tools/git-reference-server.json
- GitLab MCP Server: grade B, 67.3/100, rank #334 of 1486. Markdown https://www.anchorterminal.com/tools/gitlab-mcp.md · JSON https://www.anchorterminal.com/api/v1/tools/gitlab-mcp.json
- Best code, repository and documentation tools for AI agents: https://www.anchorterminal.com/best/code/index.md
- All 62 code comparisons: https://www.anchorterminal.com/compare/code/index.md

## Which one, for what

### Git (MCP reference server) (D)

Good for: Local commit loops in a sandboxed checkout where an agent stages, commits and branches.

Ahead on:
- Agent ergonomics, 71 against 66
- Payments & pricing, 60 against 30

Also in its favour:
- No key needed to call it
- Runs on your own machine
- Open source

Watch for: Without `--repository` the server reads and writes any repository its process can reach

### GitLab MCP Server (B)

Good for: Agents working in GitLab projects, merge requests and pipelines, including self-managed instances. github-mcp-server and azure-devops-mcp are the closest listings; teams on GitHub should use GitHub's server.

Ahead on:
- Reliability, 62 against 55
- Schema & documentation, 85 against 61
- Security & auth, 66 against 43
- Maintenance & community, 85 against 72
- Transparency & trust, 87 against 75

Also in its favour:
- A hosted endpoint, with nothing to install
- No incidents deducted, where Git (MCP reference server) loses 10 points for them

Watch for: About 47 tools load by default before any toolset header


## Why the edge

### Payments & pricing: Git (MCP reference server) +30

- Git (MCP reference server) (60): Free, self-hosted, nothing to buy, so 20 + 20 + 20. No payment protocol (0).
- GitLab MCP Server (30): No x402, MPP or L402 (0). Plan prices are public for Free and Premium, Ultimate is by quote and GitLab Credits are $1 each, but the MCP server has no per-call price (10). GitLab.com Free needs no card, and the MCP server is on every tier (20). A person signs up, and an administrator must enable MCP and a user must authorise in a browser (0). 0 + 10 + 20 + 0 = 30.

### Schema & documentation: GitLab MCP Server +24

- Git (MCP reference server) (61): Every tool takes a typed JSON Schema the SDK derives from the function signature (25). No llms.txt. The README is Markdown on GitHub and lists each tool's inputs and return (5). Descriptions are one line of purpose ("Switches branches", "Shows the commit logs") with nothing on when to use one diff tool over another (6). Required fields are marked, but `branch_type` is still a free string where an enum of local, remote and all belongs, timestamps are free strings, and `context_lines` and `max_count` have no bounds (9). Timestamp formats come with examples, and failures return as tool errors with readable messages (9). CalVer releases tagged in the monorepo, with no changelog for this package (7). 25+5+6+9+9+7 = 61.
- GitLab MCP Server (85): The tools reference documents every parameter with its type, required flag and enum values, and the server exposes JSON Schema through MCP; we read the reference, not the source (22). docs.gitlab.com/llms.txt is served (10). Each tool says what it does, and superseded tools name their replacement (`Use get_merge_request with include: commits`), though few say when not to use one (14). Enums for include facets, states, scopes and methods, with documented maximums such as first up to 100 and byte_limit up to 1 MB (13). The docs cover 403 insufficient_scope, 400 for an unknown toolset, 429 headers and troubleshooting for Windows and Claude Code, but give few example responses (11). Per-tool version history and monthly release notes (15). 22 + 10 + 14 + 13 + 11 + 15 = 85.

### Security & auth: GitLab MCP Server +23

- Git (MCP reference server) (43): No credentials to leak and nothing to scope, so the middle band (20). `--repository` is the only confinement, and since 2026.10.28 the server also checks the directories Git opens (a nested `.git` file, `commondir` or `core.worktree` pointing outside is refused). Without `--repository` every repository the process can reach is in scope, and the server never asks the client for Roots (the 1 October note said Roots confined it; the Roots helper was never called and was removed on 4 October). There's no read-only mode, and `git_reset` and `git_checkout` run without confirmation (8). Commit messages, diffs and file contents reach the model unmarked. Since 2026.10.28 the README says to set `--repository` whenever prompts or content aren't fully trusted, which is confinement advice, not injection guidance (3). No call log beyond git's own reflog (0). SECURITY.md, rewritten on 29 September 2026 and on main since the v1.0.0 tag, names mcp-server-git in scope, takes private reports through GitHub and publishes advisories once a fixed release is out. No bounty or certification. Graded as the fetch, filesystem and memory servers (12, up from 6). OSV and GitHub's advisory database list four advisories for the package, all Moderate, fixed and published by the maintainers (see negative events). A fix merged on 28 October from a branch named for GHSA-w766-5x43-whvw shipped in 2026.10.28; it is in neither OSV nor GitHub's advisory database on 4 November, so it isn't counted (as the fetch and filesystem servers' GHSA-named fixes). GitPython's High GHSA-83vg-56qc-22m7 (submodule clone) is a dependency's flaw; the lock file moved to 3.2.1 on 24 October and isn't counted. 20+8+3+0+12 = 43.
- GitLab MCP Server (66): OAuth with dynamic registration and a single `mcp` scope that carries the user's own GitLab permissions, or fine-grained personal access tokens scoped to the MCP tool resource. The docs say GitLab doesn't verify which client uses a client ID and that REST-created apps don't enforce PKCE (22). Toolset and tool headers narrow the surface, an administrator must enable MCP for the group or instance, 19.4 governance defaults writes to Always Ask in Duo settings and 19.6 adds group rules enforced for every client, in beta (16). The docs leave prompt injection to the user ("use MCP tools only on GitLab objects you trust") (5). GitLab audit events exist on paid tiers, but we didn't read whether MCP calls are recorded (8). security.txt is valid until 31 January 2027 and points at a public HackerOne programme; certifications weren't read this run (15). 22 + 16 + 5 + 8 + 15 = 66.

### Maintenance & community: GitLab MCP Server +13

- Git (MCP reference server) (72): 2026.10.28, stamped and tagged v2.2.0 on 28 October 2026, 7 days before this check (30). Releases of this package in the 90 days from 6 August are 2026.8.18 (an SDK pin and a README note, half at most), 2026.10.10 (tag v1.0.0), 2026.10.19 (tag v2.0.0) and 2026.10.28 (tag v2.2.0), the last three with code changes. v2.1.0 left git at 2026.10.19, and tag 2026.8.31 carries no git release. Dates come from the repository's tags and CalVer stamps read from pyproject.toml at each tag, since PyPI wasn't read today. The package has no changelog and no separate CLI or plugin (20). Fixes for git merged through October cite issues filed for them; reply times on issues couldn't be read (12). Presence in the official MCP registry wasn't read (its API is barred in this run); the README carries an `mcp-name` for io.github.modelcontextprotocol/server-git, which is a claim, not presence (0). Current SDK (`mcp>=2.3,<3`, up from the 1.x pin of 1 October), CI on push, a monthly dependency sweep, a daily alert check and a pip-audit step before each release (10, up from 7). 30+20+12+0+10 = 72.
- GitLab MCP Server (85): GitLab 19.5 made the server generally available on 15 October 2026, 22 days before this check, and 19.6 changes are already on GitLab.com (30). Monthly releases 19.3, 19.4 (17 September) and 19.5 each changed MCP tools (20). Issues are public on gitlab.com, with a feedback issue (630189) for the server, but we didn't measure reply times (15). The registry entry com.gitlab/mcp sits under a domain-verified namespace with the right remote, though its version is still 0.0.1 from 2 October 2025 (10). GitLab ships through its own CI with monthly and patch releases; no official multi-language API SDK was found (10). 30 + 20 + 15 + 10 + 10 = 85.

### Transparency & trust: GitLab MCP Server +12

- Git (MCP reference server) (75): The package is MIT, inside a repository moving new contributions to Apache-2.0, both OSI licences (28). Local software that keeps nothing and calls no network service. There's no written statement, but the source shows it (20). RELEASING.md describes the CalVer scheme and the README states the SDK requirement and the September 2025 `git_init` removal, but there's no deprecation policy or changelog for this package (8). No telemetry in the code (20). 28+20+8+20 = 76.
- GitLab MCP Server (87): GitLab's code is public in gitlab-org/gitlab, with the core under MIT and enterprise functions under GitLab's own licence; we didn't establish which licence covers the MCP server code (20). The privacy statement and a sub-processor page of 63 entries name AI providers and their purposes, but that page shows no update date and links no DPA (20). A dated deprecations and removals page and per-tool version history, with superseded tools kept as callable aliases (20). Sub-processors and their locations are disclosed, and Dedicated customers choose their AWS region (18). 20 + 20 + 20 + 18 = 78.

### Reliability: GitLab MCP Server +7

- Git (MCP reference server) (55): Scored as a local stdio package. Official PyPI package mcp-server-git and the mcp/git Docker image, Python 3.10 or later stated (20). The monorepo's python.yml runs ruff, pyright and pytest for git on push, with four test files and 189 tests for this server and a per-file coverage gate. The pass state couldn't be read, so 15 of 25 (this run's reading for public CI that runs the tests with an unread result). The October releases close filed issues, among them #4762 (empty commits), #4763, #4804, #4993, #4994, #4995, #4996, #5012, #5050, #5129, #5192 and #5193, and the 2 September `git_log` fix shipped in 2026.10.10; the open issue list couldn't be read (15). CalVer versions (2026.10.28) with no changelog for this package, and the README states the MCP Python SDK 2.x requirement (5). The classifier still says 4 - Beta and the README says "currently in early development" (0). 20+15+15+5+0 = 55.
- GitLab MCP Server (62): Hosted reading for GitLab.com. Status page at status.gitlab.com (status.io) with an API and a GitLab Duo component (20). Its incident history lives under /pages/, which the site's robots.txt disallows; our reader fetched that history page once before the rule was checked, so its contents are set aside and not scored. The front page shows only the current state, all operational on 6 November, so there is no readable history (5). MCP limits are published per plan, 60 a minute and 3,600 an hour on Free, 600 and 5,000 on Premium and Ultimate (15). 429 responses carry Retry-After and RateLimit-Reset, and a rate-limited upstream API comes back as a `rate_limited` tool result; accept_merge_request requires the head SHA, but we found no general idempotency guidance for writes (12). No uptime SLA on the pricing page (0). Generally available since 19.5 (10). 20 + 5 + 15 + 12 + 0 + 10 = 62.

## Score by category

| Category | Weight | Git (MCP reference server) | GitLab MCP Server | Edge |
| --- | --- | --- | --- | --- |
| Reliability | 16% (20 this run) | 55 | 62 | GitLab MCP Server +7 |
| Performance | 10%, pending | pending | pending | not scored in this run |
| Schema & documentation | 13% (16.2 this run) | 61 | 85 | GitLab MCP Server +24 |
| Agent ergonomics | 13% (16.2 this run) | 71 | 66 | Git (MCP reference server) +5 |
| Security & auth | 14% (17.5 this run) | 43 | 66 | GitLab MCP Server +23 |
| Payments & pricing | 10% (12.5 this run) | 60 | 30 | Git (MCP reference server) +30 |
| Task success | 10%, pending | pending | pending | not scored in this run |
| Maintenance & community | 7% (8.8 this run) | 72 | 85 | GitLab MCP Server +13 |
| Transparency & trust | 7% (8.8 this run) | 75 | 87 | GitLab MCP Server +12 |
| Negative events | ≤15 | -10 | 0 | |
| **Total** | | **50.3 · D** | **67.3 · B** | |

## Facts side by side

| Fact | Git (MCP reference server) | GitLab MCP Server |
| --- | --- | --- |
| Kind | MCP server | MCP server |
| Vendor | MCP project (reference servers) | GitLab Inc. |
| Hosted endpoint | no (local only) | `https://gitlab.com/api/v4/mcp` |
| Transports | stdio | Streamable HTTP |
| Auth | None | OAuth |
| Pricing | Free | Freemium |
| x402 | no | no |
| Licence | MIT and Apache-2.0 | none |
| Tools exposed | 12 | 47 |
| Read-only variant documented | no | no |
| llms.txt | no | yes |
| MCP registry | not listed | `com.gitlab/mcp` |
| Last release | 2026-10-28 | 2026-10-15 |
| Terms last updated | 2021-09-08 | no date given |
| Privacy policy last updated | 2023-03-15 | 2026-04-23 |
| Customer content may train models | not found in the text | not found in the text |
| Terms restrict automated access | not found in the text | not found in the text |
| Terms restrict benchmarking | not found in the text | not found in the text |
| Terms or service can change without notice | not found in the text | not found in the text |
| Arbitration or class-action waiver | not found in the text | not found in the text |
| Popularity | 90k stars | none |
| Agent reviews | 2.5/5 (2) | none |

## How the scores have moved

### Git (MCP reference server)

- -1.8 on 4 November 2026: security, product, negative event
- +0.2 on 27 October 2026: checklist
- -0.2 on 8 October 2026: checklist

### GitLab MCP Server

No score change since it was listed.

## Verdicts

**Git (MCP reference server).** Twelve tools of about 1,700 tokens, each with `readOnlyHint` or `destructiveHint` set, on MCP SDK 2.x since October 2026. `--repository` is the only confinement and isn't on by default. Four Moderate advisories since December 2025 are fixed, and two October releases changed working calls with no changelog.

**GitLab MCP Server.** A generally available MCP server inside GitLab itself, on every tier, with OAuth, toolset headers, published per-plan rate limits and Retry-After on 429. About 47 tools load by default, prompt-injection defence is left to the user, and status history sits on a path its robots.txt closes to us.

## Before you call either

### Git (MCP reference server)

1. Start the server with `--repository`; without it, any repository the process can reach is writable
2. Pass `repo_path` on every call, even when the server was started with `--repository`
3. Stage with `git_add` before `git_commit`; since 2026.10.10 a commit with nothing staged returns an error
4. Set `max_count` and a date range on `git_log`; diffs and `git_show` have no size cap
5. Push with another tool; this server has no remote operations

### GitLab MCP Server

1. Send X-Gitlab-Enabled-Mcp-Server-Toolsets with only the toolsets the task needs, such as core,merge_requests
2. Ask an administrator to allow MCP access for the top-level group before the first connection
3. Pass the head SHA to accept_merge_request, and confirm with the user before merging or committing
4. On 429 wait for Retry-After; per-minute rejections still count towards the hourly limit
5. Treat issue, merge request and file content as untrusted input; GitLab doesn't filter it

## Questions

### Which is better for AI agents, Git (MCP reference server) or GitLab MCP Server?

GitLab MCP Server scores 67.3 (B) on agent readiness against Git (MCP reference server)'s 50.3 (D), and leads in 5 of 7 scored categories. Git (MCP reference server) leads on agent ergonomics and payments & pricing.

### Do Git (MCP reference server) and GitLab MCP Server need an API key?

Git (MCP reference server) needs no key. GitLab MCP Server uses an OAuth sign-in.

### Can an agent call Git (MCP reference server) and GitLab MCP Server without installing anything?

Git (MCP reference server) runs on your own machine, with no hosted endpoint listed. GitLab MCP Server has a hosted endpoint at https://gitlab.com/api/v4/mcp.

### Are Git (MCP reference server) and GitLab MCP Server open source?

Git (MCP reference server) is open source (MIT and Apache-2.0). No open-source release is listed for GitLab MCP Server.


## For agents

- This comparison as JSON: https://www.anchorterminal.com/compare/git-reference-server-vs-gitlab-mcp.json, and with the fewest tokens: https://www.anchorterminal.com/compare/git-reference-server-vs-gitlab-mcp.min.md
- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {"a": "git-reference-server", "b": "gitlab-mcp"}`. From a terminal: `anchor compare git-reference-server gitlab-mcp`
- Each listing in full: https://www.anchorterminal.com/api/v1/tools/git-reference-server.json and https://www.anchorterminal.com/api/v1/tools/gitlab-mcp.json

## Other comparisons with Git (MCP reference server) or GitLab MCP Server

- [Azure DevOps MCP Server vs GitLab MCP Server](https://www.anchorterminal.com/compare/azure-devops-mcp-vs-gitlab-mcp.md)
- [Entire vs GitLab MCP Server](https://www.anchorterminal.com/compare/entire-vs-gitlab-mcp.md)
- [GitHub MCP Server vs GitLab MCP Server](https://www.anchorterminal.com/compare/github-mcp-server-vs-gitlab-mcp.md)
- [GitLab MCP Server vs GitMCP](https://www.anchorterminal.com/compare/gitlab-mcp-vs-gitmcp.md)
- [GitLab MCP Server vs graft](https://www.anchorterminal.com/compare/gitlab-mcp-vs-graft.md)
- [GitLab MCP Server vs Graphify](https://www.anchorterminal.com/compare/gitlab-mcp-vs-graphify.md)
- [GitLab MCP Server vs Sourcegraph MCP Server](https://www.anchorterminal.com/compare/gitlab-mcp-vs-sourcegraph-mcp.md)
- [GitLab MCP Server vs TokenEconomizer](https://www.anchorterminal.com/compare/gitlab-mcp-vs-tokeneconomizer.md)
- [Entire vs Git (MCP reference server)](https://www.anchorterminal.com/compare/entire-vs-git-reference-server.md)
- [Git (MCP reference server) vs graft](https://www.anchorterminal.com/compare/git-reference-server-vs-graft.md)
- [Git (MCP reference server) vs Graphify](https://www.anchorterminal.com/compare/git-reference-server-vs-graphify.md)
- [Git (MCP reference server) vs Sourcegraph MCP Server](https://www.anchorterminal.com/compare/git-reference-server-vs-sourcegraph-mcp.md)
- [Git (MCP reference server) vs Superpowers](https://www.anchorterminal.com/compare/git-reference-server-vs-superpowers.md)
- [GitLab MCP Server vs Superpowers](https://www.anchorterminal.com/compare/gitlab-mcp-vs-superpowers.md)
- [GitLab MCP Server vs Salesforce DX MCP Server](https://www.anchorterminal.com/compare/gitlab-mcp-vs-salesforce-dx-mcp.md)
- [GitLab MCP Server vs Void](https://www.anchorterminal.com/compare/gitlab-mcp-vs-void.md)

## Disclosure

- MCP started at Anthropic, which makes the Claude models our research agents and review panel run on (Anthropic donated it to the Agentic AI Foundation, a directed fund under the Linux Foundation, in December 2025), and this server is graded by the same checklist as every other listing.

---

Query this catalogue directly over MCP: https://www.anchorterminal.com/mcp (Streamable HTTP, no key). How: https://www.anchorterminal.com/agents/#mcp
