FACT COPY · DE
Faktenfassung: Interaktiver MCP-Tool-Explorer
Untersuchen Sie Discovery, Schema, Aufruf, Ergebnis und Fehlerbehandlung eines MCP-Tools anhand eines kontrollierten Travel-Beispiels.
Originalseite: https://travel-mcp.com/de/forschung/tool-explorer/
Sachliche Zusammenfassung
Der Explorer zerlegt einen Tool-Aufruf in seine protokollarischen, fachlichen und sicherheitsrelevanten Teile. Er führt keine reale Buchung aus und überträgt keine Daten.
Spezifikationen und Kerndaten
- Spezifikationsbasis
- MCP 2025-11-25
- Protokoll
- JSON-RPC 2.0
- Schema-Standard
- JSON Schema 2020-12 (Standardwert)
- Demomodus
- lokal, ohne Netzwerkzugriff
- Travel-Beispiel
- read-only offer_search
Explorer: vom Capability Listing zum Ergebnis
Wählen Sie im interaktiven Labor eine Phase. Die Darstellung zeigt die Nachricht, den Verantwortungsbereich und die Kontrollen, die außerhalb des reinen Protokollformats erforderlich bleiben.
1. Discovery und Capability Negotiation
Nach initialize verhandeln Client und Server Protokollversion und Capabilities. Ein Server, der Tools anbietet, deklariert die tools-Capability. tools/list liefert anschließend Tooldefinitionen. Discovery bedeutet nicht Berechtigung zur Ausführung: Sichtbarkeit, Autorisierung und fachliche Zulässigkeit sind getrennte Entscheidungen.
Eine Tooldefinition besteht mindestens aus name, description und inputSchema. outputSchema ist optional. Annotationen dürfen Clients nicht ungeprüft als Vertrauenssignal behandeln, weil sie vom Server stammen.
2. Schema und fachliche Semantik
JSON Schema prüft Struktur, Datentypen, Wertebereiche und Pflichtfelder. Es beweist weder fachliche Richtigkeit noch Aktualität. Ein departureDate kann syntaktisch ein ISO-Datum und dennoch fachlich unzulässig sein, wenn es in der Vergangenheit liegt oder außerhalb des Fahrplans.
Travel-Tools sollten fachliche Schlüssel eindeutig definieren: Ortskennungen mit Namensraum, Zeitpunkte mit Zeitzone, Währungen nach ISO 4217 und Preise mit Bestandteilen. Freitextfelder dürfen keine verdeckten Steuerparameter ersetzen.
- additionalProperties: false begrenzt unerwartete Eingaben.
- Enumerationen sind nur für stabile, kontrollierte Wertemengen geeignet.
- Personen- und Zahlungsdaten gehören nicht in Suchparameter, wenn sie für die Suche nicht erforderlich sind.
- Toolbeschreibungen müssen Seiteneffekte und Voraussetzungen offenlegen.
3. Aufruf, Resultat und Fehlerklassen
tools/call transportiert den Toolnamen und arguments. Strukturelle JSON-RPC- oder Protokollfehler werden anders behandelt als fachliche Ausführungsfehler. Letztere können mit isError: true und handlungsfähigem Inhalt zurückgegeben werden, damit ein Modell Parameter korrigieren kann.
Ein strukturiertes Ergebnis sollte outputSchema erfüllen. Wenn structuredContent verwendet wird, empfiehlt die Spezifikation aus Kompatibilitätsgründen zusätzlich eine serialisierte Textdarstellung. Ergebnisse bleiben untrusted input: Client und Modell dürfen darin enthaltene Anweisungen nicht als Systemautorität behandeln.
4. Sicherheitsgrenzen für Travel-Tools
Eine Suche ist typischerweise lesend; Reservieren, Buchen, Bezahlen, Stornieren und Erstatten verändern wirtschaftlich relevante Zustände. Diese Aktionen benötigen eigene Tools, präzise Scopes, Idempotenz- oder Deduplizierungsstrategien, Preisrevalidierung und eine nachvollziehbare Nutzerfreigabe.
Ein Approval ist kein einzelnes Dialogfenster, sondern ein Beleg: Wer genehmigte welchen konkreten Zustand, Preis, Tarif, Reisenden und Zeitpunkt? Ändert sich ein materieller Bestandteil, ist die Freigabe nicht stillschweigend wiederverwendbar.