Skip to main content
Glama
frangelbarrera

Code Review Agent MCP

Code Review Agent MCP

KI-Code-Review-Agent, der nichts beschönigt. Wenn dein Code schlecht ist, sagt er es dir. Unverblümt.

PyPI version Python 3.10+ License: MIT Code style: ruff

Ein KI-gestützter MCP-Server (Model Context Protocol), der deinen Code so überprüft, wie erfahrene Maintainer Patches in ernsthaften Projekten reviewen: technisch, direkt, ohne Diplomatie.

Was es tut

  • KI-Code-Review — überprüft Code-Snippets, Dateien, Git-Diffs und Commits

  • Gibt Ergebnisse mit Schweregrad-Labels zurück: CRITICAL, MAJOR, MINOR, NIT, CLEAN

  • Zitiert für jeden Befund konkrete Zeilennummern

  • Erklärt, warum etwas schlecht ist, und dann, wie man es behebt

  • Endet mit einem klaren Urteil: „Ausliefern." oder „Nicht zusammenführen, bis..."

  • Kein falsches Lob. Keine Beschönigungen. Keine Entschuldigungen. Kein Füllmaterial.

Related MCP server: greybeard

Warum?

Die meisten KI-Code-Reviewer sind darauf trainiert, höflich zu sein. Sie leiten Kritik mit „tolle Arbeit, aber..." ein, sie beschönigen mit „du solltest vielleicht in Betracht ziehen...", sie schwächen Befunde ab mit „das könnte möglicherweise ein Problem sein".

So funktioniert ernsthafte Code-Review nicht. In echten Projekten (Linux-Kernel, PostgreSQL, Redis, SQLite) überprüfen Maintainer Patches direkt. Sie finden Probleme und benennen sie klar. Sie existieren nicht, um dem Autor ein gutes Gefühl zu geben – sie existieren, um den Code besser zu machen.

Dieser MCP verkörpert diese Tradition. Die Persönlichkeit IST das Produkt.

Anti-RLHF-Engineering

LLMs sind per RLHF darauf trainiert, höflich zu sein. Dieser KI-Agent bekämpft das mit drei Ebenen:

  1. System-Prompt — 12 Kernprinzipien (Code-nicht-Programmierer, Urteil zuerst, Schweregrad-Labels, Zeilenzitate, kein falsches Lob, keine Beschönigungen, keine Entschuldigungen, kein Füllmaterial, zweite Person, keine demografischen Bezüge, keine Verweigerung, keine halluzinierten Bugs)

  2. Post-Processor — entfernt 40+ verbotene Phrasen (Beschönigungen, Abschwächungen, Entschuldigungen, Füllmaterial) aus der LLM-Ausgabe

  3. Validator — prüft, ob die Ausgabe Schweregrad-Labels, Zeilenzitate und ein Urteil enthält; kennzeichnet vage Problemaussagen als Halluzinationssignale

Werkzeuge

Tool

Beschreibung

review_code

Code-Snippet überprüfen

review_file

Datei von der Festplatte überprüfen (Sandbox)

review_diff

Git-Diff überprüfen

review_commit

Git-Commit überprüfen (git show <ref>)

list_severities

Schweregrad-Labels mit Definitionen auflisten

Härtegrade

Stufe

Verhalten

gentle

Mildert die Sprache leicht. Meldet weiterhin alle Befunde.

standard

Standardmäßige unverblümte Überprüfung. Direkt, technisch, keine Diplomatie.

brutal

Keine Abschwächung. „Das ist falsch." nicht „Das sollte geändert werden."

kernel-maintainer

Maximale Unverblümtheit. Kurze Sätze. Imperativ.

Installation

pip install code-review-agent-mcp

Oder mit uv:

uv pip install code-review-agent-mcp

Konfiguration

Claude Desktop

Füge zu claude_desktop_config.json hinzu:

{
  "mcpServers": {
    "code-review-agent": {
      "command": "python",
      "args": ["-m", "code_review_agent.server"]
    }
  }
}

