Skip to main content

Command Palette

Search for a command to run...

Anpassen

Model Context Protocol (MCP)

Was ist MCP?

Model Context Protocol (MCP) ermöglicht Cursor die Verbindung mit externen Tools und Datenquellen. Installiere und verwalte MCP-Server auf der Seite anpassen oder konfiguriere sie in mcp.json.

Warum MCP verwenden?

MCP verbindet Cursor mit externen Systemen und Daten. Statt deine Projektstruktur immer wieder zu erklären, integrierst du deine Tools direkt.

MCP-Server kannst du in jeder Sprache schreiben, die auf stdout ausgeben oder einen HTTP-Endpunkt bereitstellen kann – etwa Python, JavaScript oder Go.

Durchsuche offizielle Plugins im Cursor Marketplace. Community-Plugins und MCP-Server findest du auf cursor.directory.

So funktioniert es

MCP-Server stellen über das Protokoll Funktionen bereit und verbinden Cursor mit externen Tools oder Datenquellen.

Cursor unterstützt drei Transportmethoden:

TransportAusführungsumgebungBereitstellungNutzerEingabeAuthentifizierung
stdioLokalVon Cursor verwaltetEinzelner NutzerShell-BefehlManuell
SSELokal/RemoteAls Server bereitstellenMehrere NutzerURL eines SSE-EndpunktsOAuth
Streamable HTTPLokal/RemoteAls Server bereitstellenMehrere NutzerURL eines HTTP-EndpunktsOAuth

Unterstützung für Protokolle und Erweiterungen

Cursor unterstützt diese MCP-Protokollfunktionen und -erweiterungen:

FunktionUnterstützungBeschreibung
ToolsUnterstütztFunktionen, die das AI-Modell ausführen kann
PromptsUnterstütztVorlagenbasierte Nachrichten und Workflows für Nutzer
ResourcesUnterstütztStrukturierte Datenquellen, die gelesen und referenziert werden können
RootsUnterstütztVom Server initiierte Abfragen zu URI- oder Dateisystemgrenzen
ElicitationUnterstütztVom Server initiierte Anfragen nach zusätzlichen Informationen von Nutzern
Apps (Erweiterung)UnterstütztInteraktive UI-Ansichten, die von MCP-Tools zurückgegeben werden

MCP-Apps

Cursor unterstützt die MCP-Apps-Erweiterung. MCP-Tools können neben der üblichen Toolausgabe auch eine interaktive UI zurückgeben.

MCP-Apps folgen dem Prinzip der schrittweisen Erweiterung. Kann ein Host die App-UI nicht rendern, funktioniert dasselbe Tool weiterhin über normale MCP-Antworten.

MCP-Server installieren

Installation mit einem Klick

Im Cursor Marketplace finden Sie offizielle Plugins, die Sie über anpassen mit einem Klick installieren können. Benutzerdefinierte Server konfigurieren Sie mit mcp.json. Community-Plugins und MCP-Server finden Sie auf cursor.directory. Klicken Sie bei einem Marketplace-Eintrag auf „Add to Cursor“, um ihn zu installieren und sich per OAuth zu authentifizieren.

Team-Admins können MCP-Server auch über einen Team-Marketplace verteilen. Vom Team bereitgestellte Server werden unter „anpassen“ neben persönlichen und Workspace-MCP-Servern angezeigt.

mcp.json verwenden

Konfigurieren Sie benutzerdefinierte MCP-Server mit einer JSON-Datei:

CLI Server - Node.js
{  "mcpServers": {    "server-name": {      "command": "npx",      "args": ["-y", "mcp-server"],      "env": {        "API_KEY": "value"      }    }  }}
CLI Server - Python
{  "mcpServers": {    "server-name": {      "command": "python",      "args": ["mcp-server.py"],      "env": {        "API_KEY": "value"      }    }  }}
Remote-Server
// MCP-Server mit HTTP oder SSE – läuft auf einem Server{  "mcpServers": {    "server-name": {      "url": "http://localhost:3000/mcp",      "headers": {        "API_KEY": "value"      }    }  }}

Statisches OAuth für Remote-Server

Für MCP-Server, die OAuth verwenden, kannst du in mcp.json statische OAuth-Client-Zugangsdaten anstelle einer dynamischen Client-Registrierung angeben. Verwende dies, wenn:

  • der MCP-Anbieter dir eine feste Client ID bereitstellt (und optional ein Client Secret)
  • der Anbieter die Freigabe einer Redirect-URL erfordert (z. B. Figma, Linear)
  • der Anbieter OAuth 2.0 Dynamic Client Registration nicht unterstützt

