CodeBrain
CodeBrain
Ein MCP-Server, mit dem Claude Code umfangreiche Arbeiten an ein lokales LLM auslagern kann, das auf Ihrer eigenen Hardware läuft.
Was dies ist (und was nicht)
Ist: Ein Model Context Protocol (MCP)-Server, den Claude Code als Sub-Agent-Backend registriert. Wenn eine Sitzung die Art von Aufgabe enthält, die ein lokales 14B-Coder-Modell gut bewältigen kann — wie das Generieren von 50 Event-Templates, das Verfeinern von 20 React-Komponenten oder das Entwerfen von Boilerplate-Code —, ruft Claude Code CodeBrain auf, anstatt seine eigenen Output-Token zu verbrauchen.
Ist nicht: Ein Ersatz für Claude. Die logischen Überlegungen, Architektur-Entscheidungen, das Debugging und alles, bei dem "gut genug" nicht ausreicht, verbleiben bei Claude. CodeBrain ist ein Claude-Entlaster, kein Claude-Konkurrent.
Warum: Umfangreiche Inhalte und Verfeinerungsarbeiten verbrauchen Claudes Kontext und Ratenlimits schnell. Ein lokales Modell, das Sie unbegrenzt ausführen können, kostet pro Aufruf nichts extra und hält den wertvollen Kontext für die schwierigen Teile der Sitzung frei.
Related MCP server: ollama-mcp
Status
Phasen 1–4 abgeschlossen, Phase 5 zurückgestellt. Neun Tools verfügbar, .brain/context.md-Durchleitung aktiv, Scanner für dateispezifische Brain-Zusammenfassungen, Verifizierer-Schleife, Konsens-Dekodierung. Die MCP-Integration wurde in einer echten Claude Code-Sitzung verifiziert. Phase 5 (RAG) war explizit als "nur bei Bedarf" definiert, und die aktuelle Nutzung zeigt keine Engpässe bei der dateiübergreifenden Suche, daher bleibt sie zurückgestellt.
Funktionsweise
Claude Code session CodeBrain MCP server Local machine
───────────────────── stdio ─────────────────── ─────────────
Claude delegates a ────────► codebrain_generate() ────► Ollama HTTP
bulk / polish task codebrain_explain() (localhost:11434)
codebrain_status() │
▼
Qwen2.5-Coder 14B
(GPU)
Claude reviews, ◄──────── tool result string ◄──── streamed response
applies, or pushes backDerzeit sind neun Tools verfügbar:
Tool | Wann Claude es verwenden würde |
| Umfangreiche Inhalte, Boilerplate, repetitive Transformationen, erste Entwürfe |
| N Prompts mit einer gemeinsamen Systemnachricht, serielle Ausführung, indexstabile Fehler, damit ein Fehler nicht den gesamten Batch abbricht |
| Gezielte Transformation von vorhandenem Text — kürzen, umformulieren, übersetzen, präzisieren. Automatische Wiederholung bei No-Op-Ausgabe. |
| Schnelle Erklärungen im Nur-Lese-Modus, ohne Claudes Kontext zu verbrauchen |
| Generierung mit deterministischer Verifizierer-Schleife: Wortanzahl- / Regex-Schema-Prüfungen, Wiederholung bei Verletzung mit verschärften Anweisungen |
| N Kandidaten + Judge-Aufruf → bestes Einzelergebnis. Verwendung bei Aufgaben mit hoher Varianz. |
| Einmaliges Repo-Onboarding: erkennt Stack, schreibt |
| Generiert oder aktualisiert eine |
| Durchlaufen + Scannen eines Baums; Hash-gesteuert, Fehler bei einzelnen Dateien brechen den Batch nicht ab |
| Überprüft, welche Modelle lokal installiert sind |
Das use_brain-Flag bei Generierungs-Tools stellt automatisch .brain/context.md aus dem aktuellen Arbeitsverzeichnis vor den System-Prompt, sodass projektspezifischer Kontext bei jedem Aufruf mitgeführt wird, ohne dass Claude ihn manuell übergeben muss.
Anforderungen
Python 3.11+
Ollama — Download für Ihr Betriebssystem. Getestet mit Ollama unter Windows nativ, Kommunikation über
localhost:11434.Ein lokal geladenes Coder-Modell:
ollama pull qwen2.5-coder:14b~9 GB Download. Passt bei Q5 in 12 GB VRAM. Andere Modelle funktionieren ebenfalls (DeepSeek-Coder, Qwen3 falls verfügbar) — Einstellung über die Umgebungsvariable
CODEBRAIN_MODEL.Claude Code CLI auf der Maschine, die den Server aufruft (selbstverständlich).
Installation
git clone <this repo> CodeBrain
cd CodeBrain
python -m venv .venv
.venv\Scripts\activate # on Windows
# source .venv/bin/activate # on macOS / Linux
pip install -e .Claude Code konfigurieren
Fügen Sie CodeBrain zu Ihrer Claude Code MCP-Konfiguration hinzu. Unter Windows ist das normalerweise ~/.claude.json (passen Sie den Pfad an den Ort an, an den Sie das Repository geklont haben):
{
"mcpServers": {
"codebrain": {
"command": "C:\\Users\\YOU\\Desktop\\CodeBrain\\.venv\\Scripts\\python.exe",
"args": ["-m", "codebrain"]
}
}
}Starten Sie jede Claude Code-Sitzung neu — die fünf codebrain_*-Tools sollten nun in der Liste der verfügbaren Tools erscheinen.
Brain-Dateien automatisch synchron halten
Sobald Sie codebrain_init in einem Repo ausgeführt und es mit codebrain_scan_repo gescannt haben, möchten Sie wahrscheinlich, dass die Brain-Dateien automatisch aktualisiert werden, wenn Claude Quellcode bearbeitet. Zwei Komponenten richten dies ein:
1. Projekt CLAUDE.md-Snippet — weisen Sie Claude an, Brain-Dateien zu lesen, bevor Quellcode geöffnet wird:
## Brain files
This repo has per-file `.brain` summaries next to each source file.
Before reading a full source file, read its `<path>.brain` sibling first.
Only open the source when the brain file is insufficient for the task.2. PostToolUse-Hook — regenerieren Sie das Brain nach jedem Edit/Write.
Fügen Sie dies in .claude/settings.json im Repo-Root hinzu:
{
"hooks": {
"PostToolUse": [
{
"matcher": "Edit|Write",
"hooks": [
{
"type": "command",
"command": "python -c \"import asyncio, json, sys; from codebrain.brain_scanner import scan_file; d = json.load(sys.stdin); p = d.get('tool_input', {}).get('file_path'); p and p.endswith(('.py', '.ts', '.tsx', '.js', '.jsx', '.java', '.go', '.rs')) and print(asyncio.run(scan_file(p)))\""
}
]
}
]
}
}Der Hook untersucht den bearbeiteten Pfad, überspringt Nicht-Quellcodedateien über den Erweiterungsfilter und startet einen Scan. Hash-gesteuert: Unveränderte Dateien werden nicht an Qwen gesendet.
Plausibilitätsprüfung
Fragen Sie Claude innerhalb einer Claude Code-Sitzung:
Call
codebrain_statusand tell me what's installed.
Wenn Ollama läuft und das Modell geladen ist, erhalten Sie qwen2.5-coder:14b in der Liste zurück.
Konfiguration
Vom Backend gelesene Umgebungsvariablen:
Variable | Standard | Was sie bewirkt |
|
| Verweis auf ein entferntes Ollama (z. B. eine Inference-Box in Ihrem LAN) |
|
| Wechsel zu jedem Modell, das Sie geladen haben |
|
| Sekunden, die auf eine einzelne Generierung gewartet werden soll |
Projektstruktur
CodeBrain/
├── codebrain/
│ ├── __init__.py
│ ├── __main__.py # `python -m codebrain` entry
│ ├── backend.py # Ollama HTTP client
│ ├── server.py # FastMCP server + tool definitions
│ ├── brain_scanner.py # scan_file / scan_repo + hash gate
│ ├── brain_init.py # one-shot .brain/context.md seeding
│ ├── verifier.py # deterministic output checks
│ └── prompts/
│ └── brain_few_shot.md # few-shot for brain-file generation
├── tests/ # 96 unit + integration tests
├── .spec/
│ ├── CURRENT.md # phase state
│ └── brain-file-format.md # brain-file format v1
├── pyproject.toml
├── LICENSE
└── README.mdRoadmap
Phase 1 — Grundgerüst ✓
[x] Ollama HTTP-Client mit Fehlerbehandlung
[x] FastMCP-Server mit stdio-Transport
[x] Drei Kern-Tools:
generate,explain,status[x] Dokumentiertes Setup + Claude Code-Konfiguration
[x] Verifiziert in einer echten Claude Code-Sitzung
Phase 2 — Batch & Kontext ✓
[x]
codebrain_batch_generatefür Masseninhalte mit einem gemeinsamen System-Prompt, indexstabile Fehler[x]
codebrain_polishfür gezielte Transformationen (kürzen / umformulieren / übersetzen) statt Neugenerierung[x]
.brain/context.md-Durchleitung — CWD-Projektkontext wird automatisch vor jeden Generierungsaufruf gestellt[x] Dogfooding: Programmieraufgaben solide, Texttransformationsaufgaben zeigten echte Grenzen auf (informiert Phase 3)
Phase 2.5 — Brain-System ✓
Dateispezifische <source>.brain-Zusammenfassungen liegen neben jeder Quelldatei. Claude liest zuerst das Brain und öffnet die Quelle nur, wenn das Brain nicht ausreicht.
[x]
codebrain_scan_file(path, force)— eine Brain-Datei generieren oder aktualisieren[x]
codebrain_scan_repo(root, force, extensions, exclude_dirs)— Massendurchlauf + Scan[x]
codebrain_init(root, force)—.brain/context.mdmit Stack-Erkennung initialisieren[x] Hash-gesteuerte Regeneration (SHA256) — idempotente Wiederholungen
[x] Programmatisches Frontmatter — deterministisch
source,source_hash,model; Qwen schreibt nur die fünf Abschnitte[x] Defense-in-Depth-Validierung: Fence-Strip, Überspringen leerer Quellen (<10 Zeichen), Abschnittspräsenz/-reihenfolge, Wiederholung bei Ungültigkeit
[x] CLAUDE.md-Konvention + PostToolUse-Hook-Snippet in dieser README
Phase 3 — VERIFIER-Schleife ✓
Dogfooding zeigte, dass das lokale Modell bei Texttransformationen abweicht. Der Verifizierer erkennt No-Ops, Längenverletzungen und Schema-Fehler deterministisch, bevor sie Claude erreichen.
[x]
detect_noop— Whitespace-normalisierter Gleichheitscheck (automatische Wiederholung innerhalb voncodebrain_polish)[x]
check_word_count(min_words, max_words)— Schranke für Wortanzahl[x]
check_regex_schema(pattern)— Prüfung auf strukturierten Output[x]
codebrain_generate_verified(prompt, min_words, max_words, must_match, max_retries)— Schleife mit verschärften Wiederholungsanweisungen, gibt[codebrain warning] ...zurück, wenn die Verifizierung nach Wiederholungen fehlschlägt
Phase 4 — Konsens-Dekodierung ✓
[x]
codebrain_consensus_generate(prompt, n)— N Kandidaten generieren (begrenzt auf [2,5]), Qwen wählt das beste wörtlich aus. N+1 Inferenzaufrufe, erhöht die Qualität bei Aufgaben mit hoher Varianz.Multi-Pass Skelett→Logik→Kanten→Politur: zurückgestellt (geringer gemessener Wert; einzelne Tools lassen sich bereits kombinieren).
Phase 5 — RAG (zurückgestellt — kein Engpass)
Brain-Dateien fungieren bereits als Index; dateiübergreifendes RAG ist nur sinnvoll, wenn die zukünftige Nutzung tatsächlich zeigt, dass die Indizierung der Engpass ist. Aktuell gibt es dafür kein Signal, daher nicht implementiert.
Lizenz
MIT — siehe LICENSE.
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 lets Claude Code delegate mechanical tasks to a local LLM for summarization, classification, extraction, and drafting.99MIT
- Flicense-qualityCmaintenanceMCP server that lets Claude Code offload simple tasks like code explanation, writing tests, and adding comments to a local Ollama model, saving Claude API tokens.
- Alicense-qualityBmaintenanceA local MCP server that delegates coding tasks to local Qwen and cloud Gemini models, enabling orchestrators like Claude Code to offload routine code generation and receive verified results with automatic correction logging.MIT
- Alicense-qualityDmaintenanceAn MCP server that allows Claude Code to offload mechanical tasks such as summarization, classification, and drafting to a local LLM, reducing API costs while keeping Claude in control of complex reasoning and quality review.9MIT
Related MCP Connectors
Augments MCP Server - A comprehensive framework documentation provider for Claude Code
Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer
Persistent memory and cross-session learning for AI coding assistants (hosted remote MCP).
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/Tschonsen/CodeBrain'
If you have feedback or need assistance with the MCP directory API, please join our Discord server