ReviewGenie – Automated code-review server with MCP tooling
Project description
CodeView MCP 🪄
Powered by MCP, CodeLlama-13B (local), Llama-3-8B (cloud)
1 Why
Modern PRs are huge—security issues or performance regressions slip through.
ReviewGenie does a 30-second AI review:
- Static regex rules → critical smells
- Local LLM → quick heuristics (no cloud cost)
- Cloud LLM → human-style summary & risk score
- Inline comments you can accept or ignore with one click
2 What it does
| Tool | Purpose | Typical latency |
|---|---|---|
ping |
Sanity check: show title/author/state | 0.3 s |
ingest |
Fetch diff JSON + SQLite cache | 1–2 s |
analyze |
Summary, smells[], rule_hits[], risk_score ∈ [0–1] | 6–10 s |
inline |
Posts or previews comments | 0.5 s |
check |
CI gate (risk_score > threshold) |
0.2 s |
generate_tests |
Stub pytest files + open PR | 4–6 s |
Privacy note: only the diff snippet is sent to Groq; full code never leaves your machine.
3 Quick Start (5 min)
git clone https://github.com/mann-uofg/codeview-mcp.git
cd codeview-mcp
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
pip install -e .
# one-liner smoke
reviewgenie/codeview ping https://github.com/psf/requests/pull/6883
Store secrets once (env-var OR keyring):
from codeview_mcp.secret import set_in_keyring
set_in_keyring("GH_TOKEN", "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") #GitHub PAT
set_in_keyring("OPENAI_API_KEY", "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") # Groq/OpenAI key
set_in_keyring("OPENAI_BASE_URL", "https://api.groq.com/openai/v1")
Full tutorial: docs/QUICKSTART.md
4 Architecture
- SQLite → diff cache (24 h)
- ChromaDB → hunk embeddings
- Back-off → GitHub retries (403/5xx)
- Tracing → OpenTelemetry spans
- Detailed diagram:
docs/ARCHITECTURE.md
5 Benchmark
See bench/benchmarks.md:
10 popular OSS PRs → avg ⏱ 8.1 s analyze, 💰 $0.0008 Groq cost, 96 % comment acceptance.
6 Docs
- API schema:
docs/API_SCHEMA.json - CLI reference:
docs/USAGE.md - Config & env:
docs/CONFIGURATION.md - Contributing:
docs/CONTRIBUTING.md
7 Day-by-Day Log
| Day | Highlight |
|---|---|
| 0 | Project skeleton, MCP “hello” |
| 1 | GitHub ingest + diff cache |
| 2 | Local LLM smells + cloud risk |
| 3 | Inline locator + ChromaDB |
| 4 | CLI wrapper + risk gate |
| 5 | Stub test generator |
| 6 | Vector de-dup fix, CI passing |
| 7 | bench.py: eval & markdown report |
| 8 | Secrets via keyring, back-off, OpenTelemetry |
| 9 | Full docs suite & OpenAPI schema |
Full changelog: docs/CHANGELOG.md
8 Roadmap
- 🚦 Live GitHub Action auto-labels “High-Risk” PRs
- 🖼 Web UI with trace explorer
- 🐳 (Optional) Docker image for k8s / GHCR
- 🕵️♂️ Multi-language support (Go, Rust)
Star the repo ⭐ & drop an issue if you’d like to help!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file reviewgenie_mcp-1.2.0.tar.gz.
File metadata
- Download URL: reviewgenie_mcp-1.2.0.tar.gz
- Upload date:
- Size: 16.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
778429cd034f98841097445e1132464fd53a234b6765ecf8b5cdd383f27148e7
|
|
| MD5 |
eb21e6a01d1685c3873fa0f7fff68115
|
|
| BLAKE2b-256 |
4261fcad88f1aefbf08d3a751a0e214d21db57b0b3a08c1e75cda87eacce57ef
|
File details
Details for the file reviewgenie_mcp-1.2.0-py3-none-any.whl.
File metadata
- Download URL: reviewgenie_mcp-1.2.0-py3-none-any.whl
- Upload date:
- Size: 17.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a43ee2dc986b611c11cc48bfb45fff9186e23ad2a5b3ae0897c835aaeae9c38f
|
|
| MD5 |
356146e65f9356d0951afcdd7b55e3d3
|
|
| BLAKE2b-256 |
0962e61bfc841264b874e39ad1112bdaeaf5209df591719bcbc55952d404effe
|