Füge Remote-Server-Einträgen, die url verwenden, ein auth-Objekt hinzu:

Remote-Server with Static OAuth
{  "mcpServers": {    "oauth-server": {      "url": "https://api.example.com/mcp",      "auth": {        "CLIENT_ID": "your-oauth-client-id",        "CLIENT_SECRET": "your-client-secret",        "scopes": ["read", "write"]      }    }  }}
FeldErforderlichBeschreibung
CLIENT_IDJaOAuth 2.0 Client ID des MCP-Anbieters
CLIENT_SECRETNeinOAuth 2.0 Client Secret (wenn der Anbieter vertrauliche Clients verwendet)
scopesNeinAnzufordernde OAuth-Scopes. Wenn nicht angegeben, verwendet Cursor /.well-known/oauth-authorization-server, um scopes_supported zu ermitteln

Statische Redirect-URL

Cursor verwendet feste OAuth-Redirect-URLs für MCP-Server. Registriere den Callback für jede Oberfläche, über die sich deine Nutzer anmelden:

https://www.cursor.com/agents/mcp/oauth/callbackhttp://localhost:8787/callback
  • Web und Cursor-Agent: https://www.cursor.com/agents/mcp/oauth/callback
  • Desktop-App: http://localhost:8787/callback

Wenn Nutzer sich sowohl über das Web als auch über die Desktop-App authentifizieren, registrieren Sie beim Konfigurieren der OAuth-App des MCP-Anbieters beide URLs als zulässige Redirect-URIs. Der Server wird anhand des OAuth-Parameters state identifiziert. Daher funktionieren diese Redirect-URLs für alle MCP-Server.

Kombination mit Konfigurationsinterpolation

auth-Werte unterstützen dieselbe Interpolation wie andere Felder:

{  "mcpServers": {    "oauth-server": {      "url": "https://api.example.com/mcp",      "auth": {        "CLIENT_ID": "${env:MCP_CLIENT_ID}",        "CLIENT_SECRET": "${env:MCP_CLIENT_SECRET}"      }    }  }}

Verwende Umgebungsvariablen für Client ID und Client Secret, anstatt sie fest zu codieren.

STDIO-Server-Konfiguration

Konfigurieren Sie für STDIO-Server (lokale Befehlszeilenserver) die folgenden Felder in Ihrer mcp.json:

FeldErforderlichBeschreibungBeispiele
typeJaVerbindungstyp des Servers"stdio"
commandJaBefehl zum Starten der Serveranwendung. Er muss über den Systempfad verfügbar sein oder den vollständigen Pfad enthalten."npx", "node", "python", "docker"
argsNeinArray von Argumenten, die an den Befehl übergeben werden["server.py", "--port", "3000"]
envNeinUmgebungsvariablen für den Server{"API_KEY": "${env:api-key}"}
envFileNeinPfad zu einer Umgebungsdatei zum Laden weiterer Variablen".env", "${workspaceFolder}/.env"

Verwendung der Extension-API

Zur programmgesteuerten Registrierung von MCP-Servern bietet Cursor eine Extension-API, die eine dynamische Konfiguration ermöglicht, ohne mcp.json-Dateien zu ändern. Dies ist besonders nützlich in Enterprise-Umgebungen und für automatisierte Setup-Workflows.

Referenz zur Extension-API

MCP-Server programmgesteuert registrieren mit vscode.cursor.mcp.registerServer()


Speicherorte für Konfigurationen

Projektkonfiguration

Erstelle .cursor/mcp.json in deinem Projekt für projektspezifische Tools.

Globale Konfiguration

Erstelle ~/.cursor/mcp.json in deinem Home-Verzeichnis für Tools, die überall verfügbar sind.

Konfigurationsinterpolation

Verwende Variablen in den Werten von mcp.json. Cursor löst Variablen in diesen Feldern auf: command, args, env, url und headers.

Unterstützte Syntax:

  • ${env:NAME} Umgebungsvariablen
  • ${userHome} Pfad zu deinem Home-Ordner
  • ${workspaceFolder} Projektstammverzeichnis (der Ordner, der .cursor/mcp.json enthält)
  • ${workspaceFolderBasename} Name des Projektstammverzeichnisses
  • ${pathSeparator} und ${/} Pfadtrennzeichen des Betriebssystems

Beispiele

