Agentur-Workflows mit MCP und n8n: Kundenstatus abfragen, ohne Dashboard-Login

Ein KI-Assistent kann den Status deiner Kundenseiten selbst abrufen, ohne dass jemand aus deinem Team das Dashboard öffnet. Möglich macht das ein MCP-Server: eine standardisierte Schnittstelle, über die ein Assistent Monitore, Vorfälle und Uptime-Werte liest. Der Kunde fragt im Slack-Kanal, ob seine Seite läuft, und bekommt zwanzig Sekunden später die Uptime der letzten 30 Tage und den letzten Vorfall. Nicht, weil jemand schneller klickt. Sondern weil der Assistent die Daten selbst holt.
Der Workflow, bevor es ihn gab: warum Statusfragen teuer sind
Statusfragen kosten dich nicht Minuten, sondern Kontextwechsel. Die Frage kommt im Slack-Kanal des Kunden an, beantwortet wird sie in einem anderen Werkzeug: Dashboard öffnen, einloggen, Kunde suchen, Monitor öffnen, Zeitraum umstellen, Zahl ablesen, zurück in den Kanal, Antwort formulieren. Acht Schritte für einen Satz.
Rechne das gegen dein Portfolio. Bei 40 betreuten Seiten und zwei bis drei Statusfragen pro Woche sind das mehrere Stunden im Monat, verteilt in Zwei-Minuten-Häppchen quer durch den Tag. Jede einzelne ist zu klein, um sie zu notieren, und keine davon steht auf einer Rechnung.
Der eigentliche Schaden liegt woanders. Die Antwort kommt spät, sie kommt knapp, und sie kommt ohne Beleg. "Läuft alles" ist keine Serviceleistung, sondern eine Beruhigung. Damit verschenkst du genau den Moment, in dem der Kunde von sich aus nach dem Wert deines Retainers fragt.
Was sich ändert, wenn der Assistent die Monitore lesen darf
Das Model Context Protocol ist ein offener Standard, über den ein KI-Assistent Werkzeuge einer fremden Anwendung direkt aufruft, statt deren Oberfläche zu bedienen. Der Assistent bekommt eine Liste verfügbarer Tools, wählt das passende, ruft es auf und arbeitet mit dem Ergebnis weiter.
Uptimeify betreibt dafür einen zustandslosen MCP-Server unter POST https://uptimeify.io/mcp über Streamable HTTP. 20 Check-Tools laufen ohne Konto und ohne Token, darunter check_ssl, check_dns, whois und website_status. 13 weitere Tools lesen deine eigenen Daten, sobald ein Token vorliegt:
| Tool | Was es liefert | Zugriff |
|---|---|---|
list_monitors | alle Monitore in deiner Organisation | api.read |
monitor_status | aktueller Zustand eines einzelnen Monitors | api.read |
uptime_summary | Uptime und mittlere Antwortzeit für Tag, Monat, Jahr | api.read |
list_incidents | Vorfälle über dein Portfolio hinweg | api.read |
check_history | die letzten Prüfungen eines Monitors | api.read |
list_alert_channels | die Benachrichtigungskanäle, über die du alarmiert wirst | api.read |
alert_history | welche Alarme für einen Monitor rausgingen und ob sie ankamen | api.read |
list_status_pages | deine Statusseiten mit Slug, Sichtbarkeit und eigener Domain | api.read |
list_maintenance_windows | deine geplanten Wartungsfenster | api.read |
get_organization | deine eigene Organisation: Name, öffentliche Kennung, Kontozustand | api.read |
list_users | die Mitglieder deiner Organisation, mit Rolle und Beitrittsdatum | api.read |
list_customers | deine Kunden, mit Zustand und Monitor-Zahlen | api.read |
billing_summary | SMS-Verbrauch des laufenden Monats, je Kunde und in Summe | api.read |
website_status, check_ssl, check_dns und 17 weitere | öffentliche Prüfungen für beliebige Domains | ohne Konto |
Der Unterschied im Alltag ist nicht die Datenmenge, sondern der Ort. Die Frage wird dort beantwortet, wo sie gestellt wurde. Niemand wechselt das Werkzeug, niemand loggt sich ein, und die Antwort trägt eine Zahl statt einer Beruhigung.
Drei konkrete Agentur-Workflows
Statusabfrage im Chat, statt Dashboard-Login
Der Kunde fragt, ob seine Seite läuft. Dein Team stellt die Frage an den Assistenten weiter, wörtlich: "Wie war die Uptime dieser Kundendomain in den letzten 30 Tagen, und wann war der letzte Vorfall?"
Der Assistent zieht sich die Antwort in drei Schritten: list_monitors, um den Monitor zu finden, uptime_summary für den Zeitraum, list_incidents für den letzten Vorfall. Zurück kommt ein Satz mit Prozentwert, Datum und Dauer. Der Account-Manager liest ihn, prüft ihn kurz und schickt ihn in den Kundenkanal. Zwanzig Sekunden statt acht Schritten.
Wichtig für die Qualität der Antwort: Die Zahlen kommen aus deinem Konto, nicht aus dem Sprachmodell. Der Assistent formuliert, er schätzt nicht.
Report-Vorarbeit: die Uptime-Zusammenfassung als Textbaustein
Der Monatsreport ist Pflicht, aber der Kommentar davor ist Handarbeit. Genau die lässt sich vorbereiten: uptime_summary für den Monat, list_incidents für die Vorfälle im selben Zeitraum, daraus zwei bis drei Sätze in der Sprache, die dein Kunde versteht.
Der fertige Report kommt weiterhin white-labeled aus der Plattform. Der Assistent liefert die Einordnung, nicht die Daten und nicht das PDF. Wie du den Report selbst aufbaust, steht im Leitfaden zum SLA-Report für Kunden.
Incident-Kontext im Ticket: die letzten Vorfälle beim Anlegen
Ein Support-Ticket zu einer Kundenseite geht ein. Bevor jemand es übernimmt, holt der Assistent über list_incidents und check_history die letzten Vorfälle zu genau diesem Monitor und hängt sie an das Ticket.
Der Bearbeiter sieht auf den ersten Blick, ob er es mit einem Einzelfall oder mit dem vierten Aussetzer in zwei Wochen zu tun hat. Das verändert die Priorität, die Antwort an den Kunden und die Frage, ob hier ein Hosting-Gespräch fällig ist.
n8n und MCP: der Server als Node in bestehenden Automatisierungen
Wenn deine Automatisierung schon in n8n liegt, brauchst du keinen zweiten Ort dafür. n8n kennt zwei Richtungen: Die MCP Client Tool Node hängt sich als Werkzeug an einen AI Agent und ruft einen externen MCP-Server auf. Die MCP Server Trigger Node macht den umgekehrten Weg und stellt deine eigenen Workflows als Tools bereit.
Für Uptimeify ist die erste Richtung relevant. Ein typischer Ablauf aus der Agenturpraxis:
- Trigger: Eine Nachricht im Kundenkanal enthält ein Stichwort wie "Status" oder "erreichbar".
- AI Agent: Ein Agent-Node mit klarer Systemanweisung, welcher Kunde zu welchem Kanal gehört.
- MCP Client Tool: Verbindung auf den Uptimeify-MCP-Server, Authentifizierung per Bearer-Token.
- Antwort: Der Agent formuliert die Antwort und postet sie zurück in den Thread, oder legt sie als Entwurf ab, wenn ein Mensch gegenlesen soll.
Zwei Details, die im Aufbau Zeit sparen. Erstens: Der Access-Token läuft nach 3600 Sekunden ab. Eine Automatisierung, die dauerhaft läuft, muss ihn also turnusmäßig neu ausstellen statt ihn einmalig zu hinterlegen. Zweitens: Prüfe in deiner n8n-Version, welchen Transport die MCP Client Tool Node anbietet. Die Node hat mit SSE begonnen, Streamable HTTP kam später dazu, und der Uptimeify-Endpunkt spricht Streamable HTTP.
Die Rate Limits sind für diesen Einsatz großzügig gesetzt: 120 Anfragen pro Minute und IP auf dem Endpunkt, 60 pro Minute je authentifiziertem Tool. Eine Agentur mit ein paar Dutzend Kunden bewegt sich weit darunter. Wer darüber liegt, bekommt eine 429 und weiß, dass er die Schleife falsch gebaut hat.
Was der Assistent nicht darf, und warum das ein Verkaufsargument ist
Agent-Tokens bei Uptimeify sind read-only. Jeder Schreibversuch endet mit 403 und data.code = agentTokenReadOnly. Das gilt unabhängig davon, was im Prompt steht: Ein Agent kann keinen Monitor anlegen, keinen pausieren, kein Wartungsfenster setzen und keinen Vorfall quittieren.
Der Zugriff ist zusätzlich zweifach eingegrenzt. Der api.read-Scope reicht auf GET /api/websites*, GET /api/incidents* und GET /api/health, gebunden an die Organisation des Users, der die Freigabe erteilt hat, oder an einen einzelnen Kunden darin. Und die Freigabe selbst erteilt ein eingeloggter Mensch über eine Bestätigung, nicht der Agent für sich selbst.
Das ist der Teil, den du im Kundengespräch brauchst. Wenn ein Endkunde fragt, ob "jetzt eine KI an unseren Systemen hängt", ist die Antwort keine Beteuerung, sondern eine Aufzählung: Lesezugriff, drei Endpunkte, Token nach einer Stunde abgelaufen, Freigabe durch einen Menschen, jederzeit widerrufbar. Dazu die Infrastruktur, auf der das läuft: europäischer Stack, Frankfurt, ohne US-Sub-Prozessoren. Diese Punkte nimmst du in dein Sicherheitskapitel auf, so wie du es beim Zugriff auf das CMS auch tust.
Grenzen: was heute noch nicht geht
Schreiben bleibt außen vor. Onboarding, Konfigurationsänderungen und alles, was Zustand verändert, laufen weiter über das Dashboard oder ein reguläres API-Token, das ein Mensch ausstellt. Wie das per API aussieht, zeigt der Beitrag zum Kunden-Onboarding per API.
Die Stunde ist die Einheit. Der Access-Token läuft nach 3600 Sekunden ab. Für einen Chat ist das unsichtbar, für eine dauerhaft laufende Automatisierung ist es ein Baustein, den du einplanen musst.
Der Assistent liest, er urteilt nicht. 99,2 Prozent Uptime können ein geplantes Wartungsfenster sein oder ein Hosting-Problem. Diese Einordnung kommt von dir, und genau dafür zahlt dein Kunde den Retainer.
MCP ersetzt keine Alarmierung. Ein Assistent antwortet, wenn er gefragt wird. Ein Vorfall um drei Uhr nachts fragt niemanden. Die Alarmierung läuft weiter über Eskalationsketten und Kanäle, MCP liegt daneben und beantwortet Fragen am Tag.
Der Unterschied zwischen einer Agentur, die Monitoring betreibt, und einer, die es verkauft, war nie das Werkzeug. Es war immer die Frage, wie schnell und wie belegt der Kunde eine Antwort bekommt. MCP verkürzt diesen Weg auf einen Satz im Chat. Was du daraus machst, bleibt deine Arbeit.
Häufig gestellte Fragen
Nein. Agent-Tokens sind read-only. Jeder Schreibversuch endet mit 403 und data.code = agentTokenReadOnly, unabhängig davon, was der Agent im Prompt gesagt bekommt. Monitore anlegen, pausieren oder löschen bleibt im Dashboard oder bei einem regulären API-Token, das ein Mensch ausstellt. Damit kannst du einem Kunden die Frage nach dem Zugriff mit einer Tatsache beantworten statt mit einer Zusicherung.
Der api.read-Scope ist an die Organisation des Users gebunden, der die Freigabe erteilt hat, oder an einen einzelnen Kunden darin. Ein Agent, den dein Account-Manager für einen Kunden freigibt, kommt also nicht an das restliche Portfolio. Alles außerhalb der Freigabe läuft in dieselbe 403-Antwort wie ein Schreibversuch.
Über eine Bestätigung durch dich als eingeloggten Menschen, nicht durch den Agenten selbst. Der Agent registriert sich, du öffnest die Freigabeseite in deinem Uptimeify-Konto und bestätigst den Code. Erst danach wird ein Access-Token mit api.read ausgestellt. Ohne diesen Schritt bleibt der Agent auf den öffentlichen Check-Tools und sieht keine deiner Monitore.
Der Schaden bleibt auf Lesezugriff begrenzt, und zwar nur auf die freigegebene Organisation. Dazu läuft ein Access-Token nach 3600 Sekunden ab und muss neu ausgestellt werden. Du kannst ihn jederzeit über den Revoke-Endpunkt zurückziehen, der auch für bereits ungültige Tokens sauber mit 200 antwortet.
Der MCP-Server läuft stateless unter POST https://uptimeify.io/mcp über Streamable HTTP. 20 Check-Tools arbeiten ohne Konto und ohne Token, 13 weitere lesen deine eigenen Monitoring- und Kontodaten: list_monitors, monitor_status, list_incidents, check_history, uptime_summary, list_alert_channels, alert_history, list_status_pages, list_maintenance_windows, get_organization, list_users, list_customers und billing_summary. Der api.read-Scope reicht auf GET /api/websites*, GET /api/incidents* und GET /api/health. Der Access-Token ist opak, läuft nach 3600 Sekunden ab und wird aus der Identity Assertion neu geprägt. Limits: 120 Anfragen pro Minute und IP auf dem Endpunkt, 15 bis 30 pro Minute je anonymem Tool, 60 pro Minute je authentifiziertem Tool. Darüber kommt 429.
Co-Founder von Uptimeify und verantwortlich für das gesamte Marketing. Übersetzt zwischen technischer Entwicklung und Marketing-Strategie: von Java, PHP und Shopware-Plugins zur Steuerung digitaler Wachstumsstrategien. Zertifizierter UX-Manager (IHK) und Digital-Marketing-Berater für drei gemeinnützige Organisationen.
Mehr aus dem Blog
SLA-Report für Kunden erstellen: Verfügbarkeit, die deinen Wert beweist
So baust du einen SLA-Report, der deine Verfügbarkeit belegt und deinen Retainer rechtfertigt, Monat für Monat, unter deiner Marke.

Vom Mittelsmann zum Infrastruktur-Partner: Monitoring im Retainer verankern
Wie Agenturen Monitoring als festen Retainer-Baustein verankern, mit Preislogik, Bausteinen und einem Gesprächsleitfaden für den Endkunden.

Churn senken mit proaktivem Monitoring: den Ausfall melden, bevor der Kunde ihn merkt
Wer Kundenseiten proaktiv überwacht, meldet den Ausfall zuerst, und macht Monitoring vom Kostenposten zum stärksten Retention-Tool der Agentur.



