MCP server for GitHub repo health, commit summaries, issue triage, and RAG Q&A.
MCPpedia last refreshed this data
io.github.thedhruv-07/github-repo-mcp is an MCP server that MCP server for GitHub repo health, commit summaries, issue triage, and RAG Q&A. Its tool list has not been published yet over stdio and sse, requires no API key, and scores 56/100 on MCPpedia's security, maintenance and efficiency rubric.
Config is the same across clients - only the file and path differ.
{
"mcpServers": {
"github-repo-mcp": {
"env": {
"GITHUB_TOKEN": "your_token_here"
},
"args": [
"/absolute/path/to/github-repo-mcp/build/index.js"
],
"command": "node"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
MCP server for GitHub repo health, commit summaries, issue triage, and RAG Q&A.
Run this in your terminal to verify the server starts. Then let us know if it worked - your result helps other developers.
npx -y '@thedhruv07/github-repo-mcp' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories - click any category to see the underlying evidence.
No known CVEs.
Checked @thedhruv07/github-repo-mcp against OSV.dev.
Be the first to review
Have you used this server?
Share your experience - it helps other developers decide.
Sign in to write a review.
Others in other
deja-vu: local memory over the session histories of forty-three coding agents.
MCP WordPress Remote proxy server
专门为 agent 打造的 agent 搜索工具,具备多语言搜索能力,覆盖中文/英文/学术/代码/购物/金融/新闻/百科。
Searchable football data provider documentation for AI coding agents. Like Context7 for football data.
MCP Security Weekly
Get CVE alerts and security updates for io.github.thedhruv-07/github-repo-mcp and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
An MCP (Model Context Protocol) server that lets any AI agent — Claude Desktop, Claude Code, Cursor — reason about a public GitHub repository directly, instead of the human manually reading READMEs, commit logs, and issue trackers.
Evaluating an unfamiliar repo ("is this actively maintained? is this issue actually beginner-friendly? what changed recently?") is repetitive manual work every developer does. This server turns that into four callable tools any MCP-compatible agent can use.
| Tool | What it does |
|---|---|
get_repo_health | Deterministic 0–100 health score from commit recency, issue-triage ratio, and contributor count. Flags archived repos immediately. |
summarize_recent_commits | Groups commits from the last N days by type (feature/fix/docs/refactor/chore) for a quick "what changed" view. |
find_good_first_issues | Finds beginner-labeled issues, scores each for genuine clarity, and flags ones that look mislabeled (e.g. touches core architecture despite the "good first issue" tag). |
ask_repo | Free-text Q&A over README + docs/*.md + top issue threads via embeddings-based semantic search (Voyage AI + Qdrant cosine similarity). |
npm install
cp .env.example .env
# Add a GitHub personal access token to .env — raises the rate limit from 60/hr to 5000/hr.
# No special scopes needed for public repo data: https://github.com/settings/tokens
#
# ask_repo also needs, both free tier:
# VOYAGE_API_KEY — https://dashboard.voyageai.com/ (API Keys -> Create new key)
# QDRANT_URL, QDRANT_API_KEY — https://cloud.qdrant.io/ (create a free cluster)
npm run build
Add this to your Claude Desktop MCP config (claude_desktop_config.json):
{
"mcpServers": {
"github-repo-mcp": {
"command": "node",
"args": ["/absolute/path/to/github-repo-mcp/build/index.js"],
"env": { "GITHUB_TOKEN": "your_token_here" }
}
}
}
Restart Claude Desktop, then try: "Use github-repo-mcp to check the health of facebook/react and find me a good first issue."
get_repo_health's score is a fixed
formula (recency + issue triage + contributor diversity), not an LLM guess. This keeps
the number reproducible; an LLM (in the calling agent) can narrate why on top of it.find_good_first_issues — real "good first issue" labels are
often wrong. The tool checks body length, red-flag keywords (architecture, migration,
security), and comment count to catch issues that are mislabeled, not just present them
at face value.See docs/demo.md for a real (not mocked) protocol exchange against
facebook/react, including the embeddings-based ask_repo retrieving the correct
answer for a query that shares no words with the source text.
ask_repo retrieval worksask_repo started as keyword-window retrieval over the README (see git history) and
was upgraded to embeddings-based RAG, implemented in src/rag.ts:
docs/*.md (top-level, cap 15 files) +
top 8 most-discussed issue threads (title + body, ~500-word chunks, 50-word overlap)voyage-3.5-lite)repo_<owner>_<name>)points_count) — only the query itself gets embeddedWhy embeddings over keyword matching: keyword overlap requires literal shared words — "how do I install React?" and a README section titled "Getting Started" share zero words and would never match. Embeddings place semantically si