Maintenance Due

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.

  1. 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 ist GET /mcp; mcp liefert es.
  2. Verlinke dein Konto mit OAuth 2.1. Bei der ersten Anfrage öffnet ChatGPT oauth/authorize mit resource=https://maintenancedue.com/mcp, einer code_challenge und code_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.
  3. 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.
  4. 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.
  5. Lese das Roster und das Protokoll: `list_assets`, `get_history`. „Was sind meine Assets und was steht auf dem Kilometerzähler?“ ruft list_assets auf 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.“ ruft get_history mit { "name": "Ölwechsel" } auf und gibt Abschluss-Events mit Werkstatt, Kosten und Zähleraufzeichnungen wie event.meters { "miles": 87240 } zurück. Die Historie ist dasselbe nur-hinzufügen Protokoll, sodass die Antwort Quittungen sind.
  6. 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 es events/subscribe mit { "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, Protokoll 2026-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-id ist die ID des Events, also überprüfe die Signatur und dedupliziere danach). Die Filter asset und name werden auf dem Server angewendet, exakte Namen ohne zwischen Groß- und Kleinschreibung zu unterscheiden. Lass ttlMs weg für eine Laufzeit von 24 Stunden oder übergebe ttlMs: null für eine dauerhafte; events/unsubscribe ist idempotent. service.due wird 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.
  7. 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.

Durchlauf des ChatGPT-Plugins von Maintenance Due · Maintenance Due