Head to head · Code repositories · October 2026 research run
GitMCP vs Graphify
Graphify scores 68.8 (B) on agent readiness against GitMCP's 40.2 (E), and leads in 6 of 7 scored categories. Both do code repositories.
Best code, repository and documentation tools for AI agents · All 62 code comparisons
Which one, for what
GitMCP E
Best for Quick, keyless library docs for public GitHub projects in a coding agent.
Also in its favour
- A hosted endpoint, with nothing to install
Watch for
No commit, release or maintainer reply on the repository since 8 May 2026
Graphify B
Best for A person or team who wants a coding agent to query a structural map of a repository, with docs and papers folded in, before grepping.
Ahead on
- Reliability, 58 against 15
- Schema & documentation, 77 against 56
- Agent ergonomics, 77 against 58
- Security & auth, 66 against 42
- Maintenance & community, 80 against 8
- Transparency & trust, 81 against 36
Also in its favour
- Runs on your own machine
- Free to start without a card
Watch for
Headless extraction sends docs to whichever cloud provider's key is set, Gemini first and Kimi in China second, unless GRAPHIFY_BACKEND is set
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.
Maintenance & community Graphify +72
GitMCP 8
The last commit on main is 8 May 2026, 182 days before this check, and there are no tags or releases (0). Nothing in the last 90 days (0). Since May, outside issues and pull requests (#244 to #271, among them the security report #249 and fixes #256, #267 and #250) have gone without a maintainer reply or merge (3). Not found in the official MCP registry under any namespace (0). A run-tests workflow with vitest and a Playwright end-to-end workflow exist on push and pull request (5). 0 + 0 + 3 + 0 + 5 = 8.
Graphify 80
0.9.100 was tagged and dated in CHANGELOG.md on 1 November 2026, the day of this check (30). PyPI's pages didn't resolve from the shell on 1 November, so release dates come from the tags and the changelog. 68 dated releases in the 90 days to 1 November, 0.9.33 (5 August) to 0.9.100 (20). The 0.9.97 to 0.9.100 entries credit community pull requests by name, with issue and pull request numbers up to #4933, and the default branch had commits on every day from 25 October to 1 November. Issue threads and reply times weren't read, a judgement call (18 of 25). The official MCP registry still holds only io.github.Graphify-Labs/graphify, Graphify Cloud's hosted server at api.graphify.com/mcp; the local graphify-mcp isn't listed. Published on PyPI (5 of 15). A frozen uv.lock in CI on four Python versions, dependency floors raised for named CVEs (Pillow and pypdf in 0.9.96, anyio in the mcp extra in 0.9.97), and trusted publishing. No Dependabot configuration, and the bandit and pip-audit jobs still carry continue-on-error (7 of 10). 30+20+18+5+7 = 80. The 26 October check published 81 on the same lines, which add to 80, so the score is corrected to the sum.
Transparency & trust Graphify +45
GitMCP 36
Apache-2.0, with the whole service in the public repository (30). The README says the service stores no personal data or queries and keeps no repository content permanently, but there is no privacy policy or terms page (8). No deprecation policy or dated notices; SSE was removed on 8 May 2026 while the README still shows an SSE config for VS Code (0). The hosting stack (Cloudflare Workers, Workers AI, Vectorize, an Analytics Engine dataset) is visible in wrangler.jsonc but no processor is named for users, and invocation logs were turned off on 8 May (5). 30 + 8 + 0 + 5 = 43.
Graphify 81
The editorial half. Apache 2.0, with the MIT portion before 0.9.25 kept in LICENSE-MIT (30). The README's privacy section says what stays local, which env vars send docs to which provider, that Kimi routes to China and how to turn backends off, and the docs agree. The README still says every query is logged by default while the code and configuration docs say logging is off by default, and graphify.com's security page says the core makes no network calls of its own, which the claude CLI fallback for community names stretches (20 of 30). The changelog dates breaking changes and removals, SECURITY.md supports the latest 0.9.x only, and graph.json carries a schema version. No deprecation policy or notice period (8 of 20). No telemetry, stated in the README and on the security page, and none found in the source (20).
Reliability Graphify +43
GitMCP 15
Scored as a hosted MCP server. No status page found (0) and so no readable incident history (5). The maintainer confirmed on issue #245 that gitmcp.io was throttled by Cloudflare for a few hours in May 2026, outside the 90-day window. No rate limits are documented (0) and nothing on 429 or retries (0). No SLA (0). The service is live with no beta or preview label (10). 0 + 5 + 0 + 0 + 0 + 10 = 15.
Graphify 58
Read with the local-software lines, since the owner runs it. graphifyy installs from PyPI with uv or pipx, with requires-python >=3.10 stated (20). The CI workflow runs pytest on Python 3.10, 3.12, 3.13 and 3.14, an end-to-end graphify install, the Pi guard tests and generated-skill checks on every push and pull request to v8, over 458 test files (workflow unchanged at 0.9.100). Whether the latest runs pass couldn't be read, because GitHub's web pages weren't reachable (15 of 25). Open issues weren't read. The changelog fixes many extraction regressions each release, each credited to a reporter and a pull request, which reads as handled rather than left open (15 of 25). CHANGELOG.md marks breaking changes, such as full-path node IDs in 0.9.0 and Java inherits edges in 0.8.18, and announces AST cache bumps, but on 0.x they ship in ordinary releases with no Breaking section (8 of 15). Version 0.9.100 of 1 November 2026 (0).
Security & auth Graphify +24
GitMCP 42
No credentials at all, so nothing to leak or scope (20). Every tool is a read of public content (15). Repository docs, code and fetched URLs reach the model unmarked, and fetch_generic_url_content fetches any absolute URL a document mentions, with no prompt-injection guidance in the README (2). No per-call visibility for the caller (0). SECURITY.md routes reports to a Google Form, but the server-side request forgery report in issue #249 (12 June 2026) and its proposed fix #256 have had no maintainer reply in almost five months. No certifications or bounty (5). 20 + 15 + 2 + 0 + 5 = 42.
Graphify 66
Local-software reading, as for vibe-trading. 30 for what leaves the machine by default, 20 for approvals and least privilege, 15 for prompt-injection posture, 15 for audit and 20 for the security programme. Code parsing is local and no telemetry code was found. The HTTP server binds 127.0.0.1 with a Host allow-list and a constant-time key check, but only warns when bound to 0.0.0.0 without a key, and turns DNS-rebinding protection off for a wildcard bind. Headless extract sends docs to whichever provider's key is in the environment, with a printed notice, and community naming falls back to claude -p when no key is set (21). No MCP tool writes, and uninstall --purge refuses to delete the project or home folder. The Claude hooks add a reminder before every Bash, Grep, Read and Glob call once a graph exists (since 0.9.96 worded as facts rather than a MANDATORY command, though the Cursor rule still says MANDATORY), the default install edits the user-wide ~/.claude/CLAUDE.md, and git hooks rebuild on every commit and checkout. Settings files get a .graphify-bak copy (14). The semantic pass wraps each file in a hash-stamped untrusted_source block, defangs chat-template tokens, sanitises labels in MCP output and redacts credential-shaped text, and SECURITY.md says this lowers injection rather than stopping it (11). An opt-in query log, a stderr line naming the backend and the variable that chose it, and a local cost.json (8). SECURITY.md with private reporting and a threat table, a valid security.txt, one published advisory with a fix, PyPI trusted publishing, and bandit and pip-audit in CI set not to fail the build, and Security lines in the changelog for dependency floors (0.9.96, 0.9.97) and wider credential redaction (0.9.97). The SOC 2 engagement covers the hosted product only and has no report yet. No bug bounty (12).
Schema & documentation Graphify +21
GitMCP 56
Every tool registers a zod input schema, so inputs are typed JSON Schema (25). There is no llms.txt for GitMCP itself; the README on GitHub is the only Markdown documentation (5). Descriptions are generated per repository and say what each tool reads and when it helps ("Useful for general questions. Always call this tool first if asked about owner/repo"), but not when to avoid one (12). Inputs are a query string and an optional page number, with no enums or constraints beyond types (9). The README has three worked examples and no documented error responses (5). No versioning, tags, releases or changelog (0). 25 + 5 + 12 + 9 + 5 + 0 = 56.
Graphify 77
MCP reading. All ten tools carry typed JSON Schema inputs in serve.py, though get_node and get_neighbors mark no field required and no tool has an output schema (20 of 25). llms.txt at docs.graphify.com, a Markdown copy of every page, llms-full.txt, and an MCP tool reference generated from serve.py (10). Descriptions say what each tool does in one sentence; the three PR tools also say when to call them, the graph tools don't say when not to (10 of 20). Types, defaults and a bfs/dfs enum, but depth is limited to 1 to 6 in text and code rather than in the schema, and relation_filter is a free string (10 of 15). Worked examples in the README and docs, documented exit codes 0, 3 and 4, refusals that list candidate nodes, and a troubleshooting page (12 of 15). A dated CHANGELOG.md with 243 dated entries on 1 November 2026, a docs changelog, and schema_version in graph.json (15).
Agent ergonomics Graphify +19
GitMCP 58
Four tools per repository endpoint and five on gitmcp.io/docs, each short (25). Code search pages 30 results with a page number, and documentation search returns matched chunks instead of the whole file, but there is no size control on the fetch tool (10). Errors come back as tool text with no documented codes (5). Every tool is a read and the source sets readOnlyHint, but issue #266 reports the annotations are passed in a position the MCP SDK ignores, and the fix #267 is unmerged (8). No parameters to set up and nothing to configure; there are no SDKs, which a keyless MCP endpoint doesn't need (10). 25 + 10 + 5 + 8 + 10 = 58.
Graphify 77
MCP reading. Ten compact tools, about 7,900 characters of tool-definition source in serve.py (25). token_budget on query_graph, get_neighbors and get_community (default 2,000), depth capped at 6, max_hops, top_n, relation_filter and context_filter, and --budget on the CLI. No cursor paging (17 of 20). Exit codes for answer, ambiguous name and no match, ambiguous names refused with candidates instead of guessed, and a clear message when graph.json is missing or corrupt. MCP errors come back as text (15 of 20). Every tool reads, so calls are safe to repeat, but none carries readOnlyHint or destructiveHint (10 of 20). graphify install and /graphify . build a first graph, graph_stats is the documented first call, and code needs no key. Python only, though the CLI works from any language (10 of 15).
Score by category
| Category | Weight this run | GitMCP | Graphify | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 15 | 58 | Graphify +43 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 56 | 77 | Graphify +21 |
| Agent ergonomics | 13%16.2 | 58 | 77 | Graphify +19 |
| Security & auth | 14%17.5 | 42 | 66 | Graphify +24 |
| Payments & pricing | 10%12.5 | 60 | 60 | even |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 8 | 80 | Graphify +72 |
| Transparency & trust | 7%8.8 | 36 | 81 | Graphify +45 |
| Negative events | ≤15 | 0 | -1 | |
| Total | E 40.2/100 | B 68.8/100 |
Facts side by side
| Fact | GitMCP | Graphify |
|---|---|---|
| Kind | MCP server | MCP server |
| Vendor | Ido Salomon (GitMCP open-source project) | Graphify Labs |
| Hosted endpoint | https://gitmcp.io/{owner}/{repo} | no (local only) |
| Transports | Streamable HTTP | stdio, Streamable HTTP |
| Auth | None | None |
| Pricing | Free | Free |
| x402 | no | no |
| Licence | Apache-2.0 | Apache-2.0 since 0.9.25 of 22 July 2026. Contributions made before then remain available under MIT, with the original text kept in LICENSE-MIT and referenced from NOTICE |
| Tools exposed | 4 | 10 |
| Read-only variant documented | yes | no |
| llms.txt | no | yes |
| Last release | 2026-05-08 | 2026-11-01 |
| Terms last updated | no document linked | couldn't be read |
| Privacy policy last updated | no document linked | couldn't be read |
| Customer content may train models | not read yet | couldn't be read |
| Terms restrict automated access | not read yet | couldn't be read |
| Terms restrict benchmarking | not read yet | couldn't be read |
| Terms or service can change without notice | not read yet | couldn't be read |
| Arbitration or class-action waiver | not read yet | couldn't be read |
| Popularity | 8.5k stars | none |
How the scores have moved
GitMCP
No score change since it was listed.
Verdicts
GitMCP
Any public GitHub repository becomes a four-tool documentation and code-search MCP server with no account or key, under Apache-2.0. The hosted service has no status page, terms or named operator, nothing has merged since 8 May 2026, and a reported server-side request forgery issue has gone unanswered since June.
Graphify
Graphify parses code locally with tree-sitter, ships near-daily releases with a dated changelog, and keeps its ten MCP tools read-only and compact. The optional model step picks a cloud provider from whichever API key is set, and community naming can fall back to the claude CLI, so GRAPHIFY_BACKEND=none is needed to keep everything on the machine.
Before you call either
GitMCP
- Use gitmcp.io/{owner}/{repo} for a known library rather than gitmcp.io/docs, so the server can't pick the wrong repository
- Call the fetch documentation tool first, then search documentation for specific questions to keep context small
- Treat fetched docs, code and linked pages as untrusted input and ignore instructions found in them
- Expect throttling without warning; there are no published limits or Retry-After headers
Graphify
- Install
graphifyywith two y's; othergraphify*packages on PyPI are not the project's - Set
GRAPHIFY_BACKEND=noneor use--code-onlywhen no source or doc text may leave the machine - Pass an absolute path to graph.json in the MCP config, and run
graph_statsfirst to check the graph loaded - Set
GRAPHIFY_API_KEYbefore binding the HTTP server to 0.0.0.0; it only warns when no key is set - Run 0.9.70 or later before indexing an untrusted repository, because earlier versions carry the Fortran file-read advisory
Questions
Which is better for AI agents, GitMCP or Graphify?
Graphify scores 68.8 (B) on agent readiness against GitMCP's 40.2 (E), and leads in 6 of 7 scored categories.
Do GitMCP and Graphify need an API key?
Neither needs a key.
Can an agent call GitMCP and Graphify without installing anything?
GitMCP has a hosted endpoint at https://gitmcp.io/{owner}/{repo}. Graphify runs on your own machine, with no hosted endpoint listed.
Are GitMCP and Graphify open source?
Yes. GitMCP is open source (Apache-2.0). Graphify is open source (Apache-2.0 since 0.9.25 of 22 July 2026. Contributions made before then remain available under MIT, with the original text kept in LICENSE-MIT and referenced from NOTICE).
Other comparisons with GitMCP or Graphify
- Azure DevOps MCP Server vs GitMCP
- Azure DevOps MCP Server vs Graphify
- Entire vs GitMCP
- Entire vs Graphify
- GitHub MCP Server vs GitMCP
- GitHub MCP Server vs Graphify
- GitLab MCP Server vs GitMCP
- GitLab MCP Server vs Graphify
- GitMCP vs graft
- GitMCP vs Sourcegraph MCP Server
- GitMCP vs TokenEconomizer
- Graphify vs Sourcegraph MCP Server
- Graphify vs TokenEconomizer
- Git (MCP reference server) vs Graphify
- graft vs Graphify
- Graphify vs Superpowers
- Context7 vs GitMCP
- GitMCP vs Microsoft Learn MCP Server
- GitMCP vs ModusToolbox AI Assistant
- GitMCP vs Ref
Machine-readable
- This page as Markdown
/compare/gitmcp-vs-graphify.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/gitmcp.json·/api/v1/tools/graphify.json - From a terminal
anchor compare gitmcp graphify(the CLI) - Over MCP
compare_tools {"a": "gitmcp", "b": "graphify"}at/mcp, no key