{  "mcpServers": {    "local-server": {      "command": "python",      "args": ["${workspaceFolder}/tools/mcp_server.py"],      "env": {        "API_KEY": "${env:API_KEY}"      }    }  }}
{  "mcpServers": {    "remote-server": {      "url": "https://api.example.com/mcp",      "headers": {        "Authorization": "Bearer ${env:MY_SERVICE_TOKEN}"      }    }  }}

Authentifizierung

MCP-Server verwenden Umgebungsvariablen zur Authentifizierung. Übergeben Sie API-Schlüssel und Token über die Konfiguration.

Cursor unterstützt OAuth für Server, die OAuth erfordern.

Enterprise-Admin-Steuerelemente

MCP-Verteilung und MCP-Richtlinien werden separat konfiguriert. Team-Admins können gemeinsame MCP-Server verteilen. Enterprise-Admins können MCP-Richtlinien konfigurieren.

Verteilung von Team-MCP-Servern

Konfigurieren Sie gemeinsame Team-MCP-Server unter Dashboard > Integrations & MCP. Diese Server stehen Cloud Agents zur Verfügung.

Um einen vorhandenen eigenständigen Team-MCP-Server im Agent Window, in der IDE und in der CLI verfügbar zu machen, wählen Sie unter Team MCP Servers Add to Team Marketplace aus. Cursor verknüpft den Server mit dem Standard-Team-Marketplace, ohne den Zugriff der Cloud Agents zu unterbrechen. Teammitglieder können ihn anschließend unter anpassen installieren und konfigurieren.

Durch die Verknüpfung eines MCP-Servers mit einem Marketplace wird er nicht für alle installiert oder aktiviert. Konfigurieren Sie Marketplace-Zugriff und die Plugin-Installationsmodi unter Dashboard > Plugins. Den vollständigen Ablauf finden Sie unter Vorhandene Team-MCP migrieren.

MCP-Zulassungsliste

Enterprise-Admins können im Cursor-Dashboard festlegen, welche MCP-Server Nutzer ausführen dürfen. Öffnen Sie Team Settings > MCP-Konfiguration, um festzulegen, welche Server und Tools das Team ausführen darf. Das Hinzufügen zu einer Zulassungsliste genehmigt eine MCP-Konfiguration. Der Server wird dadurch weder bereitgestellt noch installiert.

Verwenden Sie die MCP-Zulassungsliste, um genehmigte Server zu definieren:

  • Befehlseinträge genehmigen lokale stdio-MCP-Server anhand von Befehlsmustern.
  • URL-Einträge genehmigen Remote-HTTP/SSE-MCP-Server anhand von URL-Eintragsmustern.
  • Tool-Zulassungslisten beschränken, welche Tools eines genehmigten Servers automatisch ausgeführt werden können. Lassen Sie eine Tool-Zulassungsliste leer, um alle Tools dieses Servers zuzulassen.

Netzwerksteuerung

Remote-MCP-URLs sind auf das konfigurierte URL-Muster beschränkt.

Lokale befehlsbasierte MCP-Server verwenden den jeweils für sie festgelegten Netzwerkmodus:

  • Alle zulassen: ausgehenden Netzwerkzugriff zulassen.
  • Zulassungsliste: nur aufgeführte Ziele zulassen.
  • Alles verweigern: ausgehenden Netzwerkzugriff blockieren.
  • Keine Sandbox: ohne Befehls- oder Netzwerk-Sandbox ausführen.

Nutzer-MCP-Erweiterungen

Admins können Nutzern erlauben, eigene MCP-Server außerhalb der von Admins definierten Befehls- oder URL-Muster zu konfigurieren. Für Nutzer-MCPs, die keinem von Admins definierten Muster entsprechen, kann die Netzwerk-Sperrliste für Nutzer-MCPs passende Netzwerkziele blockieren.

MCP im Chat verwenden

Cursor verwendet die unter Available Tools aufgeführten MCP-Tools automatisch, wenn sie relevant sind. Dazu gehört auch der Plan-Modus. Bitte ein bestimmtes Tool namentlich an oder beschreibe, was du brauchst. Aktiviere oder deaktiviere MCP-Server über anpassen in der Seitenleiste.

Tool-Freigabe

Cursor bittet standardmäßig um Freigabe, bevor MCP-Tools verwendet werden. Klicken Sie auf den Pfeil neben dem Tool-Namen, um die Argumente anzuzeigen.

Run Mode

