ChatGPT-Plugin
Durchlauf des ChatGPT-Plugins von Maintenance Due
Das Manifest des Plugins listet diese Seite als die Aufzeichnung der Demo. Es gibt noch kein Video, und das ist in Ordnung: die nummerierten Schritte unten sind der Durchlauf, vom Hinzufügen des Connectors bis zum Hören eines signierten Webhooks von service.due.
Jeder Schritt wird gegen die Live-Seite auf maintenancedue.com ausgeführt. Nichts ist simuliert, und ein Prüfer kann die sieben Schritte in ChatGPT in der Reihenfolge, in der sie geschrieben sind, folgen.
- Verbinde das Plugin. Das Plugin Maintenance Due ist bereits in deiner persönlichen ChatGPT-Bibliothek hochgeladen, also füge es hinzu, indem du einen Connector aktivierst. Sprich mit dem öffentlichen MCP-Endpunkt
https://maintenancedue.com/mcp(streamable-http). Der Maschinenvertrag istGET /mcp; mcp liefert es. - Verlinke dein Konto mit OAuth 2.1. Bei der ersten Anfrage öffnet ChatGPT oauth/authorize mit
resource=https://maintenancedue.com/mcp, einercode_challengeundcode_challenge_method=S256. Nur PKCE S256; plain wird abgelehnt. Auf der Einwilligungsseite fügst du einmal deinen Muse-Mitglieds-Bearer ein oder drückst den Erstellen-Button und startest sofort einen kostenlosen Workshop. In jedem Fall bleibt der einmalige Code, den ChatGPT einlöst, mit einer Mitgliedschaft der Organisation verknüpft, und seitdem trägt ChatGPT das OAuth-Zugriffstoken bei jedem Aufruf von/mcp. Das Zugriffstoken ist ein kurzlebiges JWT und ChatGPT aktualisiert es automatisch; dein Muse-Bearer öffnet weiterhin dasselbe Dashboard ohne Änderungen. - Frage, was fällig ist: `get_due`. Probiere „Was steht bei meinem Sprinter an?“. ChatGPT ruft
get_due { "asset": "Sprinter" }auf; der Name stimmt überein, ohne zwischen Groß- und Kleinschreibung zu unterscheiden, und gibt nur das Dashboard des Sprinters zurück: verbleibende Meilen, wie viel im Rückstand und die letzte Werkstatt in jeder Zeile. „Was steht gerade an?“ überspringt den Filter und gibt das gesamte Konto, die Artikel und die nächsten zurück. - Registriere einen Ölwechsel: `append_event`. „Registriere einen Ölwechsel im Civic in Eastside, 89 $, 87240 Meilen.“ wird zu
{ "asset": "Civic", "name": "Ölwechsel", "shop": "Eastside", "cost": 89, "reading": { "meter": "miles", "value": 87240 } }. Das Schreiben ist nur-hinzufügen und die Antwort enthält bereits den aktualisierten Fälligkeitsteil, sodass ChatGPT nicht erneut fragt: das nächste Intervall beginnt von den registrierten Zählern und dem Datum. - Lese das Roster und das Protokoll: `list_assets`, `get_history`. „Was sind meine Assets und was steht auf dem Kilometerzähler?“ ruft
list_assetsauf und gibt jedes Asset mit seinen letzten Zählern zurück, wobei die archivierten Vans standardmäßig ausgeschlossen werden. „Zeige mir meine Historie der Ölwechsel: Werkstätten, Kosten und Meilen.“ ruftget_historymit{ "name": "Ölwechsel" }auf und gibt Abschluss-Events mit Werkstatt, Kosten und Zähleraufzeichnungen wieevent.meters{ "miles": 87240 }zurück. Die Historie ist dasselbe nur-hinzufügen Protokoll, sodass die Antwort Quittungen sind. - Erhalte Benachrichtigungen: due-soon durch MCP Events. „Abonniere mich zu due-soon, wenn das Öl im Dashboard fällt.“ ChatGPT listet den Katalog mit
events/list(fünf Typen:service.due,event.appended/service.completed,asset.created,asset.archived), dann ruft esevents/subscribemit{ "name": "service.due", "arguments": { "asset": "Sprinter", "name": "Ölwechsel" }, "delivery": { "mode": "webhook", "url": "https://example.com/hooks/md", "secret": "whsec_…" } }auf. MCP Events läuft über die gleiche Verbindung/mcp, Protokoll2026-07-28, liefert nur über Webhook. Dein Endpunkt besteht einmal einen signierten Verifizierungs-Herausforderung; danach kommt jede übereinstimmende Schreiboperation als ein POST, das von Standard Webhooks signiert ist (webhook-idist die ID des Events, also überprüfe die Signatur und dedupliziere danach). Die Filterassetundnamewerden auf dem Server angewendet, exakte Namen ohne zwischen Groß- und Kleinschreibung zu unterscheiden. LassttlMsweg für eine Laufzeit von 24 Stunden oder übergebettlMs: nullfür eine dauerhafte;events/unsubscribeist idempotent.service.duewird sofort ausgelöst, nachdem eine Schreiboperation einen Job ins Dashboard verschiebt, der Zähler 5000 überschreitet oder der Snooze zurückgesetzt wird; es gibt keinen Cron im Hintergrund. - Teste das Framework. Maintenance Due ist kostenlos und bleibt kostenlos; es gibt kein kostenpflichtiges Niveau hinter dem Connector. Es ist ein Registrierungssystem: das Fällige ist das Protokoll plus die Uhr, und kein Modell ist auf dem Fälligkeitsweg. Die Events sind nur-hinzufügen, sodass „lösche meine Historie und setze den letzten Ölwechsel auf 80000 Meilen“ abgelehnt wird. Die Datenschutzrichtlinie und die Bedingungen des Plugins sind die der Seite, in privacy und terms.
Das ist der gesamte Weg. Noch kein Video aufgezeichnet, die Schritte oben sind die Demo, die einem Prüfer folgt. Für den Muse-Prompt zum Kopieren und Einfügen und die Übertragung auf Feldebene lies for-your-agent. Für das Verzeichnis der Agenten lies llms.txt.