Oder wenn über pip installiert:

{
  "mcpServers": {
    "code-review-agent": {
      "command": "code-review-agent-mcp"
    }
  }
}

Cursor

Füge zu .cursor/mcp.json hinzu:

{
  "mcpServers": {
    "code-review-agent": {
      "command": "python",
      "args": ["-m", "code_review_agent.server"]
    }
  }
}

Verwendungsbeispiele

Code-Snippet überprüfen

User: Review this code for me

def get_user(username):
    import sqlite3
    conn = sqlite3.connect("users.db")
    cursor = conn.cursor()
    query = f"SELECT * FROM users WHERE username = '{username}'"
    cursor.execute(query)
    return cursor.fetchone()

MCP-Antwort:

## Code Review: snippet

### Findings

**CRITICAL** `snippet:7` — SQL injection
The query uses an f-string with user input, allowing SQL injection. Use parameterized queries: `cursor.execute("SELECT * FROM users WHERE username = ?", (username,))`.

### Verdict

Do not merge until CRITICAL is fixed.

Datei überprüfen

User: Review src/auth.py

MCP calls review_file with file_path="src/auth.py"
Returns blunt review with line citations.

Commit überprüfen

User: Review the last commit

MCP calls review_commit with commit_ref="HEAD"
Returns blunt review of the diff.

Schweregrad-Labels

Label

Wann verwenden

CRITICAL

Sicherheitslücke, Datenverlust, Deadlock, RCE, alles, was defekt ausgeliefert wird

MAJOR

Logikfehler, Race Condition, Ressourcenleck, defekter Randfall, falsche Abstraktion

MINOR

Stil, Benennung, fehlender Test, redundanter Code, fragile Annahme

NIT

Kosmetik, Formatierung, Kommentarformulierung

CLEAN

Ausdrücklich angeben, wenn ein Abschnitt in Ordnung ist. Verhindert erfundene-Bug-Voreingenommenheit.

Sicherheit

Dieser MCP-Server implementiert Sicherheits-Sandboxing:

  • Dateizugriff ist standardmäßig auf das aktuelle Arbeitsverzeichnis beschränkt

  • Sensible Pfade (.ssh, .aws, .env, /etc/passwd usw.) werden abgelehnt

  • Git-Refs werden gegen eine strenge Zeichen-Whitelist validiert, um Options-Injection zu verhindern

  • Subprozess-Aufrufe verwenden shell=False und deaktivieren die globale Git-Konfiguration

Siehe SECURITY.md für das vollständige Bedrohungsmodell.

Entwicklung

# Install in development mode
pip install -e ".[dev]"

# Run tests
pytest

# Run tests with coverage
pytest --cov=code_review_agent

Benchmark-Snippets

Das Verzeichnis benchmarks/ enthält 5 Regressions-Snippets, die den Reviewer verifizieren:

  1. SQL-Injection — erwartet CRITICAL, Zeilenzitat, „Do not merge"

  2. Veränderlicher Standardwert — erwartet MAJOR

  3. Sauberer Code (binäre Suche) — erwartet CLEAN, „Ship it" (Anti-Halluzinationstest)

  4. Verschluckte Ausnahme — erwartet MAJOR

  5. Off-by-one — erwartet MAJOR

Der Clean-Code-Benchmark ist der wichtigste – er erkennt Halluzinationen. Wenn der Reviewer Bugs in korrektem Code erfindet, ist das Anti-RLHF-System defekt.

Lizenz

MIT

Danksagungen

Dieses Projekt verkörpert die Tradition der Kernel-Maintainer bei der Code-Review – eine Methodik, die von vielen leitenden Ingenieuren in vielen Projekten (Linux-Kernel, PostgreSQL, Redis, SQLite und anderen) praktiziert wird. Wir berufen uns auf die Tradition, nicht auf einen einzelnen Praktiker.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

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/frangelbarrera/code-review-agent-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server