MCP folgt denselben Run Modes wie Terminalbefehle. Im Modus Auto-review werden MCP-Tools auf der Allowlist sofort ausgeführt, während alles andere über den Klassifikator geleitet wird.

Tool-Antwort

Cursor zeigt die Antwort im Chat mit aufklappbaren Ansichten der Argumente und Antworten:

Bilder als Kontext

MCP-Server können Bilder wie Screenshots oder Diagramme zurückgeben. Geben Sie diese als Base64-codierte Zeichenfolgen zurück:

const RED_CIRCLE_BASE64 = "/9j/4AAQSkZJRgABAgEASABIAAD/2w...";// ^ vollständiges Base64 zur besseren Lesbarkeit gekürztserver.tool("generate_image", async (params) => {  return {    content: [      {        type: "image",        data: RED_CIRCLE_BASE64,        mimeType: "image/jpeg",      },    ],  };});

Implementierungsdetails findest du in diesem Beispielserver. Cursor fügt zurückgegebene Bilder dem Chat hinzu. Wenn das Modell Bilder unterstützt, analysiert es sie.

Sicherheitsaspekte

Beachte bei der Installation von MCP-Servern folgende Sicherheitspraktiken:

  • Quelle überprüfen: Installiere MCP-Server nur von vertrauenswürdigen Entwicklern und aus vertrauenswürdigen Repositories.
  • Permissions überprüfen: Prüfe, auf welche Daten und APIs der Server zugreifen kann.
  • API-Schlüssel beschränken: Verwende eingeschränkte API-Schlüssel mit den minimal erforderlichen Permissions.
  • Code prüfen: Prüfe bei kritischen Integrationen den Quellcode des Servers.

Beachte, dass MCP-Server auf externe Dienste zugreifen und in deinem Namen Code ausführen können. Verstehe stets, was ein Server tut, bevor du ihn installierst.

Praxisbeispiele

Praktische Anwendungsbeispiele für MCP:

  • Xcode-Integration — Verbinde Cursor mit Xcode 26.3+ für Builds, Tests, SwiftUI-Vorschauen und die Suche in der Apple-Dokumentation
  • Leitfaden zur Webentwicklung — Integriere Linear, Figma und Browser-Tools in deinen Entwicklungsworkflow

FAQ

MCP-Server verbinden Cursor mit externen Tools wie Google Drive, Notion und anderen Diensten, um Dokumente und Anforderungen in deinen Coding-Workflow einzubinden.

MCP-Logs anzeigen:

  1. Öffne das Output-Panel in Cursor (Cmd+Shift+UCtrl+Shift+U)
  2. Wähle im Dropdown „MCP Logs“ aus
  3. Überprüfe Verbindungsfehler, Authentifizierungsprobleme oder Serverabstürze

Die Logs zeigen die Serverinitialisierung, Tool-Aufrufe und Fehlermeldungen.

Ja! Du kannst Server ein- oder ausschalten, ohne sie zu entfernen:

  1. Öffne anpassen in der Seitenleiste
  2. Suche den MCP-Server, den du ändern möchtest
  3. Verwende den Toggle, um ihn zu aktivieren oder zu deaktivieren

Deaktivierte Server werden nicht geladen und erscheinen nicht im Chat. Das ist nützlich für die Fehlerbehebung oder um die Anzahl der Tools zu reduzieren.

Wenn ein MCP-Server ausfällt:

  • Cursor zeigt eine Fehlermeldung im Chat an
  • Der Tool-Aufruf wird als fehlgeschlagen markiert
  • Du kannst den Vorgang wiederholen oder die Logs überprüfen
  • Andere MCP-Server funktionieren weiterhin normal

Cursor isoliert Serverfehler, damit ein Server andere nicht beeinträchtigt.

Für npm-basierte Server:

  1. Entferne den Server aus anpassen
  2. Leere den npm-Cache: npm cache clean --force
  3. Füge den Server erneut hinzu, um die neueste Version zu erhalten

Bei benutzerdefinierten Servern aktualisiere deine lokalen Dateien und starte Cursor neu.

Ja, aber beachte die Best Practices für Sicherheit:

  • Verwende Umgebungsvariablen für Secrets und hinterlege sie nie direkt im Code
  • Führe sensible Server lokal mit stdio-Transport aus
  • Beschränke API-Key-Permissions auf das erforderliche Minimum
  • Überprüfe den Server-Code, bevor du ihn mit sensiblen Systemen verbindest
  • Erwäge, Server in isolierten Umgebungen auszuführen