kimwwk/repocrunch
Analyze GitHub repos into structured JSON. No AI, fully deterministic.
Platform-specific configuration:
{
"mcpServers": {
"repocrunch": {
"command": "npx",
"args": [
"-y",
"repocrunch"
]
}
}
}Add the config above to .claude/settings.json under the mcpServers key.
Analyze any public GitHub repository into structured JSON. No AI, no LLMs — fully deterministic.
Give it a repo, get back tech stack, dependencies, architecture, health metrics, and security signals in clean, consistent JSON. Use it as a Python library, CLI tool, REST API, or MCP server.
Requires Python 3.11+.
pip install repocrunch
repocrunch analyze fastapi/fastapi --prettyThat's it. Also works with uv:
uvx repocrunch analyze astral-sh/uv --prettygit clone https://github.com/kimwwk/repocrunch.git
cd repocrunch
uv venv && uv pip install -e ".[all]"Install just what you need:
uv pip install -e "." # Library only (httpx + pydantic)
uv pip install -e ".[cli]" # + CLI
uv pip install -e ".[api]" # + REST API
uv pip install -e ".[mcp]" # + MCP server
uv pip install -e ".[all]" # EverythingWithout a token you get 60 API calls/hour. With one, 5,000/hour. A token also lets you analyze private repositories you have access to.
export GITHUB_TOKEN=ghp_...repocrunch analyze fastapi/fastapi --pretty # Full analysis, pretty JSON
repocrunch analyze facebook/react -f tech_stack # Single field
repocrunch analyze https://github.com/gin-gonic/gin # Full URL works too
repocrunch serve # Start REST API on :8000
repocrunch mcp # Start MCP server (STDIO)from repocrunch import analyze, analyze_sync
# Async
result = await analyze("fastapi/fastapi")
# Sync
result = analyze_sync("pallets/flask")
print(result.summary.stars)
print(result.tech_stack.framework)
print(result.model_dump_json(indent=2))repocrunch serve
# Then:
curl "http://localhost:8000/analyze?repo=fastapi/fastapi" | python -m json.tool
curl "httpLoading reviews...