MCP-Server

Ein MCP-Server ist eine Abhängigkeit, die mit Ihrem Modell spricht

Er läuft auf Ihrem Rechner mit Ihren Rechten, wie jedes Paket. Anders als ein Paket landen seine Tool-Beschreibungen im Kontext des Modells, wo sie als Anweisungen gelesen werden. MCP-Server-Sicherheit muss beide Hälften davon abdecken.

Beschreibungen sind Prompt, nicht Dokustdio-Server erben Ihre Umgebungein Schema kann sich nach der Freigabe ändern
Risiken

Sicherheitsrisiken von MCP-Servern, konkret

Nichts davon ist exotisch. Es folgt daraus, wie das Protokoll arbeitet, und daraus, wohin Leute ihre Zugangsdaten legen.

Tool Poisoning

Die Beschreibung ist Teil des Prompts

Name, Beschreibung und Parameter-Schema eines Werkzeugs gehen als Text an das Modell. Ein Server kann eine Beschreibung schreiben, die dem Modell sagt, es solle eine Datei lesen und ihren Inhalt als Argument übergeben, und das Modell kann das nicht von einer legitimen Anweisung unterscheiden.

Prompt-Pfad

Zugangsdaten-Übergabe

Ein lokaler Server bekommt, was Sie ihm geben

Lokale MCP-Server laufen über stdio als Kindprozesse. Sie erhalten die Umgebung, die Sie ihnen mitgeben, und das heißt meistens ein langlebiges Token in einer Variablen. Ab da sind die Zugangsdaten aus Ihrer Hand.

Schlüssel offen

Schema-Drift

Sie haben eine Version freigegeben, kein Verhalten

Tool-Beschreibungen und Schemata können sich beim nächsten Update ändern. Der Server, den Sie im März geprüft haben, ist nicht zwingend der Server, der im Juni läuft, und nichts im Protokoll macht diese Änderung laut.

stille Änderung

Token-Scope

Ein Token für das eine, ausgegeben für etwas anderes

Remote-Server halten Access Token in Ihrem Namen. Ein Server, der ein für eine andere Ressource ausgestelltes Token annimmt oder weiterreicht, wird zum bequemen Stellvertreter für Dinge, die Sie nie autorisiert haben.

Scope wächst

kein Nachweis

Prüfen können Sie nur, was Sie protokolliert haben

In den meisten Setups gibt es keinen Nachweis, welches MCP-Werkzeug mit welchen Argumenten gegen welchen Host lief. Ärger taucht nach dem Kalender anderer Leute auf, meist in einer Rechnung oder einer Breach-Mitteilung.

blinder Fleck

Der rote Faden: Das Modell ist es, das die Tool-Beschreibungen liest, und die Zugangsdaten liegen irgendwo, wo der Server sie lesen kann. Beheben Sie die zweite Hälfte, und die erste kann sich nicht mehr auszahlen.

Authentifizierung

MCP-Authentifizierung und OAuth 2.1

Lokale und entfernte MCP-Server authentifizieren sich völlig unterschiedlich, und dieser Unterschied wiegt schwerer, als die meisten Anleitungen vermuten lassen.

Lokal, über stdio

Es gibt keinen Authentifizierungsschritt. Der Server ist ein Kindprozess, den Sie gestartet haben, und er ist genauso vertrauenswürdig wie die Umgebung, mit der Sie ihn gestartet haben. Welches Token Sie exportiert haben, ist jetzt auch das Token des Servers.

Vertrauen = Ihre Umgebung

Entfernt, über HTTP

Das MCP-Autorisierungsprofil setzt auf OAuth 2.1 auf: Der Client findet den Autorisierungsserver, Sie stimmen im Browser zu, und der Client hält ein kurzlebiges Access Token mit einem Refresh Token dahinter.

Vertrauen = der Scope des Tokens

01 · Kurzlebig schlägt langlebig
Ein OAuth-Token, das Sie im Dashboard des Anbieters widerrufen können, ist eine bessere Ausgangslage als ein Personal Access Token, das vor zwei Monaten in eine Konfigurationsdatei geklebt wurde.
02 · Token sollten ihre Zielgruppe nennen
Das MCP-Profil erwartet ein Token, das an die Ressource gebunden ist, für die es ausgestellt wurde. Ein Server, der ein anderswo ausgestelltes Token akzeptiert, ist ein Entwurf, den Sie ablehnen sollten.
03 · Beim Refresh gehen Token verloren
Refresh Token leben länger als alles andere im Ablauf und landen meist als Klartext in einer Datei im Home-Verzeichnis. Sallyport versiegelt sie im Tresor und erneuert sie innerhalb der App.
Best Practices

Acht Prüfungen, bevor Sie einen MCP-Server installieren

