Was ist MCP?
MCP steht für Model Context Protocol — ein offenes Protokoll, mit dem LLM-Anwendungen einheitlich auf externe Werkzeuge, Daten und Prompt-Vorlagen zugreifen können. Ungefähr das, was LSP für IDEs ist, soll MCP für Agenten werden: ein Adapter statt N maßgeschneiderter Integrationen.
Die Kurzfassung: Ein MCP-Server stellt Funktionen bereit (lies Datei X, ruf API Y, gib Doku Z heraus). Ein MCP-Client – meist eingebettet in einer Agent-Anwendung wie Claude Desktop oder Claude Code – kann diese Funktionen entdecken, aufrufen und das Ergebnis an das LLM weitergeben.
Die drei Primitives
🛠️ Tools
Vom Modell aufrufbare Funktionen mit Side Effects –„tu was“. Beispiel:
create_issue,run_query, send_email.📁 Resources
Lesbare Datenquellen, die vom Nutzer in den Kontext eingehängt werden – „hier ist Wissen“. Beispiel: lokale Dateien, Wiki-Seiten, DB-Zeilen.
📜 Prompts
Wiederverwendbare Prompt-Templates, die der Server anbietet —„so frag ich das“. Beispiel:
review-pr, generate-changelog.Was MCP nicht ist
- Kein neues LLM-Format — es geht um den Kontext, den Modell und Agent austauschen, nicht um Tokens oder Embeddings.
- Kein Replacement für REST/GraphQL — MCP ist die Schicht zwischen Agent und API. Die API darunter darf weiterhin REST sein.
- Kein RAG — Resources sind statisch (vom Nutzer eingehängt), Tools sind funktional. Embeddings-basiertes Retrieval baust du im Tool oben drauf.
Warum eigentlich? — Warum überhaupt ein neues Protokoll?
Vor MCP musste jeder Agent jede Integration einzeln eintippen: OpenAI-Function-Calling für GPT, Tool-Use-Format für Claude, eine eigene Plugin-Struktur für jede IDE. MCP standardisiert das, sodass ein Server (z.B. ein Postgres-Server, ein Filesystem-Server) von jedem MCP-fähigen Client genutzt werden kann.
Häufiger Denkfehler — MCP ≠ JSON-Schema-Tools
Function-Calling von OpenAI/Anthropic ist nur das Tool-Use-Format zwischen Modell und Wrapper. MCP ist die Schicht davor: wie der Wrapper überhaupt erfährt, welche Tools verfügbar sind, wer sie ausführt und wo das Ergebnis hingehört. Beides existiert parallel.
Tiefer rein — Transport-Schichten
MCP läuft typischerweise als JSON-RPC über einen von drei Transports:
- stdio — Server läuft als Sub-Prozess des Clients, kommuniziert über Standardeingabe/-ausgabe. Default für lokale Tools.
- SSE — Server-Sent Events über HTTP, für hosted/remote Server.
- Streamable HTTP — neuer, beidseitig-streamfähiger HTTP-Transport.