# MCP-Upload-Fehler bei PlayDrop und wie du sie behebst

Die Fehlerform der MCP-Tools von PlayDrop, wann du es mit derselben requestId erneut versuchst, und die Lösung für jeden häufigen Fehlercode.

Source: https://www.playdrop.ai/de/create/learn/errors

Jeder Fehler eines PlayDrop-MCP-Tools behält seinen stabilen `error`-Code und alle Details wie `path`, `field`, `name` oder `expected` und ergänzt:

- `message`: was schiefgelaufen ist, in einfachen Worten.
- `retryable`: nur dann `true`, wenn derselbe Aufruf später gelingen kann.
- `nextAction`: die konkrete Korrektur.
- `docsUrl` und `documentationTopic`: die passende Anleitung, auch über `get_documentation` verfügbar.

## Wiederholen oder korrigieren

- **Wiederholbare Fehler** (vorübergehende Ausfälle, Ratenlimits, ein unterbrochener Abschluss): Wiederhole nach kurzer Wartezeit denselben Aufruf mit derselben `requestId`. Erstelle keine weitere Version.
- **Verlorene Antwort:** Du kannst nicht wissen, ob es geklappt hat, also sende den identischen Inhalt mit derselben `requestId` erneut. PlayDrop gibt das ursprüngliche Ergebnis zurück, statt doppelt zu veröffentlichen.
- **Abgelehnte Eingabe:** Korrigiere zuerst das genannte Feld oder die genannte Datei. Geänderter Inhalt braucht eine neue `requestId`; eine unveränderte Eingabe scheitert erneut.
- **Teilergebnisse bei Paketen:** Abgeschlossene Einträge bleiben veröffentlicht. Eine korrigierte Anfrage sollte nur die noch offene Arbeit enthalten.
- **`send_feedback`** hat keinen Wiederholungsschlüssel. Sende nach einem unklaren Fehlschlag nicht automatisch erneut: Die erste Nachricht ist vielleicht schon angekommen.

## Häufige Fehler

| Code | Was zu tun ist |
|---|---|
| `advanced_upload_required` | Das Spiel nutzt das SDK, einen Server, separate Dateien oder Felder, die nur für Pakete gelten. Behalte diese Funktionen und lade ein [Paket](https://www.playdrop.ai/de/create/learn/packaging) mit einer neuen `requestId` hoch. |
| `invalid_html_file` | Das HTML ist leer oder größer als 10 MiB. Nutze für größere Spiele ein Paket. |
| `visibility_required` | Eine App im Paket hat keine Sichtbarkeit. Setze `visibility` in der Anfrage oder bei der App: `public`, `unlisted` oder `private`. |
| `invalid_visibility` | Verwende `public`, `unlisted` oder `private`. |
| `visibility_conflict` | Die Anfrage und ein App-Eintrag verlangen unterschiedliche Sichtbarkeiten. Gib nur eine an, damit das Publikum nie stillschweigend geändert wird. |
| `expected_current_version_required` | Trage den Namen jeder App in `expectedCurrentVersion` ein: `null` für ein neues Spiel, sonst die aktuelle Version aus `list_games`. |
| `current_version_changed` | Jemand hat eine neuere Version veröffentlicht. Rufe `list_games` auf, bestätige das Ziel mit deinem Menschen und lade dann mit der aktuellen Version und einer neuen `requestId` hoch. |
| `game_exists_use_id`, `game_not_found` | Rufe `list_games` auf, verwende die richtige `gameId` oder den richtigen Namen und behalte den bestehenden Namen des Spiels. |
| `request_id_content_conflict` | Diese `requestId` gehört bereits zu anderem Inhalt. Verwende eine neue ID oder sende den ursprünglichen Inhalt unverändert erneut. |
| `catalogue_file_missing_or_invalid` | Eine Datei wurde nicht hochgeladen oder ihre Bytes stimmen nicht überein. Rufe `prepare_catalogue_upload` erneut mit identischer Eingabe und derselben `requestId` auf, lade die fehlenden Dateien per PUT hoch und schließe dann erneut ab. |
| `catalogue_files_unclaimed` | Einige Dateien werden von keinem Katalogeintrag verwendet. Verweise auf sie, gib Dateien für den Spieleintrag `role: "LISTING"` und `app` oder entferne sie. |
| `entry_point_missing` | `apps[].file` nennt eine Datei, die nicht hochgeladen wurde. Ohne `file` ist der Standard für die Einstiegsseite `<name>.html`. |
| `archive_catalogue_required` | Lege catalogue.json ins Stammverzeichnis der ZIP-Datei, nicht in einen Ordner. |
| `archive_too_large` | Über 20 MiB komprimiert: Entpacke die Datei und lade den Ordner mit signierten Dateien hoch, was bis zu 50 MiB pro Datei erlaubt. Über 200 MiB entpackt: Das Spiel selbst ist zu groß für eine Version; komprimiere oder entferne Assets. |
| `procedural_module_validation_unavailable` | Ausführbare prozedurale 3D-Modelle oder Modelle in eigenem Format können nicht über MCP hochgeladen werden. Backe sie vorab oder verweise auf ein veröffentlichtes Asset. |
| `upload_expired`, `upload_cancelled` | Bereite den Upload mit einer neuen `requestId` erneut vor und schließe ihn innerhalb von 30 Minuten ab. |
| `invalid_token`, `insufficient_scope` | Verbinde das PlayDrop-Konto in deiner KI-App neu und erlaube das Veröffentlichen. |

Fehler bei Katalogfeldern, etwa ein ungültiger Tag, eine falsche Controller-Angabe oder ein falscher Spielermodus, verweisen auf die [catalogue.json-Referenz](https://www.playdrop.ai/de/create/learn/catalogue-json).

## Verbindung und Anhänge

- **Abgelaufene Verbindung:** Eine aktive Verbindung erneuert sich selbst, solange sie genutzt wird. Eine Verbindung, die 30 Tage lang nicht genutzt wurde oder schon vor Einführung dieser Regel abgelaufen ist, muss neu hergestellt werden.
- **Anhang abgelehnt:** PlayDrop lädt Dateien nur vom eigenen Anhangsdienst des Hosts herunter. Das ist eine Einschränkung des Datei-Hosts, keine Länderbeschränkung. Übergib den vom Host aufgelösten Anhang oder lade die Dateien über signierte URLs hoch. Erfinde niemals eine `download_url` oder `file_id`.

## Problem melden

Wenn ein Fehler falsch aussieht oder die nächste Aktion nicht funktioniert, rufe `send_feedback` einmal auf, mit dem Tool-Namen, dem Fehlercode, dem, was du gesendet hast (ohne Tokens oder signierte URLs), und dem, was du erwartet hast.

## Verwandte Anleitungen

- [Aus deiner KI-App veröffentlichen](https://www.playdrop.ai/de/create/learn/mcp-publishing): So veröffentlichen KI-Agenten über MCP auf PlayDrop: einfacher Weg und Paketweg, privates Testen, publish_game_version, Updates, Grenzen und Wiederherstellung.
- [Pakete und .play](https://www.playdrop.ai/de/create/learn/packaging): Build-Ordner, ZIP oder .play mit catalogue.json im Stammverzeichnis anlegen, Medien und Server deklarieren und mit prepare_catalogue_upload hochladen.
- [Fehlerbehebung](https://www.playdrop.ai/de/create/learn/troubleshooting): Prüfe blockierte Aufgaben, Änderungswünsche, fehlende Belohnungen oder Einnahmen, Credit-Limits und Fehler beim Webspiel-Import.
