GitHub (read-only) MCP server
io.github.AbdulMuhaiminKhan/github-mcp·v1.2.0Read-only GitHub repos, issues, PRs and commits, with tool descriptions tuned on a benchmark.
0 stars137 downloads/wk
Reviews
Write oneNobody has reviewed GitHub (read-only) yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
GitHub (read-only) tools (6)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
get_recent_commitsget_repositorylist_open_issueslist_pull_requestslist_repositoriessearch_issues
Public scan report
scanner v0.1.10 · 2026-10-13 · same rubric, same numbers if you re-run it
- Code scan5 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitystatic API keys via environment variables6/15
- Maintenancelast push 6 days ago15/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
How GitHub (read-only) compares
Against every graded Developer tools MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 83/100
- higher than 65% of 1,119 Developer tools servers
- Tools
- 6
- the typical Developer tools server has 7
- Tools that change things
- 0%
- typical: 5%. Fewer write tools means less an agent can break
- Downloads a week
- 137
- more than 64% of 436 Developer tools servers with a package
What its tools let an agent do: 6 read
Install GitHub (read-only) in Claude Code, Cursor or VS Code
claude mcp add github-mcp -- uvx github-mcp-readonly
What the publisher says
From the GitHub (read-only) repository's README, as published. We do not edit it. Read it on GitHub
GitHub MCP Server: Teaching an AI to Pick the Right Tool
<!-- mcp-name: io.github.AbdulMuhaiminKhan/github-mcp -->
A read-only Model Context Protocol server that lets Claude (or any MCP client) answer questions about my GitHub repos, issues, pull requests and commits. It comes with a benchmark that measures how often the model picks the right tool with the right arguments.
Rewriting the tool descriptions took a local 7B model from 63% to 95% correct, and from 60% to 90% on held-out questions it was never tuned on. An ablation shows where those 32 points came from, and most of them were not the prose:
Every miss left in v2 is the model asking for something the API doesn't offer: merged PRs, sorting by stars, or closed issues from the open-issues tool. Better wording can't fix those. The next step is to support them in the schema.
Explore every question in the results dashboard →
What I built
getrepository, listopenissues, searchissues, listpullrequests, getrecentcommits.
- MCP server (Python, mcp SDK 2.x) with 6 read-only tools over stdio: list_repositories,
The token stays in the server process and never reaches the model.
- Least-privilege access: a fine-grained, read-only GitHub token and readOnlyHint annotations.
secondary rate-limit handling, ETag caching (304s don't count against the rate limit), exact totals for list tools, and error messages that tell the model how to recover.
- Production behaviour: schema-validated inputs, retries with backoff and jitter, primary and
and commits from two authors. A fake GitHub API serves the same data offline, so the benchmark also runs in CI with no token.
- A benchmark with known answers: a seed script creates two repos with 15 issues, 5 pull requests
multi-step agent runs whose final answers are checked against the seeded facts (13).
- Three evaluations: tool selection with argument grading (60 questions), a held-out set (20), and
only if held-out accuracy doesn't drop.
- An ablation (v1 → v1b → v2) that separates input handling from description wording.
- An automatic description optimizer that rewrites descriptions from failures and keeps a change
scores 100% when the right call is made).
- A harness that benchmarks any MCP server, not just this one (examples/).
- A results dashboard (docs/) with every question, call and error from the runs.
- Tests and CI on Python 3.10–3.13 (ruff, mypy, pytest, and an oracle check that the harness
Architecture
flowchart LR
U[User] -->|question| C["Claude Desktop<br/>(MCP client)"]
C <-->|"JSON-RPC over stdio<br/>tools/list · tools/call"| S["github-mcp<br/>Python MCP server"]
S -->|"HTTPS · read-only token<br/>ETags · retries"| G[(GitHub REST API)]
E["eval/run_eval.py"] -.->|"same MCP protocol"| S
E -.->|"question + tool schemas"| L["LLM under test<br/>(Ollama or Claude)"]
S -.->|"GITHUB_API_URL (CI)"| F[("fake GitHub<br/>seeded repos")]Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
GitHub (read-only): common questions
- Is GitHub (read-only) MCP server safe?
- Mostly: it is graded B (83/100). Read the GitHub (read-only) safety report
- How do I install GitHub (read-only)?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does GitHub (read-only) need an API key?
- Yes. The registry entry asks for
GITHUB_TOKEN. - Is GitHub (read-only) maintained?
- The last commit was 27 days ago (2026-10-08). The latest release is v1.2.0.
- What can I use instead of GitHub (read-only)?
- Servers from other publishers that do the same job: GitHub MCP server, Gk CLI MCP server and Pare Github MCP server. Compare all GitHub (read-only) alternatives.
- How does GitHub (read-only) compare with other Developer tools MCP servers?
- safety score 83/100 (higher than 65% of 1,119 Developer tools servers); tools 6 (the typical Developer tools server has 7); tools that change things 0% (typical: 5%. Fewer write tools means less an agent can break). Full comparison.
Alternatives to GitHub (read-only)
Same job from other publishers: the closest match first, then the best rated.
- GitHubConnect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.not reviewedEstablishedA
Gk CLIThe GitKraken MCP Server for managing repos, PRs, issues across GitHub, GitLab, Bitbucket and more.not reviewedEstablishedB- Pare GithubPare GitHub ג€” Structured GitHub operations (PRs, issues, actions) as typed JSON.not reviewedGrowingA
uploads.shHost files from coding agents; stage on a branch and attach to GitHub PRs.not reviewedEstablishedA- OctoCounts MCP ServerAnalyze and compare public GitHub repo line counts (SLOC) via OctoCounts, from any MCP client.not reviewedGrowingA