Nichts davon braucht ein Produkt. Es ist die Prüfung, die Sie jeder Abhängigkeit geben würden, plus die zwei Fragen, die für MCP spezifisch sind.

  1. 01

    Version festnageln

    Installieren Sie eine bestimmte Version statt dessen, worauf latest heute zeigt. Ein Server, der sich selbst aktualisiert, kann seine Tool-Beschreibungen ändern, nachdem Sie sie freigegeben haben.

  2. 02

    Die Tool-Beschreibungen lesen, nicht das README

    Das README ist für Sie geschrieben. Die Beschreibungen sind für das Modell geschrieben. Lesen Sie die, die das Modell tatsächlich bekommt.

  3. 03

    Nehmen Sie an, dass ein lokaler Server alles behält

    Ein stdio-Server ist ein Kindprozess mit Ihren Rechten. Geben Sie ihm die engsten Zugangsdaten, die den Job noch erledigen, niemals ein Root-Token, das gerade herumliegt.

  4. 04

    OAuth vor eingefügtem Schlüssel

    Ein widerrufbares, kurzlebiges Token schlägt ein Personal Access Token in einer Umgebungsvariablen, auch wenn die Einrichtung fünf Minuten länger dauert.

  5. 05

    Prüfen, worauf das Token beschränkt ist

    Eine Ressource, eine Zielgruppe. Ein Server, der ein breit gefasstes Token will oder eines annimmt, das für etwas anderes ausgestellt wurde, sagt Ihnen schon, wie er sich verhalten wird.

  6. 06

    Ein Server, eine Aufgabe

    Fünf Dienste hinter einem einzigen MCP-Server zu bündeln konzentriert sämtliche Zugangsdaten in einem Prozess. Trennen Sie sie, und der schlimmste Fall wird kleiner.

  7. 07

    Die Aufrufe festhalten

    Wenn Sie nicht sagen können, was ein Server letzten Dienstag getan hat, vertrauen Sie ihm, statt es zu prüfen. Logs sind das, was aus einem Vorfall einen begrenzten Vorfall macht.

  8. 08

    Bei Updates erneut prüfen

    Behandeln Sie eine Änderung am Tool-Schema wie einen Dependency-Bump: Sehen Sie sich das Diff an. Diese Prüfung macht fast niemand, und genau deshalb funktioniert sie als Angriff.

Durch das Gate

Leiten Sie Ihre MCP-Server durch, statt ihnen zu vertrauen

Sallyport sitzt vor den MCP-Servern, mit denen Ihr Agent spricht. Ihre Aufrufe steigen dieselbe Leiter hinauf wie alles andere und landen im selben Journal.

  1. 01

    Eine Verbindung für den Agenten

    Claude Code, Cursor oder ein beliebiger MCP-Client verbindet sich mit Sallyport. Sallyport bietet http.request, ssh.exec und die vorgelagerten Server an, die Sie konfiguriert haben.

  2. 02

    Vorgelagerte Server bleiben dahinter

    Lokale stdio-Server und entfernte OAuth-2.1-Server werden beide durchgeleitet. Sallyport versiegelt ihre Token im Tresor und erneuert sie innerhalb der App.

  3. 03

    Jeder Aufruf steigt die Leiter hinauf

    Ein gesperrter Tresor verweigert den Aufruf. Ein Schlüssel mit Freigabe pro Aufruf zeigt eine Karte. Sonst deckt die Sitzungsfreigabe, die Sie schon erteilt haben, den Lauf ab.

  4. 04

    Das Journal hält es fest

    Verschlüsselt und per Hash verkettet, während es passiert, damit eine Antwort auf "was hat dieser Server letzten Dienstag getan" existiert, bevor Sie sie brauchen.

Eine ehrliche Grenze: Ein lokaler stdio-MCP-Server, den Sie einrichten, bekommt die Zugangsdaten, die Sie an ihn binden. Die Durchleitung gibt Ihnen Freigabe und Nachweis für seine Aufrufe; sie holt den Schlüssel nicht aus einem Prozess zurück, den Sie selbst gestartet haben.

FAQ

Fragen zur MCP-Server-Sicherheit

Was ist ein Tool-Poisoning-Angriff?
Ein MCP-Server schreibt Anweisungen in den Text, den das Modell als Tool-Metadaten liest: die Beschreibung, einen Parameternamen, eine Fehlermeldung. Das Modell nimmt das als Hinweis und handelt danach. Erkennung bringt hier wenig, weil eine untergeschobene Anweisung genauso aussieht wie eine legitime. Was hilft, ist dafür zu sorgen, dass ihr Befolgen an nichts Wertvolles herankommt.
Wie erkenne ich, ob ein MCP-Server bösartig ist?
Oft gar nicht, das ist die ehrliche Antwort. Sie können die Tool-Beschreibungen lesen, die das Modell bekommt, eine Version festnageln, die engsten funktionierenden Zugangsdaten vergeben und seine Aufrufe protokollieren. Diese vier Schritte machen aus einer Unbekannten eine begrenzte Unbekannte.
Bringt MCP eine Authentifizierung mit?
Für entfernte Server setzt das Autorisierungsprofil auf OAuth 2.1 mit Zustimmung im Browser und Access Token mit Scope. Für lokale Server über stdio gibt es überhaupt keinen Authentifizierungsschritt: Der Server ist ein Kindprozess, der mit Ihren Rechten läuft.
Wo liegen meine MCP-OAuth-Token?
Standardmäßig als Klartext in einer Datei im Home-Verzeichnis, also genau dort, wo Malware zum Abgreifen von Zugangsdaten zuerst nachsieht. Sallyport hält sie im verschlüsselten Tresor und führt den Refresh innerhalb der App aus.
Kann Sallyport einen MCP-Server in eine Sandbox stecken?
Nein, und wir behaupten nichts anderes. Sallyport kontrolliert und protokolliert, was die Aufrufe eines vorgelagerten Servers durch Sallyport tun. Es steckt den Serverprozess nicht in eine Sandbox, prüft keine Inhalte von Anfragen und schirmt den Host nicht per Firewall ab.

Setzen Sie ein Gate vor Ihre MCP-Server

Kostenloser Download. Apple Silicon, macOS 14 oder neuer. Kein Konto, niemals.

$brew install --cask olegsotnikov/tap/sallyport

macOS 14+ · Apple Silicon

Sallyport

Sallyport führt API-Aufrufe und SSH-Befehle für Ihren KI-Agenten aus. Die Schlüssel bleiben in einem lokalen Tresor auf Ihrem Mac; Sie geben jeden Lauf frei, und jede Aktion landet in einem versiegelten Journal.

© 2026 Sallyport · Open Source unter Apache-2.0 · Oleg Sotnikov