Multi-Server FastMCP PR Reviewer
Multi-Server FastMCP PR-Reviewer
Kostenlose Suite mit mehreren Servern nach dem Model Context Protocol (MCP) mit einem einheitlichen Gateway und einem LangGraph-gestützten automatisierten PR-Review-Agenten. Jedes verwendete Tool/API ist im kostenlosen Tarif nutzbar (GitHub PAT, Groq LLM).
Architektur
Claude Desktop / Agent
|
v
FastMCP Gateway (namespaces: code., gh., doc. — dot-separated per MCP tool-naming spec)
/ | \
v v v
Code GitHub Documentation
Intel Server Server (Groq)
(AST+Radon)(PyGithub)
\ | /
Shared Security & Audit Layer
(API key auth, SQLite WAL, rate limiting)Related MCP server: GitHub MCP Agent Server
Projektaufbau
mcp-pr-reviewer/
├── core/
│ └── security.py # auth + rate limit + SQLite audit decorator
├── servers/
│ ├── code_server.py # AST/radon static analysis (no external API)
│ ├── github_server.py # PyGithub-backed PR/issue/commit tools
│ └── doc_server.py # Groq-backed docstring/README/API doc generation
├── gateway/
│ └── gateway.py # unifies all three servers under code:/gh:/doc: namespaces
├── agent/
│ └── workflow.py # LangGraph PR-review pipeline (fetch → analyze → doc → publish)
├── data/ # SQLite audit_log.db lives here (gitignored)
├── docker-compose.yml
├── Dockerfile
├── requirements.txt
├── .env.example
└── claude_desktop_config.example.jsonEinrichtung
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txt
cp .env.example .env
# edit .env with your real MCP_API_KEY, GITHUB_TOKEN, GROQ_API_KEYLaden Sie die Umgebungsvariablen, bevor Sie lokal etwas ausführen, z. B.:
export $(grep -v '^#' .env | xargs) # macOS/LinuxAusführung
Einzelne Server (stdio, für lokale Tests)
python servers/code_server.py
python servers/github_server.py
python servers/doc_server.pyGateway
fastmcp run gateway/gateway.py:gatewayDocker
docker compose up --buildIntegration in Claude Desktop
Kopieren Sie claude_desktop_config.example.json in Ihre Claude Desktop-Konfiguration
(claude_desktop_config.json), korrigieren Sie den absoluten Pfad zu gateway/gateway.py
und tragen Sie echte Anmeldedaten ein. Starten Sie Claude Desktop neu, um die Änderungen zu übernehmen.
Test-Checkliste
1. Schema-Verifikation
fastmcp inspect servers/code_server.py
fastmcp inspect servers/github_server.py
fastmcp inspect servers/doc_server.py2. Sicherheits-/Audit-Verifikation
# Should raise 401 Unauthorized
CLIENT_API_KEY=wrong_key python -c "from servers.code_server import analyse_code; analyse_code('x = 1')"
# Inspect the WAL SQLite audit log
sqlite3 data/audit_log.db "SELECT * FROM access_log ORDER BY id DESC LIMIT 5;"3. End-to-End-PR-Review
python -c "
import asyncio
from agent.workflow import app
async def run():
result = await app.ainvoke({
'repo': 'your-username/your-repo',
'pr_number': 1
})
print('Review published:', result['issue_url'])
asyncio.run(run())
"Hinweise / Dinge, die Sie vor dem produktiven Einsatz noch einmal prüfen sollten
core/security.pyverwendet einen prozessweitenTokenBucket– jedes Tool auf einem Server teilt sich dasselbe Budget von 60/Min. Teilen Sie es in pro-Tool- oder pro-Client-Buckets auf, wenn Sie feinere Limits benötigen.secure_toolwirft FastAPIsHTTPException, die nur dann sauber auf HTTP-Statuscodes abgebildet wird, wenn der von Ihnen verwendete FastMCP-Transport tatsächlich hinter FastAPI/ASGI läuft. Wenn Sie einen Server über einfaches stdio betreiben, fangen Sie dies auf der MCP-Ebene ab oder ersetzen Sie es durch eine transportgerechte Ausnahme.Rotieren Sie
MCP_API_KEY,GITHUB_TOKENundGROQ_API_KEYaus der.env-Datei heraus und in einen echten Secrets Manager, bevor Sie eine nicht-lokale Bereitstellung durchführen –.envist nur für die Entwicklung geeignet.Die Code-Suche-API von GitHub ist deutlich niedriger gedeckelt als die Kern-API (30 req/min gegenüber 5.000 req/h) –
search_repo_codewird unter Last zuerst diese Grenze erreichen.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityCmaintenanceMCP server that equips AI agents with dev workflow tools including GitHub project management, conventional commits, visual regression testing, Jira/Confluence integration, and a persistent memory knowledge graph.25MIT
- AlicenseBqualityAmaintenanceMCP server that exposes GitHub operations as tools for AI agents, enabling code search, issue management, and PR review.12MIT
- Flicense-qualityDmaintenanceAn MCP server that automates pull request reviews using multiple LLM providers (OpenAI, Claude, Gemini, Groq, Perplexity) and supports GitHub and Bitbucket with real-time webhook integration and interactive AI assistant commands.1
- Flicense-qualityCmaintenanceMulti-model agent orchestration MCP server that enables plan-code-review-deliver pipelines with configurable providers and models.
Related MCP Connectors
Hosted MCP server for structured code review passes on human- and AI-written code. Free tier.
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
One PAT, any MCP agent: Vercel, GitHub, Cloudflare, Supabase, GCP — unified dev infra gateway.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/AmaimaKhalidSethi/MCP-PR-REVIEWER'
If you have feedback or need assistance with the MCP directory API, please join our Discord server