MCP (Model Context Protocol) ist ein Protokoll, das LLMs den Zugriff auf eigene Tools und Dienste ermöglicht. Ein MCP-Client (hier: Cascade) kann Anfragen an MCP-Server stellen, um die von ihnen bereitgestellten Tools zu nutzen. Cascade bietet jetzt eine native MCP-Integration, sodass Sie Ihre eigene Auswahl an MCP-Servern für Cascade einbinden können. Weitere Informationen finden Sie in den offiziellen MCP‑Docs.
Enterprise-Nutzer müssen dies in den Einstellungen manuell aktivieren

Hinzufügen eines neuen MCP-Plugins

Neue MCP-Plugins können über den Plugin Store hinzugefügt werden. Diesen erreichen Sie, indem Sie im Cascade-Panel oben rechts auf das Symbol „Plugins“ klicken oder über „Windsurf Settings“ > „Cascade“ > „Plugins“. Wenn Sie das gewünschte MCP-Plugin nicht finden, können Sie es manuell hinzufügen, indem Sie die Rohdatei „mcp_config.json“ bearbeiten. Offizielle MCP-Plugins werden mit einem blauen Häkchen angezeigt, was darauf hinweist, dass sie vom jeweiligen Dienstanbieter stammen. Wenn Sie ein Plugin öffnen, klicken Sie einfach auf „Install“, um den Server und seine Tools für Cascade verfügbar zu machen. Windsurf unterstützt zwei Transporttypen für MCP-Server: „stdio“ und „http“. Für „http“-Server sollte die URL dem Endpoint entsprechen und etwa so aussehen: „https://<your-server-url>/mcp“. Wir unterstützen außerdem streambaren HTTP-Transport und MCP-Authentifizierung.
Stellen Sie sicher, dass Sie nach dem Hinzufügen eines neuen MCP-Plugins die Schaltfläche „Aktualisieren“ drücken.

Konfiguration von MCP-Tools

Jedes Plugin hat Zugriff auf eine bestimmte Anzahl von Tools. Cascade ist auf insgesamt 100 verfügbare Tools zu jedem Zeitpunkt begrenzt. Auf Plugin-Ebene kannst du zum Tab „Tools“ navigieren und die gewünschten Tools aktivieren/deaktivieren. Alternativ kannst du in den „Windsurf Settings“ auf die Schaltfläche „Manage plugins“ klicken.

mcp_config.json

Die Datei ~/.codeium/windsurf/mcp_config.json ist eine JSON-Datei mit einer Liste von Servern, zu denen sich Cascade verbinden kann. Das JSON sollte demselben Schema wie die Konfigurationsdatei von Claude Desktop folgen. Hier ist eine Beispielkonfiguration, die einen einzelnen Server für GitHub einrichtet:
{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-github"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "<IHR_PERSÖNLICHES_ZUGANGSTOKEN>"
      }
    }
  }
}
Es ist wichtig zu beachten, dass die Konfiguration für HTTP-Server leicht abweicht und ein serverUrl-Feld erfordert. Hier ist eine Beispielkonfiguration für einen HTTP-Server:
{
  "mcpServers": {
    "figma": {
      "serverUrl": "<ihre-server-url>/mcp"
    }
  }
}
Für den MCP‑Server im Figma Dev Mode: Stelle sicher, dass du die Figma‑Desktop‑App auf die neueste Version aktualisiert hast, um den neuen „/mcp“-Endpunkt nutzen zu können.
Stelle sicher, dass du die erforderlichen Argumente und Umgebungsvariablen für die Server angibst, die du verwenden möchtest. Siehe das offizielle MCP‑Server‑Referenz‑Repository oder OpenTools für einige Beispielserver.

Admin-Kontrollen (Teams & Enterprise)

Team-Admins können den MCP-Zugriff für ihr Team ein- oder ausschalten und genehmigte MCP-Server auf eine Allowlist setzen, damit ihr Team sie verwenden kann:

MCP-Teameinstellungen

Konfigurierbare MCP-Einstellungen für Ihr Team.
Der obige Link funktioniert nur, wenn Sie Admin-Rechte für Ihr Team haben.
Standardmäßig können Nutzer innerhalb eines Teams ihre eigenen MCP-Server konfigurieren. Sobald Sie jedoch auch nur einen MCP-Server auf die Allowlist setzen, werden alle nicht allowlisteten Server für Ihr Team blockiert.

Funktionsweise des Server-Matchings

Wenn Sie einen MCP-Server auf die Allowlist setzen, nutzt das System Regex-Musterabgleich mit den folgenden Regeln:
  • Vollständiger Zeichenkettenabgleich: Alle Muster werden automatisch verankert (mit ^(?:pattern)$ umschlossen), um Teiltreffer zu verhindern
  • Command-Feld: Muss exakt oder gemäß Ihrem Regex-Muster übereinstimmen
  • Arguments-Array: Jedes Argument wird einzeln mit seinem jeweiligen Muster abgeglichen
  • Array-Länge: Die Anzahl der Argumente muss zwischen Allowlist und Benutzerkonfiguration exakt übereinstimmen
  • Sonderzeichen: Zeichen wie $, ., [, ], (, ) haben in Regex eine besondere Bedeutung und sollten mit \ maskiert werden, wenn Sie eine wörtliche Übereinstimmung wünschen

