Kurz gesagt: Ihr Agent kann Code schreiben, liest aber keine GitHub Issues, kein DB-Schema und keine internen Docs — oft liegt das Problem nicht am Modell, sondern daran, dass niemand erklärt, woher die Daten kommen. Dieser Artikel beginnt beim MCP-Protokoll: Architekturschichten, die drei Primitiven Tools / Resources / Prompts, stdio vs. HTTP, dann Konfigurationsbeispiele und eine Abnahme-Checkliste für Cursor und Claude Code. Danach können Sie gängige Datenquellen selbst anbinden — ohne Glue-Code für jedes SaaS.
Weiterlesen: Claude Code MCP Setup-Anleitung · 20 MCP Server Empfehlungen · MCP mit minimalen Berechtigungen
Was ist MCP? Welches Problem löst es?
Das Model Context Protocol (MCP) ist ein Ende 2024 von Anthropic veröffentlichter offener Standard. Ziel: AI-Anwendungen (Hosts) sollen die Außenwelt — Code-Repos, Datenbanken, Dokumentation, Ticketing, Browser — einheitlich und auditierbar anbinden, ohne pro Datenquelle eine Custom-Integration.
Vor MCP wählten Teams meist einen von zwei Wegen:
- Manuelles Kopieren — Issue-Links, SQL-Ergebnisse, API-Antworten in den Chat. Genau, aber langsam und nicht skalierbar.
- Eigenes Function Calling — pro GitHub, Postgres, Notion Tool-Schema und Auth. Flexibel, aber teuer in der Wartung; beim Client-Wechsel (Cursor → Claude Code) oft Neuschreiben.
MCP ist der dritte Weg: Die Schnittstelle „Datenquelle ↔ Agent“ wird standardisiert. Einmal GitHub MCP konfiguriert — Cursor, Claude Code, VS Code Copilot und OpenAI Codex können es nutzen. Die Community pflegt tausende fertige Server für gängige SaaS und Dev-Tools.
Einordnung in einem Satz
MCP ist nicht das LLM selbst, sondern der „USB-Anschluss“ des Agents — der Host plant und schlussfolgert, der MCP Server macht externe Daten zu strukturierten, aufrufbaren Fähigkeiten. Modell- oder Client-Wechsel? Die Datenquellen-Konfiguration kann mitgehen.
Drei Schichten: Host, Client, Server
Für die MCP-Konfiguration zuerst die drei Rollen verstehen:
| Rolle | Typische Instanz | Aufgabe |
|---|---|---|
| Host | Cursor, Claude Code, Claude Desktop, VS Code | Chat-UI, Modell-Orchestrierung, Entscheidung ob MCP-Tools aufgerufen werden |
| Client | In den Host eingebauter MCP-Connector | Session zum Server, Weiterleitung von tools/list, tools/call u. a. JSON-RPC-Nachrichten |
| Server | GitHub MCP, Context7, Supabase MCP, eigener Server | Stellt Tools / Resources / Prompts bereit, führt Datenzugriff und API-Aufrufe aus |
Typische Kette: Sie fragen in Cursor „Welche Dateien hat PR #42 geändert?“ → Host → Modell wählt mcp__github__get_pull_request → Client sendet per stdio oder HTTP an GitHub MCP → Server ruft GitHub API auf → strukturiertes JSON zurück → Modell antwortet mit echten Daten.
Wichtig: Sie konfigurieren die Server-Verbindung (Befehl, URL, Umgebungsvariablen). Der Host entdeckt automatisch die Tools. Keine manuelle API-Doku im Prompt — beim Start liefert der Server über tools/list die Fähigkeitsliste.
Drei Fähigkeits-Primitive: Tools, Resources, Prompts
Ein MCP Server exponiert drei Arten von Fähigkeiten — unterschiedliche Muster für Datenquellen:
Tools — „Dem Agent Handlungen ermöglichen“
Am häufigsten. Jedes Tool hat Name, Beschreibung und Input-Schema (JSON Schema); der Agent ruft es bei Bedarf auf. Beispiele: GitHub MCP search_code, Playwright MCP browser_click, DB-MCP execute_query.
Bei der Datenquellen-Konfiguration gilt: ~90 % der Fälle sind Tool-Server — Repo lesen, Tabellen abfragen, HTTP, Browser steuern.
Resources — „Statischen Kontext lesbar machen“
Resources sind adressierbare Datenschnipsel, wie schreibgeschützte Dateien mit URI. Der Server deklariert file://docs/api.md oder db://schema/users; der Host kann Inhalte vor oder während des Gesprächs laden — ohne dass der Agent raten muss, welches Tool passt.
Geeignet für: README, OpenAPI-Spec, DB-Schema-Snapshot, Config-Vorlagen — relativ stabil und aufzählbar.
Prompts — „Vorgefertigte Workflow-Einstiege“
Der Server kann benannte Prompt-Vorlagen (mit Parametern) anbieten — in Cursor z. B. „Code Review“ oder „Migrationsskript“ per Klick. Seltener in der Community als Tools, aber gut für teaminterne SOPs als wiederverwendbare Einstiege.
Von der Datenquelle zum Agent: Konfigurations-Kausalkette
Empfohlene Reihenfolge
- Zuerst eine read-only Quelle
- Einen echten Task durchspielen
- Dann Schreib-Server ergänzen
Typische Fehler
- 10+ Server auf einmal
- Produktions-DB mit Schreib-DSN
- Nie abnehmen nach Setup
Datenquellentypen und gängige MCP Server
Diese Tabelle mappt „Was will ich anbinden?“ auf „Welchen Server?“. Die vollständige Liste mit 20 Servern: MCP Server Empfehlungen 2026.
| Datenquellentyp | Typischer MCP Server | Hauptfähigkeiten (Tools) | Authentifizierung |
|---|---|---|---|
| Code-Repository (GitHub) | GitHub MCP (offiziell) | Dateien lesen, Code suchen, Issues/PRs, CI-Status | OAuth Remote oder feingranularer PAT |
| Lokale Code-Semantik | CodeGraph MCP | Symbol-Navigation, Abhängigkeitsanalyse | Lokaler Index, kein Remote-Token |
| Bibliotheks-/Framework-Docs | Context7 | Offizielle Docs nach Lib + Version | API Key (Remote) |
| Relationale Datenbank | Supabase MCP / DBHub | Schema lesen, SQL ausführen | OAuth oder read-only DSN |
| Web / öffentliche APIs | Fetch MCP | HTTP GET → Markdown | Keine (kontrollierter Egress) |
| Browser / UI-Verifikation | Playwright MCP | Klicken, Formulare, A11y-Baum | Lokaler Prozess |
| Tickets / Collaboration | Linear / Notion / Slack MCP | Issues, Seiten, Nachrichten | OAuth Remote |
| Fehlermonitoring | Sentry MCP | Stacktraces, Issue-Status | OAuth Remote |
Auswahlprinzip
Nach Workflow wählen, nicht nach Ranking alles installieren. Full-Stack-Alltag: Context7 + GitHub + Playwright deckt ~80 % ab; Backend ergänzt Supabase; Linear MCP nur, wenn das Team Linear nutzt. Gleichzeitig aktiv: 3–7 Server.
Transportschicht: stdio oder HTTP?
MCP Client und Server sprechen JSON-RPC 2.0. 2026 dominieren zwei Transporte:
stdio (Standard Input/Output)
Der Host startet den Server als Subprozess, z. B. npx -y @modelcontextprotocol/server-github, Nachrichten über stdin/stdout. Vorteile: einfache Config, keine offenen Ports, ideal lokal. Nachteile: ein Prozess pro Server; volle Docker-Varianten können Cursors ~40-Tool-Limit sprengen.
Streamable HTTP / SSE (Remote)
Server remote oder offiziell gehostet; Client per HTTPS, oft OAuth. GitHub, Supabase, Linear, Sentry bieten Remote-Varianten. Vorteile: schlankere Tool-Sets, kein lokales Node/Docker, Token via OAuth. Nachteile: Netzabhängigkeit; in Unternehmensnetzen Egress prüfen.
| Szenario | Empfohlener Transport | Grund |
|---|---|---|
| Cursor + GitHub | Remote HTTP (OAuth) | Lokale Vollversion mit 40+ Tools sprengt Limit |
| Claude Code + CodeGraph | stdio (codegraph mcp) |
Lokaler Repo-Index, muss auf derselben Maschine laufen |
| Interne eigene Datenquelle | stdio oder internes HTTP | Daten bleiben im Netz, auditierbar |
| Teamweite SaaS-Anbindung | Remote HTTP | Keine lokale Abhängigkeit, zentrale Rechte |
Datenquellen in Cursor konfigurieren
Cursor: Settings → MCP oder ~/.cursor/mcp.json. Struktur: Objekt mcpServers, ein Eintrag pro Server.
Beispiel 1: Lokales stdio — Fetch MCP
{
"mcpServers": {
"fetch": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-fetch"]
}
}
}
Beispiel 2: Lokales stdio — GitHub MCP (PAT)
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxxxxxx"
}
}
}
}
Besser: offiziellen GitHub Remote MCP in der Cursor-UI (OAuth) — weniger Tools, kein PAT in JSON. PAT feingranular read-only; nie in git committen.
Beispiel 3: Context7 (Dokumentations-Datenquelle)
{
"mcpServers": {
"context7": {
"command": "npx",
"args": ["-y", "@upstash/context7-mcp"]
}
}
}
Nach dem Speichern Cursor neu starten; in Settings → MCP grüner „Connected“-Status. Im Agent-Modus: „Wie schreibt man Middleware in Next.js 15?“ — bei korrekter Config ruft das Modell Context7 auf statt zu halluzinieren.
Datenquellen in Claude Code konfigurieren
Claude Code: ~/.claude.json (Benutzer) oder .mcp.json im Projektroot. Struktur ähnlich wie Cursor, Pfade leicht anders.
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxxxxxx"
}
},
"codegraph": {
"command": "codegraph",
"args": ["mcp"]
}
}
}
Nach Änderungen Claude Code vollständig beenden und neu starten; im Repo claude ausführen, in der Session /mcp — verbundene Server und Tools prüfen. Erfolg: Tools mit Präfix mcp__github__*, mcp__codegraph__*.
Schritt-für-Schritt: Claude Code MCP Setup-Anleitung; Architektur-Überblick: MCP GitHub Files API Chain.
Projekt- vs. Benutzerebene: Wo schreibt man die Config?
| Speicherort | Cursor | Claude Code | Einsatz |
|---|---|---|---|
| Benutzer (global) | ~/.cursor/mcp.json |
~/.claude.json |
Persönliche Server: Context7, GitHub, Fetch |
| Projekt (Repo) | .cursor/mcp.json |
.mcp.json |
Team: CodeGraph, interne API, projekt-DB |
Best Practice: Credentials und persönliche Präferenzen auf Benutzerebene (nicht in git); repo-gebundene Quellen (CodeGraph-Pfad, Projekt-Docs-Server) in .mcp.json committen — Kollegen clone-and-go. Sensitive Tokens per Env-Var, z. B. "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "${GITHUB_PAT}" }, von Shell oder CI injiziert.
Abnahme: Der Agent nutzt die Datenquelle wirklich
Konfiguriert ≠ funktionsfähig. Checkliste:
- Verbindung — Cursor: Settings → MCP grün; Claude Code:
/mcpohne error. - Tools sichtbar — Ziel-Tool existiert, z. B.
mcp__github__search_code. - Smoke-Task — Klare Anweisung: „Liste open issues dieses Repos via GitHub MCP“ oder „Context7: neueste Prisma migrate-Syntax“.
- Fehler sichtbar — Ruft der Agent nichts auf: zu viele Tools, vage Aufgabe; ggf. „Bitte GitHub MCP verwenden“ im Prompt.
- Berechtigungsgrenze — Unberechtigte Aktion (Repo löschen) muss 403 liefern, nicht still „OK“.
Tool-Obergrenze
Cursor hat etwa 40 Tools Limit. Ein voller lokaler GitHub MCP kann 40+ Tools liefern — offiziellen Remote-Slim nutzen oder Server deaktivieren. Zu viele Tools: falsche Auswahl und verschwendete Kontext-Tokens.
Berechtigungen und Sicherheitsgrenzen
Jede Datenquelle öffnet dem Agent eine Tür nach außen. Prinzip: Standard read-only, Schreiben explizit, Produktion isolieren.
- GitHub PAT — Feingranular, nur Ziel-Repos; Issues/Contents read-only reicht für die meisten Dev-Szenarien.
- DB-DSN — Dev-DB mit read-only Rolle; nie produktionsfähige Schreib-DSN in Projekt-Config.
- Filesystem MCP —
argsauf Projektroot begrenzen, nicht$HOMEoder/. - Interne APIs — Staging read-only; Claude-Workspace ohne Produktions-
.env.
Strategie-Matrix und Angriffsketten: MCP mit minimalen Berechtigungen.
Typische Fehlerbehebung
| Symptom | Mögliche Ursache | Maßnahme |
|---|---|---|
| Leere Tool-Liste | JSON-Syntax; Host nicht neu gestartet | JSON validieren; Cursor / Claude Code komplett neu öffnen |
| GitHub 401 / 403 | PAT abgelaufen oder Repo nicht autorisiert | Token neu; Repo-Scope prüfen |
| CodeGraph leer | Nicht im Repo-Root gestartet; kein Index | codegraph init -i; cwd prüfen |
| Agent ruft MCP nie auf | Zu viele Tools; vage Aufgabe | Server reduzieren; Tool im Prompt nennen |
| npx-Timeout | Erster Download langsam; Node fehlt | Deps vorinstallieren; node -v |
FAQ
Was ist der Unterschied zwischen MCP und Function Calling?
Function Calling deklariert Tools in einem API-Request, oft an Modell/Anbieter gebunden. MCP ist persistente Server-Verbindung und offenes Protokoll — einmal konfiguriert, viele Clients, Community-Ökosystem. MCP ≈ standardisierte, auswechselbare Function-Calling-Runtime.
Kann ich einen eigenen MCP Server schreiben?
Ja. Offizielle SDKs für TypeScript (@modelcontextprotocol/sdk), Python u. a. Typisch: internes Wiki, Ticketing-API, Data Lake. Minimum: tools/list und tools/call, stdio — in Cursor debuggen.
Sendet MCP Daten an Modellanbieter?
Tool-Ergebnisse landen im Dialogkontext und gehen mit Ihrer Anfrage an die LLM-API des Hosts — das ist für Agent-Arbeit nötig. MCP „lädt“ nichts extra hoch; Risiko = welche Rechte Sie dem Server geben. Minimal privilege begrenzt die Fläche.
Welche Datenquellen zuerst in 2026?
Meist Context7 (Docs) + GitHub (Repo) + Playwright (Browser-Check). Backend: Supabase oder DBHub; Linear/Notion wenn das Team sie nutzt. Details: 20 MCP Server Empfehlungen.
ZavCloud Cloud Mac
MCP + Agent-Workflow auf echtem macOS durchspielen
Dedizierter Mac mini: lokaler CodeGraph-Index, Claude Code MCP-Kette, GitHub Runner CI — Entwicklung, Verifikation und Automatisierung auf einer Maschine.
Jetzt konfigurieren