Claude Code erweitern: MCP, Skills und Plugins einfach erklärt
Claude Code kann deutlich mehr als nur Code schreiben. Du kannst den Coding Agent mit eigenen Tools, Wissen und Arbeitsabläufen erweitern.
Dafür gibt es vor allem drei wichtige Möglichkeiten: MCP, Skills und Plugins.
Das klingt zunächst technisch. Die Grundidee ist aber einfach.
I. MCP: Claude bekommt Zugriff auf andere Systeme
MCP steht für Model Context Protocol. Es verbindet Claude Code mit anderen Programmen und Diensten.
Zum Beispiel mit:
GitHub
Jira
Datenbanken
APIs
Slack
Notion
eigenen Anwendungen
Stell dir Claude Code als Entwickler vor, der an deinem Schreibtisch sitzt. Ohne MCP kann er vor allem mit deinem Code arbeiten. Mit MCP bekommt er zusätzliche Werkzeuge.
Ein MCP-Server kann Claude zum Beispiel ermöglichen:
„Lies das Jira-Ticket und prüfe, welche Anforderungen darin stehen.“
Oder:
„Erstelle nach dem erfolgreichen Test einen Pull Request auf GitHub.“
MCP erweitert also vor allem die Fähigkeiten von Claude Code.
A. Einen MCP-Server hinzufügen
Claude Code bietet dafür die claude mcp add-Befehle.
Zum Beispiel:
claude mcp add github -- npx -y @modelcontextprotocol/server-github
Damit wird ein MCP-Server namens github hinzugefügt.
Anschließend kannst du dir die konfigurierten MCP-Server anzeigen lassen:
claude mcp list
Du kannst einen Server auch wieder entfernen:
claude mcp remove github
B. Ein MCP-Server für eine eigene API
MCP ist nicht nur für fertige Integrationen gedacht. Du kannst auch eigene MCP-Server entwickeln.
Eine vereinfachte Struktur könnte so aussehen:
my-mcp-server/
├── package.json
└── src/
└── index.ts
Der Server könnte beispielsweise ein Tool get_customer bereitstellen:
server.tool(
"get_customer",
"Liefert Kundendaten",
{
customerId: z.string()
},
async ({ customerId }) => {
const customer = await getCustomer(customerId);
return {
content: [
{
type: "text",
text: JSON.stringify(customer)
}
]
};
}
);
Claude kann dieses Tool anschließend verwenden.
Das ist interessant, wenn du interne Systeme oder eigene APIs in deinen Coding Agent integrieren möchtest.
II. Skills: Claude lernt, wie etwas gemacht wird
Skills funktionieren anders als MCP.
Ein Skill ist im Grunde kein eigenes Programm und keine spezielle Erweiterung. Es handelt sich zunächst einfach um Dateien in einer bestimmten Ordnerstruktur. Claude Code erkennt diese Dateien anhand ihrer Position und ihres Aufbaus als Skill.
Ein einfacher Skill kann zum Beispiel so aussehen:
.claude/
└── skills/
└── code-review/
└── SKILL.mdDie wichtigste Datei ist SKILL.md. Sie enthält die Anweisungen, die Claude bei dieser Aufgabe beachten soll.
Zum Beispiel:
---
name: code-review
description: Führt einen strukturierten Code Review durch
---
# Code Review
Prüfe den Code in dieser Reihenfolge:
1. Architektur
2. Sicherheit
3. Performance
4. Fehlerbehandlung
5. Tests
6. Lesbarkeit
Bewerte jedes Problem nach:
- kritisch
- wichtig
- optional
Zeige anschließend konkrete Verbesserungsvorschläge.Das Prinzip ist damit sehr einfach:
Ordnerstruktur + SKILL.md + Anweisungen = Skill
Du musst also keine eigene Software programmieren, um einen Skill zu erstellen. Du legst im Projekt lediglich einen passenden Ordner an und beschreibst darin, wie Claude eine bestimmte Aufgabe erledigen soll.
A. Warum das praktisch ist
Dadurch lassen sich Skills sehr einfach selbst erstellen und versionieren.
Du kannst sie beispielsweise direkt in Git einchecken:
.claude/
└── skills/
├── code-review/
│ └── SKILL.md
├── testing/
│ └── SKILL.md
└── documentation/
└── SKILL.mdDamit liegen die Anweisungen für dein Team direkt im Repository.
Ein neuer Entwickler, der das Repository klont, erhält damit automatisch auch die definierten Skills.
Skills sind deshalb besonders interessant für Coding-Standards, Best Practices und wiederkehrende Arbeitsabläufe.
Zum Beispiel:
„Wie führen wir Code Reviews durch?“
„Wie schreiben wir Tests?“
„Wie strukturieren wir React-Komponenten?“
„Wie erstellen wir API-Dokumentation?“
„Welche Regeln gelten für unsere Datenbankmigrationen?“
Der große Unterschied zu MCP bleibt:
MCP erweitert, was Claude tun kann.
Skills beschreiben, wie Claude etwas tun soll.
Und weil Skills im Kern nur strukturierte Dateien mit Anweisungen sind, kannst du sie relativ einfach selbst erstellen, anpassen und gemeinsam mit deinem Code verwalten.
B. Skills und Kontext
Der große Vorteil von Skills im Hinblick auf den Kontext ist: Sie müssen nicht alle Anweisungen dauerhaft in den Kontext von Claude laden.
1. Skills können bei Bedarf geladen werden
Claude Code kann anhand der Beschreibung eines Skills erkennen, wann er relevant ist. Der eigentliche Inhalt des Skills muss dann nicht von Anfang an vollständig im Kontext stehen.
Beispiel:
.claude/└── skills/
├── code-review/
│ └── SKILL.md
├── testing/
│ └── SKILL.md
└── database-migration/
└── SKILL.md
Du hast vielleicht 20 Skills im Projekt. Claude muss deshalb nicht automatisch die kompletten 20 Anleitungen in jedem Gespräch mitschleppen.
Das spart Context Window.
2. Skills können große Anleitungen auslagern
Ein Skill kann außerdem auf weitere Dateien verweisen:
.claude/└── skills/
└── frontend/
├── SKILL.md
├── coding-standards.md
├── accessibility.md
└── examples.md
In SKILL.md steht dann beispielsweise:
Für detaillierte Accessibility-Regeln:Lies accessibility.md.
Für unsere Coding Standards:
Lies coding-standards.md.
Damit kannst du umfangreiches Wissen außerhalb des normalen Gesprächskontexts organisieren und bei Bedarf nachladen.
3. Skills reduzieren unnötigen Kontext
Das ist besonders bei großen Projekten interessant.
Ohne Skills könnte man versucht sein, eine riesige CLAUDE.md zu schreiben:
CLAUDE.md├── Coding Standards
├── Testing
├── React
├── Accessibility
├── API
├── Datenbank
├── Deployment
├── Security
└── ...
Diese Informationen sind dann schnell sehr umfangreich.
Mit Skills kannst du sie aufteilen:
CLAUDE.md│
└── grundlegende Projektregeln
Skills
├── Testing
├── React
├── Security
├── API
└── Deployment
Claude bekommt dadurch gezielter die Informationen, die für die aktuelle Aufgabe relevant sind.
4. Wichtig: Skills sind kein „unbegrenzter Speicher“
Man sollte allerdings nicht sagen:
„Skills lösen das Context-Window-Problem.“
Das wäre zu stark formuliert.
Wenn Claude einen Skill tatsächlich verwendet und dessen Inhalte lädt, verbrauchen diese Inhalte natürlich weiterhin Kontext.
Der Vorteil liegt vielmehr in der selektiven Aktivierung und Organisation:
Nicht alles muss immer im Kontext sein. Nur das, was für die aktuelle Aufgabe relevant ist.
Das macht Skills gerade bei großen Projekten interessant.
Kurz gesagt
CLAUDE.md: Grundregeln, die Claude grundsätzlich kennen sollte.
Skills: Spezifisches Wissen und Arbeitsanweisungen, die bei bestimmten Aufgaben relevant sind.
MCP: Externe Tools und Datenquellen.
Die Kombination ermöglicht damit eine Art Just-in-Time Context: Claude bekommt nicht möglichst viel Kontext, sondern möglichst passenden Kontext zum richtigen Zeitpunkt.
III. Plugins: Mehrere Erweiterungen als Paket
Plugins gehen noch einen Schritt weiter.
Ein Plugin kann mehrere Erweiterungen zusammenfassen. Dazu können beispielsweise Skills, Commands, Agents, Hooks und MCP-Konfigurationen gehören.
Eine mögliche Plugin-Struktur:
my-plugin/
├── .claude-plugin/
│ └── plugin.json
├── skills/
│ └── code-review/
│ └── SKILL.md
├── commands/
│ └── review.md
├── agents/
│ └── security-reviewer.md
└── .mcp.json
Die plugin.json könnte beispielsweise Metadaten für das Plugin enthalten:
{
"name": "my-development-tools",
"description": "Interne Entwicklungswerkzeuge",
"version": "1.0.0"
}
Das Plugin kann anschließend verschiedene Erweiterungen gemeinsam bereitstellen.
A. Beispiel: Ein Jira-Plugin
Stell dir ein Plugin für dein Entwicklungsteam vor.
Es könnte folgende Bestandteile enthalten:
jira-plugin/
│
├── Skills
│ ├── analyze-ticket
│ └── sprint-report
│
├── Commands
│ └── jira
│
├── Agents
│ └── jira-agent
│
└── MCP
└── Jira API
Damit erhält Claude Code eine komplette Jira-Integration.
Du könntest beispielsweise einen Workflow aufbauen, bei dem Claude:
Jira-Ticket lesen
↓
Anforderungen analysieren
↓
Code ändern
↓
Tests ausführen
↓
Code Review
↓
Pull Request erstellen
MCP stellt dabei den Zugriff auf Jira und GitHub bereit.
Skills beschreiben, wie Claude die einzelnen Aufgaben erledigen soll.
Ein Plugin kann diese Bestandteile zusammenfassen.
IV. Ein praktisches Beispiel: Code Review automatisieren
Nehmen wir an, du möchtest mit Claude Code regelmäßig Code Reviews durchführen.
Dafür kannst du einen Skill erstellen.
A. Verzeichnis anlegen
mkdir -p .claude/skills/code-review
Danach legst du SKILL.md an:
touch .claude/skills/code-review/SKILL.md
B. Skill definieren
---
name: code-review
description: Prüft Änderungen auf Qualität, Sicherheit und Performance
---
# Code Review
Analysiere zuerst die Änderungen im Git-Diff.
Prüfe anschließend:
1. Funktionalität
2. Fehlerbehandlung
3. Sicherheit
4. Performance
5. Tests
6. Wartbarkeit
Melde nur konkrete Probleme.
Für jedes Problem verwende dieses Format:
## Problem
Beschreibung des Problems.
## Warum?
Warum ist das Problem relevant?
## Lösung
Konkreter Verbesserungsvorschlag.
Bewerte die Priorität als:
- Critical
- High
- Medium
- Low
Jetzt besitzt dein Projekt eine eigene Anleitung für Code Reviews.
Du kannst Claude beispielsweise auffordern:
Führe einen Code Review der aktuellen Änderungen durch.
Claude kann dafür den passenden Skill verwenden.
V. MCP und Skills gemeinsam verwenden
Besonders interessant wird es, wenn du beide Technologien kombinierst.
Angenommen, dein Team verwendet Jira und GitHub.
MCP stellt die Verbindung bereit:
Claude Code
│
├── MCP → Jira
│
└── MCP → GitHub
Ein Skill beschreibt dagegen den Ablauf:
1. Jira-Ticket lesen
2. Anforderungen analysieren
3. Code ändern
4. Tests ausführen
5. Code Review durchführen
6. Pull Request erstellen
Claude kann damit nicht nur auf die Systeme zugreifen. Er bekommt gleichzeitig einen definierten Arbeitsablauf.
Das ist ein wichtiger Schritt in Richtung Agentic Coding.
VI. Ein eigenes MCP-Tool programmieren
Noch interessanter wird es, wenn du eigene Tools bereitstellst.
Angenommen, dein Unternehmen besitzt eine interne API:
https://api.example.com/customers
Du könntest einen MCP-Server bauen, der daraus ein Claude-Tool macht.
Vereinfacht könnte das Tool so aussehen:
server.tool(
"search_customers",
"Sucht Kunden im internen System",
{
query: z.string()
},
async ({ query }) => {
const response = await fetch(
`https://api.example.com/customers?q=${query}`
);
const customers = await response.json();
return {
content: [
{
type: "text",
text: JSON.stringify(customers)
}
]
};
}
);
Claude kann anschließend beispielsweise gefragt werden:
Suche den Kunden "Müller" in unserem Kundensystem.
Claude entscheidet, dass dafür das MCP-Tool search_customers verwendet werden kann.
Das ist der große Vorteil von MCP: Du kannst Claude mit deinen eigenen Systemen verbinden.
VII. MCP, Skills und Plugins im Vergleich
Erweiterung | Einfach erklärt | Beispiel |
|---|---|---|
MCP | Gibt Claude Werkzeuge | GitHub, Jira, Datenbank |
Skill | Zeigt Claude, wie eine Aufgabe erledigt wird | Code Review |
Plugin | Bündelt mehrere Erweiterungen | Entwickler-Toolkit |
Command | Startet einen definierten Befehl |
|
Agent | Übernimmt eine spezialisierte Aufgabe | Security-Analyse |
Hook | Reagiert automatisch auf Ereignisse | Tests nach Änderungen |
Eine einfache Eselsbrücke hilft:
MCP gibt Claude Werkzeuge.
Skills geben Claude Anleitungen.
Plugins bündeln Erweiterungen.
Agents übernehmen spezialisierte Aufgaben.
Hooks automatisieren Abläufe.
VIII. Warum diese Erweiterbarkeit wichtig ist
Die Stärke von Claude Code liegt deshalb nicht nur im verwendeten KI-Modell.
Entscheidend ist auch, was der Agent tun kann.
Ein einfacher KI-Assistent erzeugt Code.
Ein Coding Agent kann dagegen:
Aufgabe verstehen
↓
Repository analysieren
↓
Dateien ändern
↓
Tests ausführen
↓
Externe Systeme verwenden
↓
Ergebnis überprüfen
↓
Pull Request vorbereiten
MCP, Skills und Plugins machen solche Abläufe möglich.
Für die Auswahl eines Coding Agents sollte deshalb nicht nur die Frage zählen:
„Welches KI-Modell ist am besten?“
Ebenso wichtig ist:
„Wie gut kann ich den Agenten an meine Entwicklungsumgebung und meine Arbeitsweise anpassen?“
Genau hier unterscheiden sich Claude Code, Cursor, Codex, GitHub Copilot, Windsurf und andere Coding Agents deutlich.