Konfigurationsoptionen

Admin-Whitelist-Konfiguration:
  • Server-ID: github-mcp-server
  • Server Config (JSON): (leer lassen)
{}
Zugehörige Benutzerkonfiguration (mcp_config.json):
{
  "mcpServers": {
    "github-mcp-server": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "GITHUB_PERSONAL_ACCESS_TOKEN",
        "ghcr.io/github/github-mcp-server"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_your_token_here"
      }
    }
  }
}
So können Nutzer den GitHub-MCP-Server mit jeder gültigen Konfiguration installieren, solange die Server-ID mit dem Eintrag im Plugin-Store übereinstimmt.
Admin-Whitelist-Konfiguration:
  • Server-ID: github-mcp-server
  • Server Config (JSON):
{
  "command": "docker",
  "args": [
    "run",
    "-i",
    "--rm",
    "-e",
    "GITHUB_PERSONAL_ACCESS_TOKEN",
    "ghcr.io/github/github-mcp-server"
  ],
  "env": {
    "GITHUB_PERSONAL_ACCESS_TOKEN": ""
  }
}
Zugehörige Benutzerkonfiguration (mcp_config.json):
{
  "mcpServers": {
    "github-mcp-server": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "GITHUB_PERSONAL_ACCESS_TOKEN",
        "ghcr.io/github/github-mcp-server"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_your_token_here"
      }
    }
  }
}
Nutzer müssen genau diese Konfiguration verwenden – jede Abweichung in command oder args wird blockiert. Der Abschnitt env darf abweichende Werte enthalten.
Admin-Whitelist-Konfiguration:
  • Server-ID: python-mcp-server
  • Server Config (JSON):
{
  "command": "python3",
  "args": ["/.*\\.py", "--port", "[0-9]+"]
}
Zugehörige Benutzerkonfiguration (mcp_config.json):
{
  "mcpServers": {
    "python-mcp-server": {
      "command": "python3",
      "args": ["/home/user/my_server.py", "--port", "8080"],
      "env": {
        "PYTHONPATH": "/home/user/mcp"
      }
    }
  }
}
Dieses Beispiel erlaubt Nutzern Flexibilität bei gleichzeitiger Wahrung der Sicherheit:
  • Der Regex /.*\\.py entspricht jedem Python-Dateipfad wie /home/user/my_server.py
  • Der Regex [0-9]+ entspricht jeder numerischen Portangabe wie 8080 oder 3000
  • Nutzer können Dateipfade und Ports anpassen, während Admins sicherstellen, dass nur Python-Skripte ausgeführt werden

Häufige Regex-Muster

MusterEntsprichtBeispiel
.*Beliebige Zeichenkette/home/user/script.py
[0-9]+Beliebige Zahl8080, 3000
[a-zA-Z0-9_]+Alphanumerisch + Unterstrichapi_key_123
\\$HOMEWörtliches $HOME$HOME (nicht expandiert)
\\.pyWörtliches .pyscript.py
\\[cli\\]Wörtliches [cli]mcp[cli]

Anmerkungen

Richtlinien für die Admin-Konfiguration

  • Umgebungsvariablen: Der Abschnitt env wird nicht per Regex abgeglichen und kann von Nutzern frei konfiguriert werden
  • Deaktivierte Tools: Das Array disabledTools wird separat behandelt und ist nicht Teil der Whitelist-Prüfung
  • Groß-/Kleinschreibung: Alle Prüfungen sind case-sensitiv
  • Fehlerbehandlung: Ungültige Regex-Muster werden protokolliert und führen zur Zugriffsverweigerung
  • Tests: Testen Sie Ihre Regex-Muster sorgfältig – zu restriktive Muster können legitime Anwendungsfälle blockieren

Fehlerbehebung

Wenn Nutzer melden, dass ihre MCP-Server nach dem Whitelisting nicht funktionieren:
  1. Auf exakte Übereinstimmung prüfen: Stellen Sie sicher, dass das Whitelist-Muster genau der Konfiguration des Nutzers entspricht
  2. Regex-Escaping prüfen: Sonderzeichen müssen ggf. maskiert werden (z. B. \. für einen Punkt als Literale)
  3. Logs prüfen: Ungültige Regex-Muster werden mit Warnungen protokolliert
  4. Muster testen: Verwenden Sie einen Regex-Tester, um zu überprüfen, dass Ihre Muster wie erwartet funktionieren
Denken Sie daran: Sobald Sie einen Server auf die Whitelist setzen, werden alle anderen Server für Ihre Teammitglieder automatisch blockiert.

Allgemeine Informationen

  • Da MCP-Toolaufrufe Code ausführen können, der von beliebigen Server-Implementierenden geschrieben wurde, übernehmen wir keine Haftung für Ausfälle von MCP-Toolaufrufen. Zur Klarstellung:
  • Derzeit unterstützen wir die Tools und Resources eines MCP-Servers, nicht Prompts.