Spezifikation (Aktuell)

Protokoll-Revision: 2024-11-05

Das Model Context Protocol (MCP) ist ein offenes Protokoll, das nahtlose Integration zwischen LLM-Anwendungen und externen Datenquellen und Tools ermöglicht. Ob Sie eine KI-gestützte IDE entwickeln, eine Chat-Schnittstelle verbessern oder benutzerdefinierte KI-Workflows erstellen, MCP bietet einen standardisierten Weg, LLMs mit dem Kontext zu verbinden, den sie benötigen.

Diese Spezifikation definiert die autoritativen Protokollanforderungen, basierend auf dem TypeScript-Schema in schema.ts.

Für Implementierungsleitfäden und Beispiele besuchen Sie modelcontextprotocol.info.

Die Schlüsselwörter “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “NOT RECOMMENDED”, “MAY” und “OPTIONAL” in diesem Dokument sind zu interpretieren wie in BCP 14 [RFC2119] [RFC8174] beschrieben, wenn und nur wenn sie in Großbuchstaben erscheinen, wie hier gezeigt.

Überblick

MCP bietet einen standardisierten Weg für Anwendungen:

  • Kontextinformationen mit Sprachmodellen teilen
  • Werkzeuge und Fähigkeiten KI‑Systemen bereitstellen
  • Komponierbare Integrationen und Workflows erstellen

Das Protokoll verwendet JSON-RPC 2.0 Nachrichten zur Etablierung der Kommunikation zwischen:

  • Hosts: LLM‑Anwendungen, die Verbindungen initiieren
  • Clients: Konnektoren innerhalb der Host‑Anwendung
  • Servers: Dienste, die Kontext und Fähigkeiten bereitstellen

MCP nimmt einige Inspirationen vom Language Server Protocol, das standardisiert, wie Unterstützung für Programmiersprachen in einem ganzen Ökosystem von Entwicklungstools hinzugefügt wird. Auf ähnliche Weise standardisiert MCP, wie zusätzlicher Kontext und Tools in das Ökosystem von KI-Anwendungen integriert werden.

Wichtige Details

Basisprotokoll

  • Nachrichtenformat JSON‑RPC
  • Zustandsbehaftete Verbindungen
  • Aushandlung der Fähigkeiten zwischen Server und Client

Funktionen

Server bieten Clients eine der folgenden Funktionen:

  • Resources: Kontext und Daten zur Nutzung durch Benutzer oder KI‑Modell
  • Prompts: Vorlagenbasierte Nachrichten und Workflows für Benutzer
  • Tools: Vom KI‑Modell auszuführende Funktionen

Clients können Servern die folgende Funktion anbieten:

  • Sampling: Vom Server initiierte agentische Verhaltensweisen und rekursive LLM‑Interaktionen

Zusätzliche Hilfsprogramme

  • Konfiguration
  • Fortschrittsverfolgung
  • Abbruch
  • Fehlerberichterstattung
  • Protokollierung

Sicherheit und Vertrauen & Sicherheit

Das Model Context Protocol ermöglicht mächtige Fähigkeiten durch beliebigen Datenzugriff und Code-Ausführungspfade. Mit dieser Macht kommen wichtige Sicherheits- und Vertrauens- überlegungen, die alle Implementierer sorgfältig berücksichtigen müssen.

Kernprinzipien

  1. Einwilligung und Kontrolle der Benutzer

    • Benutzer müssen allen Datenzugriffen und Aktionen ausdrücklich zustimmen und sie verstehen
    • Benutzer behalten die Kontrolle darüber, welche Daten geteilt werden und welche Aktionen durchgeführt werden
    • Implementierer sollten klare Oberflächen zum Prüfen und Autorisieren von Aktionen bereitstellen
  2. Datenschutz

    • Hosts müssen vor der Offenlegung von Benutzerdaten gegenüber Servern die ausdrückliche Zustimmung der Benutzer einholen
    • Hosts dürfen Ressourcen‑Daten ohne Einwilligung der Benutzer nicht anderweitig übertragen
    • Benutzerdaten sollten mit geeigneten Zugriffskontrollen geschützt werden
  3. Tool‑Sicherheit

    • Werkzeuge entsprechen beliebiger Codeausführung und müssen mit der gebotenen Vorsicht behandelt werden
    • Hosts müssen vor dem Aufruf eines Werkzeugs die ausdrückliche Zustimmung der Benutzer einholen
    • Benutzer sollten verstehen, was jedes Werkzeug tut, bevor sie seine Nutzung autorisieren
  4. LLM‑Sampling‑Kontrollen

    • Benutzer müssen Sampling‑Anfragen eines LLM ausdrücklich genehmigen
    • Benutzer sollten kontrollieren:
      • Ob Sampling überhaupt stattfindet
      • Den tatsächlichen Prompt, der gesendet wird
      • Welche Ergebnisse der Server sehen darf
    • Das Protokoll begrenzt absichtlich die Server‑Sichtbarkeit auf Prompts

Implementierungsrichtlinien

Obwohl MCP selbst diese Sicherheitsprinzipien nicht auf Protokollebene durchsetzen kann, SOLLTEN Implementierer:

  1. Robuste Zustimmungs‑ und Autorisierungsabläufe in Anwendungen integrieren
  2. Sicherheitsimplikationen klar dokumentieren
  3. Geeignete Zugriffskontrollen und Datenschutzmaßnahmen implementieren
  4. Sicherheits‑Best‑Practices in Integrationen befolgen
  5. Datenschutzimplikationen in der Feature‑Gestaltung berücksichtigen

Erfahren Sie mehr

Erkunden Sie die detaillierte Spezifikation für jede Protokollkomponente: