Skip to main content
Fehler treten auf zwei Ebenen auf. Probleme mit Authentifizierung, Origin und Rate-Limit werden vor MCP als reine HTTP-Antworten abgewiesen. Alles, was innerhalb eines Tool-Aufrufs passiert, kommt als MCP-Tool-Ergebnis mit isError: true zurück.

HTTP-Level

Diese liegen außerhalb des MCP-Envelopes; eine MCP-Client-Bibliothek wirft sie typischerweise als Transport-Fehler.

Tool-Fehler

Ein fehlgeschlagener Tool-Aufruf ist ein normaler JSON-RPC-Erfolg, dessen Ergebnis isError: true, einen einzelnen Text-Block und kein structuredContent hat:
Parsen Sie den Text als JSON, um zu erhalten: Nichts anderes vom zugrundeliegenden Fehler wird offengelegt: keine Stack Traces, kein SQL, keine Upstream-Antworten oder interne IDs. Jede Anfrage wird serverseitig mit der x-request-id protokolliert, die auf der HTTP-Antwort mitgegeben wird; nennen Sie diese, wenn Sie den Support kontaktieren.

Codes

Retrying

Reads (readOnlyHint: true) können nach TIMEOUT, UPSTREAM_UNAVAILABLE oder INTERNAL_ERROR mit Backoff sicher erneut versucht werden. Writes sind anders. create-discount-code und create-payment-link sind mit idempotentHint: false markiert und haben keinen Idempotenz-Schlüssel. Ein TIMEOUT wird zurückgegeben, wenn das 30-Sekunden-Budget aufgebraucht ist. Das kann nach dem Commit der Zeile passieren — der Code oder Link kann bereits existieren. Bevor Sie einen Write erneut versuchen:
  1. list-discount-codes und nach dem Code suchen, oder list-payment-links nach Filiale gefiltert und nach dem Titel/der Referenz suchen.
  2. Den Write nur erneut aufrufen, wenn er fehlt.
Führen Sie Writes niemals automatisch erneut aus. Deshalb ist retryable heute bei jedem Code false: Der Server weiß nicht, ob Ihr Write angekommen ist, also sagt er Ihnen nicht, dass Sie es erneut versuchen sollen.

Validierungsfehler von Ihrem Client

Da Fehler kein structuredContent tragen, überspringen spec-konforme Clients (einschließlich des offiziellen TypeScript-SDK) die Output-Schema-Validierung darauf und zeigen den Envelope. Wenn Ihr Client stattdessen einen -32602 oder „structured content does not match schema”-Fehler meldet, validiert er den Text gegen das outputSchema des Tools; lesen Sie den Text-Block direkt.