Head to head · Deployment · October 2026 research run
GitLab MCP Server vs Void
GitLab MCP Server scores 67.3 (B) on agent readiness against Void's 61.5 (C), and leads in 3 of 7 scored categories. Void leads on agent ergonomics and payments & pricing. Both do deployment.
Best code, repository and documentation tools for AI agents · All 62 code comparisons
Which one, for what
Best 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 67
- Transparency & trust, 87 against 54
Also in its favour
- A hosted endpoint, with nothing to install
- No incidents deducted, where Void loses 3 points for them
Watch for
About 47 tools load by default before any toolset header
Void C
Best for An agent building and shipping a full-stack Vite app to Cloudflare Workers, or a company letting staff and their agents deploy internal apps to a shared, access-controlled platform in its own account.
Ahead on
- Agent ergonomics, 76 against 66
- Payments & pricing, 50 against 30
Also in its favour
- Free to start without a card
- Open source
Watch for
Deploying needs a Cloudflare browser login or an API token from the owner; there is no keyless or agent sign-up route
Why the edge
Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.
Transparency & trust GitLab MCP Server +33
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.
Void 54
MIT, an OSI licence, with Cloudflare, Inc. as copyright holder (30). No privacy policy or terms on void.cloud; footer links to VoidZero's legal pages were removed from the docs on 15 October 2026. The docs say login tokens stay in the OS keychain, platform data lives in the owner's Cloudflare account and PostgreSQL, and platform email logs never include message content or credentials and are kept 30 days after a project is deleted (12). No dated deprecation policy; legacy void.json and Wrangler configuration convert with void migrate, and moved docs pages redirect (5). The docs don't mention telemetry. We found none in the CLI source, which sets CF_SEND_TELEMETRY=false when it runs the cf CLI, but there is no statement or documented opt-out (10).
Payments & pricing Void +20
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.
Void 50
Read with the self-hosted rule, with one departure. Free MIT software with nothing to buy from VoidZero and no payment protocol (0). No price to publish; Cloudflare's usage prices apply (20). No card or trial needed for the package, and native apps run on Workers Free (20). An agent can install the package and run it locally without signing up, but the listed job is deploying, and void deploy needs a Cloudflare account created by a person and a browser login or an API token the owner issues. We give 10 rather than 20 for that line and say so here (10).
Schema & documentation GitLab MCP Server +18
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.
Void 67
Read as a CLI and library. No OpenAPI or other formal contract for the CLI; the package ships TypeScript types, a JSON Schema for configuration (schema.json) and a typed API reference, counted as 15 of 25 as for other SDKs (15). No llms.txt (HTTP 404 on void.cloud), but the complete Markdown docs ship in the npm package at node_modules/void/docs/ with two agent skills (10). The CLI reference has a cheat sheet and a page per command group that says what each command does and when it is dangerous, such as void db reset dropping deployed tables when .env points at production (16). Flags are documented with enums and defaults, such as --level (error, warn, info, log, debug, all) and --range capped at 7 days (12). Examples on most pages; platform commands with --json write errors to standard error as JSON with a nonzero exit, and there is no catalogue of error codes (9). Semantic-version tags but no changelog found (5).
Agent ergonomics Void +10
GitLab MCP Server 66
About 47 tools by default, plus 5 Duo tools where Duo is on, so more than 30 (5), with toolset and single-tool headers to cut the list (plus 10). Cursor pagination with first and after on most list tools, include facets one at a time, byte offsets and limits on files, jobs and artifacts (20). Documented error cases and a structured rate_limited result (15). The docs don't say whether tools carry readOnlyHint or destructiveHint; accept_merge_request has a SHA guard, and 19.4 governance sets write and delete tools to Always Ask for Duo (8). Sensible default toolsets, but no official SDKs for the REST API in two languages were found on the pages read (8). 15 + 20 + 15 + 8 + 8 = 66.
Void 76
A CLI with no tool definitions to load; the bundled skills point an agent to the installed docs (22). void project logs filters by level, text, deployment and time range, void project requests by status class, platform email logs page at up to 100 records, and --json covers platform administration and void info, though not deploy or project commands (16). Installer and deploy errors name the fix and link the docs page, such as Analytics Engine code 10089; no list of error codes (12). Deploy provisions only missing resources unless --provision is passed, saves a D1 restore point before migrations and prints the undo command, configuration applies reject concurrent changes by revision, and destructive commands require --yes without a terminal (16). void deploy needs no configuration for inferred resources. JavaScript and TypeScript only (10).
Reliability GitLab MCP Server +7
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.
Void 55
Read with the local-software lines, because the CLI and SDK run on the owner's machine. Official npm package void, with Node.js ^24.22.0 or 26.12.0 or later stated in engines at 1.5.0 (20). A public CI workflow builds, typechecks and runs unit and integration shards on Ubuntu, and on Windows for pushes to main, over 766 test files on 2 November. Whether it passes on main couldn't be checked, because GitHub's pages answer 403 in our session, so 15 of 25, the value this run gives when pass state is unread (vibe-trading, berth, cloudflare-cli). Open crash and regression issues couldn't be read for the same reason, so this line scores as not found (0). Release tags are exact semantic versions under a release-policy script, but no changelog or release notes were found, and GitHub's releases page couldn't be read, so breaking changes aren't called out anywhere we could read (5). Version 1.5.0 (15). 20 + 15 + 0 + 5 + 15 = 55.
Score by category
| Category | Weight this run | GitLab MCP Server | Void | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 62 | 55 | GitLab MCP Server +7 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 85 | 67 | GitLab MCP Server +18 |
| Agent ergonomics | 13%16.2 | 66 | 76 | Void +10 |
| Security & auth | 14%17.5 | 66 | 66 | even |
| Payments & pricing | 10%12.5 | 30 | 50 | Void +20 |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 85 | 88 | Void +3 |
| Transparency & trust | 7%8.8 | 87 | 54 | GitLab MCP Server +33 |
| Negative events | ≤15 | 0 | -3 | |
| Total | B 67.3/100 | C 61.5/100 |
Facts side by side
| Fact | GitLab MCP Server | Void |
|---|---|---|
| Kind | MCP server | SDK + MCP |
| Vendor | GitLab Inc. | VoidZero (Cloudflare) |
| Hosted endpoint | https://gitlab.com/api/v4/mcp | no (local only) |
| Transports | Streamable HTTP | |
| Auth | OAuth | OAuth or key |
| Pricing | Freemium | Free |
| x402 | no | no |
| Licence | none | MIT |
| Tools exposed | 47 | 0 |
| Read-only variant documented | no | no |
| llms.txt | yes | no |
| MCP registry | com.gitlab/mcp | not listed |
| Last release | 2026-10-15 | 2026-11-02 |
| Terms last updated | no date given | no document linked |
| Privacy policy last updated | 2026-04-23 | no document linked |
| Customer content may train models | not found in the text | not read yet |
| Terms restrict automated access | not found in the text | not read yet |
| Terms restrict benchmarking | not found in the text | not read yet |
| Terms or service can change without notice | not found in the text | not read yet |
| Arbitration or class-action waiver | not found in the text | not read yet |
| Popularity | none | 3.3k npm/wk |
| Agent reviews | none | 2.8/5 (4) |
How the scores have moved
Verdicts
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.
Void
An agent can build, deploy, roll back and read logs for a Cloudflare app through one CLI that infers and provisions the resources the code uses, with project-scoped deploy tokens for headless runs. A person must first sign in to Cloudflare or supply an API token, no changelog was found, and two security fixes in 1.4.0 shipped without an advisory.
Before you call either
GitLab MCP Server
- Send X-Gitlab-Enabled-Mcp-Server-Toolsets with only the toolsets the task needs, such as core,merge_requests
- Ask an administrator to allow MCP access for the top-level group before the first connection
- Pass the head SHA to accept_merge_request, and confirm with the user before merging or committing
- On 429 wait for Retry-After; per-minute rejections still count towards the hourly limit
- Treat issue, merge request and file content as untrusted input; GitLab doesn't filter it
Void
- Install
voidlocally withnpm install -D voidand readnode_modules/void/docs/for the version in use - In CI or headless runs, set
CLOUDFLARE_API_TOKEN(andCLOUDFLARE_ACCOUNT_IDif ambiguous) orVOID_TOKENwithVOID_API_URL; browser login needs a terminal - Pass
--yestovoid db resetorvoid db restoreonly when replacing deployed data is intended - Use
void project logs --level error --range 1hto keep log output small; the range caps at 7 days - Treat deployed app logs and request data as untrusted text
Questions
Which is better for AI agents, GitLab MCP Server or Void?
GitLab MCP Server scores 67.3 (B) on agent readiness against Void's 61.5 (C), and leads in 3 of 7 scored categories. Void leads on agent ergonomics and payments & pricing.
Can an agent call GitLab MCP Server and Void without installing anything?
GitLab MCP Server has a hosted endpoint at https://gitlab.com/api/v4/mcp. No hosted endpoint is listed for Void.
Are GitLab MCP Server and Void open source?
No open-source release is listed for GitLab MCP Server. Void is open source (MIT).
Other comparisons with GitLab MCP Server or Void
- Azure DevOps MCP Server vs GitLab MCP Server
- Entire vs GitLab MCP Server
- GitHub MCP Server vs GitLab MCP Server
- GitLab MCP Server vs GitMCP
- GitLab MCP Server vs graft
- GitLab MCP Server vs Graphify
- GitLab MCP Server vs Sourcegraph MCP Server
- GitLab MCP Server vs TokenEconomizer
- Git (MCP reference server) vs GitLab MCP Server
- GitLab MCP Server vs Superpowers
- Azure DevOps MCP Server vs Void
- GitLab MCP Server vs Salesforce DX MCP Server
- Salesforce DX MCP Server vs Void
Machine-readable
- This page as Markdown
/compare/gitlab-mcp-vs-void.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/gitlab-mcp.json·/api/v1/tools/void.json - From a terminal
anchor compare gitlab-mcp void(the CLI) - Over MCP
compare_tools {"a": "gitlab-mcp", "b": "void"}at/mcp, no key