Claude Code liest Dateien sehr gut. Aber große Codebases sind ein Problem: Die KI springt zwischen Files, verliert Kontext und macht Vorschläge, die nicht zum restlichen Code passen. Serena löst genau das. Es ist ein MCP Server, der Claude Code ein echtes semantisches Verständnis deiner Codebase gibt, statt nur Text zu durchsuchen.
Was ist Serena?
Serena ist ein MCP Toolkit, das speziell für Code-Arbeit mit KI-Agenten entwickelt wurde. Du kannst es dir vorstellen wie eine schlanke IDE, die direkt in Claude Code eingebaut ist. Statt Dateien zeilenweise zu lesen, kann die KI mit Serena gezielt nach Symbolen, Klassen, Funktionen oder Typen suchen und diese direkt bearbeiten.
Der Unterschied zu einem normalen Dateizugriff ist erheblich: Serena versteht die Struktur deines Codes. Es weiss, dass getUserById eine Methode in UserService ist, welche Interfaces sie implementiert und wo sie aufgerufen wird. Das gibt Claude Code den nötigen Kontext, um konsistente Änderungen vorzunehmen, ohne vorher alle umliegenden Dateien manuell einzulesen.
Serena nutzt intern Language-Server-Protokolle, die auch VS Code und JetBrains verwenden. Damit bekommst du die gleiche semantische Präzision, die du aus deiner IDE kennst, jetzt aber direkt im KI-Agenten-Workflow.
Wie richtest du Serena ein?
Die Einrichtung läuft über die Claude Code MCP-Konfiguration. Du installierst Serena als MCP Server und gibst dein Projekt-Root an. Ab dann steht Claude Code eine Reihe neuer Werkzeuge zur Verfügung:
# Serena als MCP Server in Claude Code einrichten
# In deiner Claude MCP-Konfiguration (~/.claude/mcp_servers.json):
{
"serena": {
"command": "uvx",
"args": ["serena", "--project-root", "/pfad/zu/deinem/projekt"]
}
}
Nach dem Neustart von Claude Code erkennst du Serena daran, dass neue Tools wie find_symbol, get_references, rename_symbol oder get_class_hierarchy verfügbar sind. Diese Tools nutzt Claude automatisch, wenn du es nach Code fragst, der in mehreren Dateien verteilt ist.
Wichtig: Serena braucht einen kompatiblen Language-Server für deine Sprache. Für Python ist pyright empfohlen, für TypeScript und JavaScript läuft es out-of-the-box. Für andere Sprachen lohnt ein Blick in die offizielle Serena-Dokumentation.
Praxis-Beispiel: Refactoring in einer großen TypeScript-App
Stell dir vor, du willst in einer mittelgroßen Next.js-App alle Stellen finden, die eine bestimmte API-Funktion aufrufen, und diese migrieren. Ohne Serena würde Claude Code Dateien einzeln öffnen, nach dem Funktionsnamen suchen und dabei leicht Verwendungen übersehen, die den Namen unter einem Import-Alias verstecken.
Mit Serena läuft das anders. Du schreibst Claude einfach:
"Finde alle Aufrufe von
fetchUserDataund ersetze sie durch die neuegetUser-Funktion aus dem@/lib/api-Modul. Passe die Parameter entsprechend an."
Serena liefert Claude Code über find_symbol und get_references eine vollständige, semantisch korrekte Liste aller Aufrufstellen, inklusive Typ-Informationen. Claude kann dann strukturiert vorgehen, eine Stelle nach der anderen anpassen und dabei sicherstellen, dass keine Stelle vergessen wird. Das Ergebnis ist deutlich zuverlässiger als eine reine Textsuche.
Dieser Ansatz zahlt sich besonders aus, wenn du Interfaces änderst oder Klassen umbenennst: Serena kennt alle Implementierungen und Subklassen, ohne dass du Claude erst erklären musst, wo diese liegen.
Wann lohnt sich Serena?
Serena bringt den größten Nutzen, wenn deine Codebase über mehrere Dateien und Verzeichnisse verteilt ist. Für kleine Projekte mit wenigen Files ist der Overhead nicht nötig, weil Claude Code dort auch ohne semantische Navigation zurechtkommt.
Besonders sinnvoll ist Serena in diesen Situationen: Du arbeitest an einer monolithischen Backend-App mit vielen Service-Klassen. Du willst Interfaces oder Typen systematisch refactoren. Du fragst Claude Code nach Stellen, die eine bestimmte Abhängigkeit nutzen. Oder du willst verstehen, wie ein bestimmtes Modul im Gesamtsystem eingebettet ist.
Im Vergleich zu anderen MCP Servern wie context7 für aktuelle Library-Docs ist Serena kein Nachschlagewerk, sondern ein Analyse-Werkzeug. Beide ergänzen sich gut: context7 sorgt dafür, dass Claude aktuelle API-Informationen hat, Serena sorgt dafür, dass Claude versteht, wie dein bestehender Code strukturiert ist. Zusammen verringern sie die Wahrscheinlichkeit, dass Claude Code Vorschläge macht, die nicht in dein Projekt passen.
Serena richtet sich an Entwickler, die regelmäßig größere Refactorings oder Migrationen mit Claude Code durchführen und dabei mehr Präzision wollen als eine einfache Datei-Suche bietet.
FAQ
Muss ich Serena jedes Mal neu starten, wenn ich das Projekt wechsle?
Ja. Serena wird mit einem festen --project-root gestartet. Wenn du zwischen Projekten wechselst, musst du die MCP-Konfiguration anpassen und Claude Code neu starten. Manche Nutzer richten mehrere Serena-Instanzen mit unterschiedlichen Profilen ein.
Funktioniert Serena auch mit Python oder Go?
Für Python funktioniert Serena mit pyright als Language-Server sehr gut. Für Go gibt es Unterstützung über gopls. Die TypeScript und JavaScript-Unterstützung ist die ausgefeilteste, weil sie direkt im Serena-Kern integriert ist.
Verlangsamt Serena Claude Code spürbar?
Der Language-Server-Index wird einmal beim Start aufgebaut. Das dauert bei großen Projekten einige Sekunden bis Minuten. Danach sind die Abfragen schnell. Im laufenden Betrieb merkst du kaum einen Unterschied zu einem normalen MCP Server.
Marcel Porcher, newways.ai
Wenn du Claude Code, Automatisierung und KI-gestütztes App-Building vertiefen willst: Komm in die kostenlose Claude Business Community. Dort lernst du Claude, Automatisierung, Co-Work, Claude Code, App-Building und Agent-Coding. Zeit sparen, Kosten senken, dein Business skalieren: skool.com/unternehmernetzwerk-2071