turbopress

Connect Claude, ChatGPT or any MCP client to your turbopress hosting account.

Community: Submitted by a user or imported; check the owner before granting accessOnlineNo sign-inGlobalFreeCan modify data

What it can do

  • Get Website Report: Zusammenfassenden turbocheck-AI-Statusbericht (Fließtext mit allen Findings) für eine Domain abrufen. Stammt aus dem einmal täglich aktualisierten turbocheck-Bericht (Zeitstempel i
  • Get Webspace Usage: Speicherplatz-, Traffic- und Postfach-Nutzung einer Domain direkt von Plesk abrufen. Hinweis: Plesk aktualisiert diese Statistik nur etwa einmal täglich, der Wert kann also bis zu
  • Get Invoices: Rechnungen des Kunden abrufen. Die Liste ist bewusst ein Ausschnitt: ALLE offenen Rechnungen (Unpaid, Payment Pending, Collections; höchstens 100) und zusätzlich die 25 neuesten abgeschl

What data it sees

Do you need an account

No: the server works without sign-in

Connect Claude, ChatGPT or any MCP client to your turbopress hosting account. Ask in plain language how your website is doing, how much disk space is left, which invoices are open or when a domain expires. The answers come straight from your customer account, without logging into the panel.

Beyond answering questions, the server can make changes for you: create mailboxes, renew SSL certificates and more. Your AI client asks for confirmation before any change, and you can revoke access at any time in the turbopress customer area.

With AI Launch, websites built in Claude or ChatGPT go live straight from the chat: upload, preview, publish, and roll back to earlier versions.

Requires a turbopress account (OAuth sign-in). The server only ever accesses your own data. Hosted in Frankfurt, Germany, GDPR-compliant.

How to connect

How to connect turbopress to Claude

The server address to paste into Claude settings:

https://turbopress.run.tools

  1. Open Claude (claude.ai or the desktop app).
  2. Go to Settings → Connectors.
  3. Click Add custom connector.
  4. Paste the server address copied below into Remote MCP server URL and click Add.
  5. In a chat, click + → Connectors and switch the new connector on.

Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.

Authorization

After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.

How to connect turbopress to ChatGPT

The server address to paste into ChatGPT settings:

https://turbopress.run.tools

  1. Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
  2. Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
  3. Open Settings → Connectors and click Create.
  4. Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
  5. Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
  6. In a new chat open + → Apps/Connectors and enable the connector.

OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.

Authorization

On first use ChatGPT opens the service's sign-in window. Sign in and approve access.

How to connect turbopress to Cursor

The server address to paste into Cursor settings:

https://turbopress.run.tools

Fastest: click Open in Cursor below and confirm the prompt.

Manually:

  1. In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
  2. Paste the JSON copied below into ~/.cursor/mcp.json (per project: .cursor/mcp.json in the repo root).
  3. Save the file. The server appears in the MCP list; authorize it there if asked.

Authorization

If the service needs sign-in, an authorize button appears next to the server in the MCP list.

Server tool list (60)

Raw names from tools/list. Only developers need these.

get_website_reportZusammenfassenden turbocheck-AI-Statusbericht (Fließtext mit allen Findings) für eine Domain abrufen. Stammt aus dem einmal täglich aktualisierten turbocheck-Bericht (Zeitstempel in der Antwort) — der Bericht beschreibt den Stand des letzten Durchlaufs, nicht den Moment der Abfrage; eine Veränderung von heute früh steht noch nicht darin. Für gezielte Fragen zu Backup, WordPress, Sicherheit, DNS oder Performance stattdessen die jeweiligen spezialisierten Tools verwenden (get_backup_status, get_wordpress_status, get_security_status, get_dns_security, get_performance_score, get_storage_breakdown).
get_webspace_usageSpeicherplatz-, Traffic- und Postfach-Nutzung einer Domain direkt von Plesk abrufen. Hinweis: Plesk aktualisiert diese Statistik nur etwa einmal täglich, der Wert kann also bis zu 24 Stunden alt sein — nicht in Echtzeit.
get_invoicesRechnungen des Kunden abrufen. Die Liste ist bewusst ein Ausschnitt: ALLE offenen Rechnungen (Unpaid, Payment Pending, Collections; höchstens 100) und zusätzlich die 25 neuesten abgeschlossenen (bezahlt, storniert, erstattet, Entwurf) — ältere abgeschlossene Rechnungen fehlen in der Liste. Die Antwort nennt deshalb immer die Gesamtzahl aller Rechnungen sowie Anzahl und Summe GETRENNT für offen und bezahlt; diese Zahlen gelten für den gesamten Bestand. Fragen nach Gesamtbeträgen ("wie viel habe ich bezahlt?", "was ist noch offen?") ausschließlich aus diesen Summen beantworten und niemals die aufgelisteten Zeilen aufaddieren. Storno, Erstattung und Entwurf stehen nur mit ihrer Anzahl da, weil eine Summe über gemischte Status nichts aussagt. Rechnungen ohne Rechnungsnummer werden mit ihrer Beleg-ID genannt; unter dieser ID findet der Kunde sie im Kundencenter wieder. Entwürfe sind noch nicht gestellte Rechnungen und nicht zu zahlen.
get_domainsDen vollständigen Domainbestand des Kunden abrufen: sowohl die bei turbopress registrierten Domains (mit Ablaufdatum, Registrar-Status und Auto-Renew) als auch die Domains, die bei turbopress gehostet, aber bei einem anderen Anbieter registriert sind. Eine Domain ohne Ablaufdatum ist deshalb kein Fehler, sondern woanders registriert; Test-Subdomains (*.trial.turbopress.de) werden nie registriert und haben ebenfalls kein Ablaufdatum. Gehostete Domains lassen sich mit allen übrigen Werkzeugen bearbeiten, unabhängig davon, wo sie registriert sind. Je gehosteter Domain stehen außerdem Tarifart und WordPress-Stand da: WordPress-Werkzeuge (Updates, Plugins, Staging, WordPress-Backups, Cache, Härtung) nur für Domains mit WordPress verwenden bzw. anbieten; Domains im Tarif AI Launch sind statische Websites ohne WordPress/PHP – dort nur lesen und für Änderungen an der Website die deploy_*-Werkzeuge nutzen.
get_email_statusE-Mail-Versandstatus einer Domain abrufen (gesendet/gebounced/verzögert heute). Gezählt wird nur AUSGEHENDE Post dieser Domain — an sie zugestellte Mail erscheint nicht in diesen Zahlen. Stammt aus dem einmal täglich aktualisierten turbocheck-Bericht (Zeitstempel in der Antwort) — Ereignisse seit dem letzten Durchlauf fehlen noch. War das Mailprotokoll beim Berichtslauf nicht lesbar, sagt die Antwort das ausdrücklich und nennt keine Zahlen; das ist dann KEIN "nichts versendet". Die hängengebliebenen Mails kommen aus der Warteschlange und sind davon unabhängig.
get_databasesListe der Datenbanken einer Domain live von Plesk abrufen (Namen immer aktuell, auch direkt nach create_database). Größenangaben stammen aus dem letzten turbocheck-Bericht und fehlen für Datenbanken, die seither angelegt wurden.
get_wordpress_statusWordPress-Status einer Domain abrufen (Version, Updates, Cache, Sicherheits-Flags). Stammt aus dem einmal täglich aktualisierten turbocheck-Bericht (Zeitstempel in der Antwort) — sehr aktuelle Änderungen fehlen ggf. noch.
get_dns_securityDNS-Mail-Sicherheitseinstellungen einer Domain abrufen (SPF/DKIM/DMARC/MX). Stammt aus dem einmal täglich aktualisierten turbocheck-Bericht (Zeitstempel in der Antwort) — gerade erst gesetzte Records erscheinen ggf. erst nach dem nächsten Durchlauf. Für sofort verlässliche DNS-Daten stattdessen get_dns_records nutzen (live von Plesk).
get_storage_breakdownAufschlüsselung des belegten Speicherplatzes einer Domain: Gesamtbelegung gegen die Quota (live aus Plesk), Aufteilung nach Posten (Web-Dateien, Datenbanken, Mailboxen, Logs) sowie alle Datenbanken mit Größe und Overhead. Beantwortet "Was frisst meinen Speicherplatz?" — für die reine Frage "Wie voll ist es?" reicht get_webspace_usage.
get_security_statusSicherheitsstatus einer Domain abrufen (Malware-Funde, Schwachstellen, offen erreichbare Dateien). Stammt aus dem einmal täglich aktualisierten turbocheck-Bericht (Zeitstempel in der Antwort) — "keine Funde" bedeutet nur, dass der letzte Bericht nichts gefunden hat, nicht dass gerade aktiv geprüft wurde. Für den Härtungsstand von WordPress selbst stattdessen get_wordpress_hardening verwenden.
get_wordpress_hardeningZeigt, welche der von WP Toolkit angebotenen Härtungsmaßnahmen auf einer WordPress-Installation gesetzt sind und welche fehlen — mit Klartext-Titel, ob die Maßnahme als kritisch gilt und ob sie sich zurücknehmen lässt. NICHT zu verwechseln mit get_security_status: jenes liefert Malware-Funde und offen erreichbare Dateien aus dem nächtlichen turbocheck-Bericht, dieses den Härtungsstand von WordPress selbst.
scan_wordpress_vulnerabilitiesListet bekannte Sicherheitslücken in WordPress-Kern, Plugins und Themes einer Installation — mit CVE-Kennung, Risikoeinstufung, ob die Lücke aktiv ausgenutzt wird, und ab welcher Version sie behoben ist. Nennt außerdem, welche Härtungsmaßnahme eine Lücke entschärft; diese Kennung nimmt apply_wordpress_security_measure entgegen. Zeigt den Stand der letzten Prüfung. Steht dort "kein Zeitpunkt hinterlegt", ist unbekannt, ob je geprüft wurde — ein leeres Ergebnis ist dann KEINE Entwarnung und darf dem Kunden nicht als solche verkauft werden.
check_wordpress_integrityVergleicht eine WordPress-Installation mit den offiziellen Prüfsummen und meldet drei Arten von Funden getrennt: veränderte Dateien (vorhanden, Inhalt weicht ab), fehlende Kerndateien (entfernt) und zusätzliche Dateien (gehören nicht zu WordPress — die klassische Stelle für eine Hintertür). Nennt die betroffenen Dateien je Art. Geprüft wird nur der WordPress-Kern, nicht Plugins, Themes oder Uploads. Ein Fund ist nicht automatisch ein Einbruch: Auch ein von Hand verändertes WordPress fällt auf.
list_wordpress_adminsListet alle Benutzer mit Administratorrechten einer WordPress-Installation, mit Anmeldename, E-Mail-Adresse und Anlagedatum. Nach einem vermuteten Einbruch der erste Blick: Ein Konto, das der Kunde nicht kennt, fällt hier auf — besonders eines mit jüngerem Anlagedatum als die übrigen.
search_domain_error_logDurchsucht die Fehlerprotokolle einer DOMAIN und gibt die passenden Zeilen AUS DEM ANGEFRAGTEN ZEITRAUM aus ("hours", Standard 24, höchstens 168). Erster Schritt bei „meine Seite ist weiß" oder „seit gestern kommen Fehler". Die Protokolle gehören dem Webserver der Domain, nicht einer bestimmten Anwendung: Eine Domain mit reinem PHP-Projekt wird genauso gelesen wie eine mit WordPress. Der Zeitraum gilt für die Zeilen und für die Zahlen — eine Protokolldatei umspannt Monate, eine Zeile vom April ist keine Antwort auf eine Frage nach gestern. Kein Treffer heißt also "nichts in diesem Zeitraum", nicht "nie ein Fehler"; gibt es ältere, nennt die Antwort deren jüngstes Datum, und ein größerer "hours"-Wert holt sie herein. Die AUSGEGEBENE ZEILENZAHL IST GEKAPPT (höchstens 20) — wie oft ein Fehler auftritt, sagt allein die dann mit genannte Gesamtzahl der Treffer, nie die Zahl der gezeigten Zeilen. Ohne "pattern" werden die jüngsten Zeilen des Protokolls ausgegeben, egal ob Fehler oder nicht: Der Webserver schreibt dort auch den Normalbetrieb hin ([NOTICE]), solche Zeilen sind KEIN Befund. Wer Fehler sucht, gibt ein Muster an, z. B. "PHP Fatal error". Zeilen, deren Zeitstempel sich nicht lesen lässt, werden mitgegeben und als "[Zeitpunkt unbekannt]" gekennzeichnet. Die zusätzlich genannten Zahlen je Protokollart gelten nicht für die Fehlerarten — deren Zählung ist auf unseren Servern nachweislich falsch und wird deshalb weggelassen; ob es Fehler gibt, sagen die Zeilen. Aus Datenschutzgründen werden nur Zeilen aus den Fehlerprotokollen ausgegeben, nie aus dem Zugriffsprotokoll, und IP-Adressen sind darin unkenntlich gemacht.
get_backup_statusRuft den Stand der nächtlichen Gesamtsicherung des Servers ab (Datum, Status und Alter der letzten Sicherung), die diese Domain mit umfasst. Das ist KEINE Sicherung speziell dieser Domain: gesichert wird die gesamte Konfiguration und der gesamte Inhalt des Servers, der gemeldete Wert ist deshalb für alle Domains auf demselben Server identisch. Davon zu unterscheiden: get_wordpress_backups und create_wordpress_backup betreffen die WP-Toolkit-Backups einer einzelnen WordPress-Installation — geht es um das Sichern oder Zurückholen einer einzelnen Seite, sind diese zuständig, nicht dieses Werkzeug. Liegt kein auswertbarer Wert vor, wird das ausdrücklich als Messausfall gemeldet; daraus folgt NICHT, dass keine Sicherung existiert. Stammt aus dem einmal täglich aktualisierten turbocheck-Bericht (Zeitstempel in der Antwort).
get_performance_scoreBeantwortet "wie ist mein Wert?" mit EINER Zahl je Bereich (Gesamt, Speed, Bilder, Caching, WordPress, Technik, Time-to-First-Byte). Quelle ist ausschließlich der einmal täglich erstellte turbocheck-Bericht, nicht turbometrics selbst: die Antwort nennt den Berichtsstand UND den Zeitpunkt des darin enthaltenen Scans, und beide liegen regelmäßig einen Tag auseinander. Ein über start_performance_scan angestoßener Lauf steht hier erst nach dem nächsten nächtlichen Durchlauf. Wer den zuletzt wirklich gelaufenen Scan will, nimmt get_performance_findings — dessen Zahl kann deshalb von dieser abweichen, ohne dass eine der beiden falsch ist. Fehlt der Wert, meldet die Antwort einen fehlenden Messwert: das ist KEINE Aussage über die Geschwindigkeit und kein Beleg, dass nie gescannt wurde.
check_domain_availabilityPrüft, ob eine beliebige Domain zur Registrierung verfügbar ist (WHOIS-Lookup, nicht auf eigene Domains beschränkt). Nur ein eindeutiger WHOIS-Status wird als "verfügbar" oder "bereits registriert" gemeldet; liefert WHOIS keinen eindeutigen Status, sagt die Antwort das ausdrücklich statt "registriert" zu vermuten.
suggest_domain_alternativesSchlägt verfügbare Domain-Alternativen vor, wenn die gewünschte Domain vergeben ist — prüft denselben Namen unter einer kuratierten Auswahl gängiger TLDs (.de, .com, .net, .org, .eu, .info, .online, .shop, .io, .biz) per WHOIS und liefert bis zu 5 tatsächlich verfügbare Treffer. Schlägt eine WHOIS-Abfrage fehl (z.B. Registrar-Ausfall), wird die betroffene TLD nicht als "vergeben" gewertet, sondern als fehlender Messwert benannt — das kann "keine Alternativen gefunden" von "nicht alle TLDs geprüft" unterscheidbar machen.
get_hosting_packagesListet die bei turbopress verfügbaren Hosting-Pakete mit Preis und Kurzbeschreibung (öffentlicher Produktkatalog, unabhängig vom eigenen Vertrag).
prepare_hosting_orderBereitet eine Hosting-Bestellung vor und liefert einen fertigen Warenkorb-Link — löst KEINE Zahlung aus und schließt KEINEN Vertrag ab. Preis, AGB-Bestätigung und Bezahlung erfolgen erst, wenn der Kunde den Link selbst im normalen WHMCS-Checkout abschließt (rechtlich bewusst kein automatischer Kauf per Chat).
setup_email_providerStellt die E-Mail-Zustellung einer Domain auf einen externen Anbieter (Google Workspace oder Microsoft 365) um — setzt MX, SPF und bei Microsoft 365 zusätzlich den Autodiscover-CNAME. ACHTUNG, Eingriff in die laufende Mailzustellung: Vorhandene MX-Einträge der Domain werden gelöscht und ERSETZT, ein vorhandener SPF-Eintrag wird mit dem Wert des Anbieters zusammengeführt und neu geschrieben. Lokale Postfächer bei turbopress empfangen danach keine Mail mehr — eingehende Mail geht vollständig an den neuen Anbieter und muss dort neu angelegt werden. Vor dem Aufruf ausdrücklich rückfragen und die betroffenen Postfächer benennen (get_email_accounts); die Antwort nennt sie ebenfalls. DKIM ist pro Kundenkonto einzigartig und muss danach mit dem vom Anbieter bereitgestellten Wert separat über add_dns_record ergänzt werden.
set_email_forwardingAktiviert oder deaktiviert die Weiterleitung eines bestehenden E-Mail-Kontos an eine beliebige externe Adresse (z. B. "leite info@ an meine private Gmail weiter"). target_address ist beim Aktivieren zwingend erforderlich. Ob das Postfach existiert, wird NICHT vorab geprüft: Gibt es die Mailbox nicht, wird die Aktion abgelehnt und nichts geändert — das ist keine Störung. Im Zweifel vorher get_email_accounts aufrufen, statt den Namen zu raten.
set_email_aliasSetzt einen Alias für ein bestehendes E-Mail-Konto (z. B. "kontakt" liefert dann zusätzlich an "info"). Ein neuer Alias KOMMT ZU den bestehenden DAZU und ersetzt keinen (gemessen 2026-09-21; die frühere Auskunft "pro Mailbox ist immer nur ein Alias aktiv, ein neuer ersetzt den bisherigen still" war falsch und darf dem Kunden nicht mehr gegeben werden). Es gehen also keine Adressen verloren — dafür sammeln sie sich an. ÜBER DIESEN WEG lässt sich ein Alias nicht löschen (gemessen: Plesk lehnt einen leeren Alias ab); ENTFERNEN geht aber sehr wohl, und zwar mit remove_email_alias (seit dem 21.09.2026 gemessen — die frühere Auskunft "das geht nur im Kundenbereich" war falsch und darf dem Kunden nicht mehr gegeben werden). Welche Aliase ein Postfach hat, zeigt get_email_accounts — vor einem erneuten Aufruf dort nachsehen, damit nicht versehentlich ein weiterer dazukommt. Geprüft wird nur, dass Postfach und Alias nicht leer sind: Umlaute gehen durch diese Prüfung durch und scheitern erst bei Plesk. Ob das Postfach existiert, wird NICHT vorab geprüft: Gibt es die Mailbox nicht, wird die Aktion abgelehnt und nichts geändert — das ist keine Störung. Im Zweifel vorher get_email_accounts aufrufen, statt den Namen zu raten.
fix_https_redirectAktiviert (Standard) oder deaktiviert die automatische HTTP→HTTPS-Weiterleitung für eine Domain. Behebt das von diagnose_website/get_website_report gemeldete Finding "kein HTTPS-Redirect" direkt, statt es nur anzuzeigen. Reversibel und betrifft nur diese eine Einstellung. Vor dem EINSCHALTEN wird per echtem TLS-Handshake gemessen, ob die Domain aktuell ein gültiges, auf sie lautendes Zertifikat ausliefert: Ohne eines würde nach dem Einschalten jeder http-Aufruf auf einer Zertifikatswarnung landen statt auf der Seite — das wird deshalb abgelehnt (fehlendes, abgelaufenes oder fremdes Zertifikat), mit dem Hinweis, zuerst create_ssl_certificate zu nutzen. Lässt sich die Messung nicht durchführen (Handshake kommt nicht zustande), wird ebenfalls abgelehnt, aber mit eigener Begründung: Das ist WEDER ein Beleg für ein fehlendes NOCH für ein vorhandenes Zertifikat. force=true übergeht diese Prüfung bewusst (z. B. wenn das Zertifikat unmittelbar danach ausgestellt wird). Abschalten wird nie geprüft. Der gesetzte Zustand wird nach dem Schreiben aus Plesk zurückgelesen; gelingt das nicht, sagt die Antwort, dass der genannte Zustand der gewünschte und nicht der gemessene ist.
get_wordpress_backupsListet vorhandene On-Demand-WordPress-Backups (über WP Toolkit) — eigenständig von den täglichen automatischen Plesk-Gesamt-Backups, auf die der Kunde keinen direkten Zugriff hat. Meldet klar, wenn kein WordPress gefunden wurde.
create_wordpress_backupErstellt ein neues On-Demand-WordPress-Backup (über WP Toolkit) — z. B. als Absicherung vor einem riskanten Plugin-Update. Rein additiv, kein Risiko für bestehende Daten. Bei mehreren WordPress-Installationen auf derselben Domain (Subdomains) muss site_url angegeben werden.
redirect_domainRichtet eine HTTP-Weiterleitung von einer Domain auf eine andere ein (z. B. nach einem Domain-Wechsel: "alte-domain.de soll auf neue-domain.de weiterleiten"). Beide Domains müssen eigene turbopress-Hosting-Produkte des Kunden sein — eine Domain, die nicht bei turbopress liegt, kann so nicht eingerichtet werden. Schlägt Plesk-seitig sauber fehl, wenn source_domain bereits ein eigenes aktives Hosting hat (muss vorher aufgegeben werden).
get_outdated_pluginsListet WordPress-Plugins und -Themes mit verfügbarem Update (Version aktuell → verfügbar) — gelesen direkt auf der Installation und deshalb auch unmittelbar nach einem gerade ausgeführten Update richtig. Genauer als der reine Zähler aus get_wordpress_status — zeigt konkret, welche Plugins/Themes betroffen sind. Jeder Eintrag nennt den Anzeigenamen; der Slug steht in Klammern dabei, KANN ABER FEHLEN (null) — dann liess sich der vom Plugin gemeldete Slug nicht gegen das erwartete Zeichenmuster bestätigen, und dieser Eintrag ist für update_wordpress_item/set_wordpress_plugin_state nicht nutzbar. An update_wordpress_item und set_wordpress_plugin_state gehört IMMER der Slug, nie der Anzeigename — er lässt sich aus dem Namen auch nicht ableiten.
switch_php_versionWechselt die PHP-Version einer Domain (z. B. "8.4"). Welche Versionen es gibt und welche eingestellt ist, zeigt get_php_versions — dort nachsehen, NIE mit einer geratenen Version "ausprobieren": Ein Wechselversuch kann beim Kunden als Bestätigungsknopf landen. Eine Version, die auf dem Server nicht wählbar ist, wird abgewiesen, bevor irgendetwas vorbereitet oder geändert wird; die Fehlermeldung nennt dann die wählbaren Versionen. Die gesetzte Version wird aus Plesk zurückgelesen; lässt sich der Wert nicht zurücklesen, sagt die Antwort das ausdrücklich statt den Wunschwert als bestätigt auszugeben.
create_staging_siteErstellt eine Testkopie einer WordPress-Installation auf einer neuen Subdomain (z. B. staging.example.de) — legt die Subdomain bei Bedarf automatisch an (bei Namenskollision automatisch durchnummeriert: staging, staging2, staging3, ...) und stößt den Klon über WP Toolkit an. Bei mehreren WordPress-Installationen auf derselben Domain muss site_url angegeben werden. WP Toolkit arbeitet den Klon im Hintergrund ab und meldet nur die ANNAHME zurück: Die Antwort sagt deshalb "angestoßen", nicht "angelegt", und die genannte Staging-Adresse ist zusammengesetzt, nicht abgerufen — weder Erreichbarkeit noch SSL-Zertifikat sind geprüft. Dem Kunden entsprechend sagen, dass er die Adresse in ein paar Minuten selbst aufrufen soll. Schlägt der Klon fehl, bleibt die bereits angelegte Subdomain absichtlich bestehen (sie wird nicht automatisch entfernt) — auch das gehört in die Antwort an den Kunden.
update_wordpress_itemAktualisiert EIN einzelnes WordPress-Plugin oder -Theme (slug aus get_outdated_plugins). Der Slug wird zuerst gegen die tatsächlich installierten Erweiterungen geprüft — ist er dort nicht zu finden, bricht das Tool ab, OHNE einen der drei Backup-Plätze zu verbrauchen. Danach wird ein Sicherheits-Backup erstellt und dessen Vorhandensein nachgewiesen; lässt es sich nicht erstellen oder nicht nachweisen, wird NICHT aktualisiert. Nach dem Update wird die tatsächlich installierte Version auf der Installation NACHGELESEN und genannt — „aktualisiert" allein wird nie behauptet. Lässt sie sich nicht nachlesen, sagt die Antwort das ausdrücklich, statt Erfolg oder Fehlschlag zu behaupten. Nie "alle auf einmal", immer nur ein Element pro Aufruf.
update_wordpress_coreAktualisiert den WordPress-Core auf die neueste Version. Erstellt davor automatisch ein Sicherheits-Backup und weist dessen Vorhandensein nach — lässt es sich nicht erstellen oder nicht nachweisen, wird NICHT aktualisiert. Ein Core-Update kann bis zu 30 Minuten dauern — falls die Bestätigung nicht rechtzeitig eintrifft, meldet das Tool ehrlich "unverified" statt fälschlich Erfolg oder Fehlschlag zu behaupten; in dem Fall get_wordpress_status später separat prüfen.
prepare_domain_orderPrüft eine Domain per WHOIS und liefert — falls verfügbar — den Preis sowie einen Link zur Domainsuche-Seite, dessen Suchfeld mit dieser Domain vorbelegt ist. Das ist KEIN fertiger Warenkorb-Link: Die Domain landet dadurch nicht automatisch im Warenkorb, der Kunde muss auf der Seite erneut suchen und die Domain auswählen. Löst KEINE Zahlung aus und schließt KEINEN Vertrag ab (Registrant-Daten, AGB-Bestätigung und Bezahlung erfolgen erst im normalen WHMCS-Checkout, rechtlich bewusst kein automatischer Kauf per Chat). Ist die Domain vergeben, gibt es keinen Link — dann suggest_domain_alternatives nutzen.
get_support_ticketsEigene Support-Tickets auflisten (zeigt max. die letzten 20 Tickets), oder mit ticket_id den vollen Thread eines einzelnen Tickets abrufen. ticket_id bezieht sich auf die in der Liste angezeigte interne "Ticket-ID", NICHT auf die kundensichtbare Ticketnummer (#12345).
get_email_accountsE-Mail-Konten einer Domain auflisten (live von Plesk): Adresse, Speicherkontingent, eingerichtete WEITERLEITUNG und ALIASE. Das ist das lesende Gegenstück zu set_email_forwarding und set_email_alias — vorher war über den Chat nicht zu sehen, wohin die Post eines Postfachs geht oder unter welchen weiteren Adressen es erreichbar ist. Steht bei einem Konto keine Weiterleitung, ist das eine abgerufene Auskunft ("es ist keine eingerichtet"), keine fehlende Angabe; dasselbe gilt für Aliase. Das Weiterleitungsziel zeigt häufig auf eine FREMDE Domain und wird genau so ausgegeben, wie es eingetragen ist.
get_dns_recordsDNS-Zone-Records einer Domain live von Plesk abrufen. Jede Zeile beginnt mit der Kennung des Eintrags — genau die Zahl, die delete_dns_record als record_id erwartet. Die Kennungen sind nicht stabil: Sie werden neu vergeben, wenn ein Eintrag angelegt oder gelöscht wird, und gehören deshalb unmittelbar vor einem Löschen frisch abgerufen.
create_email_accountLegt ein neues E-Mail-Postfach auf einer Domain an. Das Passwort wird sicher zufällig generiert und in der Antwort angezeigt — bitte dem Kunden mitteilen, es wird nicht erneut angezeigt. Ob die Adresse schon vergeben ist, wird NICHT vorab geprüft: Gibt es sie bereits, wird die Anlage abgelehnt und das vorhandene Postfach bleibt unberührt — das ist keine Störung. get_email_accounts zeigt den Bestand.
reset_email_passwordSetzt das Passwort eines bestehenden E-Mail-Postfachs zurück. Das alte Passwort wird dabei ungültig — Vorsicht bei aktiven Mail-Clients, die neu konfiguriert werden müssen. Ob das Postfach existiert, wird NICHT vorab geprüft: Gibt es die Mailbox nicht, wird die Aktion abgelehnt und das bisherige Passwort bleibt gültig — das ist keine Störung. Im Zweifel vorher get_email_accounts aufrufen, statt den Namen zu raten.
create_databaseLegt eine neue MySQL-Datenbank auf einer Domain an.
create_database_userLegt einen neuen Datenbank-User an und verknüpft ihn mit einer bestehenden Datenbank. Das Passwort wird sicher zufällig generiert und in der Antwort angezeigt.
create_support_ticketEröffnet ein neues Support-Ticket. Auf maximal 5 Tickets pro Tag begrenzt, um versehentliche Mehrfach-Erstellung zu vermeiden.
reply_to_ticketSendet eine Antwort auf ein bestehendes eigenes Support-Ticket.
close_support_ticketSchließt ein bestehendes eigenes Support-Ticket.
add_dns_recordLegt einen neuen DNS-Record auf einer Domain an (Typen A, AAAA, CNAME, TXT, MX). Für MX-Records ist "priority" zwingend erforderlich (z. B. 10) — Plesk lehnt MX ohne Priorität ab. TXT-Records für SPF, DMARC und DKIM sind ausdrücklich vorgesehen; der Wert darf bis zu 2048 Zeichen lang sein, ein DKIM-Schlüssel passt also vollständig hinein. Ein fehlerhafter Record kann Mail-Zustellung oder Erreichbarkeit der Website beeinträchtigen — bitte Angaben vor der Bestätigung prüfen.
delete_dns_recordLöscht EINEN DNS-Eintrag einer Domain — der Weg zurück zu add_dns_record, etwa für einen falsch eingetragenen DKIM-, SPF- oder DMARC-Wert. Die Kennung (record_id) muss aus get_dns_records stammen und wird serverseitig gegen die Zone genau dieser Domain geprüft; eine geratene oder aus einer älteren Antwort übernommene Kennung wird abgewiesen, bevor irgendetwas gelöscht wird. Die Kennungen sind nicht stabil: vor dem Löschen get_dns_records frisch abrufen und dem Kunden Typ, Name und Wert des Eintrags nennen, den er löschen will. Ein gelöschter Eintrag lässt sich über dieses Werkzeug nicht wiederherstellen, nur mit add_dns_record neu anlegen — und ein fehlender SPF-, DKIM- oder MX-Eintrag kann Mailzustellung oder Erreichbarkeit der Website sofort beeinträchtigen. Die Antwort sagt ausdrücklich, ob der Eintrag nach dem Löschen wirklich aus der Zone verschwunden ist; ist die Zone danach nicht abrufbar, meldet sie das als ungeprüft statt als Erfolg.
get_cronjobsZeigt die geplanten Aufgaben (Cronjobs) einer Domain — Plesk "Geplante Aufgaben". Jede Zeile beginnt mit der Kennung, genau der Zahl, die delete_cronjob als cronjob_id erwartet. Die Kennungen sind NICHT stabil: Ein neu angelegter Cronjob kann eine frei gewordene Kennung wiederverwenden, deshalb vor einem Löschen frisch abrufen und nie eine Kennung aus einer früheren Antwort verwenden. Eine Aufgabe kann abgeschaltet sein — dann steht das in ihrer Zeile, und sie läuft nicht, obwohl sie eingerichtet ist; gib das ungekürzt weiter. War die Liste nicht abrufbar, sagt die Antwort genau das: Behaupte dann nie, es gebe keine Cronjobs.
delete_cronjobLöscht EINE geplante Aufgabe (Cronjob) einer Domain — der Weg zurück zu create_cronjob, etwa für eine falsch angelegte Aufgabe. Ändern kann dieses Werkzeug nichts: Dafür die alte Aufgabe löschen und mit create_cronjob eine neue anlegen. Die Kennung (cronjob_id) muss aus get_cronjobs stammen und wird serverseitig gegen die Aufgabenliste genau dieser Domain geprüft; eine geratene oder aus einer älteren Antwort übernommene Kennung wird abgewiesen, bevor irgendetwas gelöscht wird. Die Kennungen sind nicht stabil — vor dem Löschen get_cronjobs frisch abrufen und dem Kunden Befehl, Zeitplan und Beschreibung der Aufgabe nennen, die er löschen will, nicht nur die Zahl. Eine gelöschte Aufgabe lässt sich über dieses Werkzeug nicht wiederherstellen, nur neu anlegen; läuft an ihr etwas Wichtiges (wp-cron hält bei WordPress geplante Beiträge, Backups und Newsletter am Laufen), hört das sofort auf. Die Antwort sagt ausdrücklich, ob die Aufgabe nach dem Löschen wirklich aus der Liste verschwunden ist; ist die Liste danach nicht abrufbar, meldet sie das als ungeprüft statt als Erfolg.
create_ssl_certificateStellt ein neues Let's-Encrypt-SSL-Zertifikat für eine Domain aus (über sslit) und ersetzt damit das aktuelle Zertifikat. Sichert standardmäßig die Domain selbst, www und webmail; mail.<domain> nur auf Wunsch (include_mail), da das einen bereits existierenden mail.<domain>-DNS-Record voraussetzt und sonst mit einer konkreten Fehlermeldung fehlschlägt. Let's Encrypt erlaubt nur 5 identische Zertifikate pro Woche. Dagegen schützen zwei Prüfungen, die beide ihre Grenzen nennen: (1) gezählt werden die Ausstellungen, die in den letzten 7 Tagen ÜBER TURBOPRESS für diese Domain liefen (eigenes Prüfprotokoll) — ab 5 wird abgelehnt; Ausstellungen über das Plesk-Panel oder einen anderen Anbieter zählt diese Zahl nicht mit, sie ist also eine Untergrenze, keine Bilanz des Kontingents. (2) eine Frischeprüfung am live ausgelieferten Zertifikat: Stammt es von Let's Encrypt und ist es weniger als 7 Tage alt, wird ebenfalls abgelehnt — das ist ein Indiz, keine Zählung, und es sagt nur, WAS ausgeliefert wird, nicht wer es ausgestellt hat (ein vorgeschaltetes CDN/Proxy kann ein fremdes sein). force=true übergeht beides. Konnte eine der beiden Prüfungen nicht greifen (TLS-Handshake fehlgeschlagen oder Protokoll unlesbar), fällt der Schutz NICHT stillschweigend aus: Die Antwort sagt dann ausdrücklich, dass er nur unvollständig gegriffen hat. Antwortet mit dem live bestätigten Ergebnis (Aussteller, abgedeckte Namen, Gültigkeit) — oder ausdrücklich als unbestätigt, wenn die Live-Verifikation nicht möglich war.
get_ssl_statusSSL-Zertifikatsstatus einer Domain live prüfen (echter TLS-Handshake, kein Cache): Aussteller, abgedeckte Namen (SANs) und verbleibende Gültigkeit. Ob Auto-Renew konfiguriert ist, kann nicht ermittelt werden.
get_cloudlinux_statusCloudLinux/LVE-Ressourcenlimits einer Domain abrufen (Überschreitungen bei CPU, Speicher, Prozessen, I/O). Stammt aus dem einmal täglich aktualisierten turbocheck-Bericht — die Zähler gehören zur letzten Erhebungsperiode, nicht zum Moment der Abfrage; eine Drosselung von vorhin taucht ggf. erst nach dem nächsten Durchlauf auf.
diagnose_websiteAggregiert alle relevanten Signale einer Domain (live: HTTP-Erreichbarkeit, SSL, Speicherplatz, Datenbanken, fatale PHP-Fehler aus dem Fehlerprotokoll; aus dem letzten Report: Security, DNS, CloudLinux, WordPress) zu EINER priorisierten Hauptdiagnose statt vieler Einzelantworten. Ideal für "meine Seite ist kaputt/langsam, was ist los?" statt mehrere Tools einzeln aufzurufen. Das Protokoll wird im Moment der Abfrage gelesen und nach "PHP Fatal error" und "PHP Parse error" durchsucht, gemeldet werden nur Treffer aus den letzten 48 Stunden — eine Protokolldatei umspannt Monate, ältere Zeilen sind kein aktuelles Problem. Kein Treffer heißt also "nichts in diesem Zeitraum", nicht "nie ein Fehler"; ältere nennt die Antwort im Fußtext. War das Protokoll nicht lesbar, sagt die Antwort das ausdrücklich — dann ist ein PHP-Fehler offen, nicht ausgeschlossen. Andere Meldungen (Warnungen, Hinweise) oder ein eigenes Suchmuster: search_domain_error_log.
get_performance_findingsBeantwortet "was genau bremst meine Seite?" — die Einzelbefunde des ZULETZT TATSÄCHLICH GELAUFENEN turbometrics-Scans, mit Handlungsempfehlung je Punkt (Bilder, JS-Last, Caching, Server-Antwortzeit) und dem Gesamtwert eben dieses Scans. Die Scanliste wird dafür im Moment der Abfrage gelesen, ein über start_performance_scan angestoßener Lauf erscheint hier also als erstes; der zwischengespeicherte Wert aus dem nächtlichen Bericht steht dagegen in get_performance_score, weshalb beide Zahlen auseinanderliegen können. Kennt turbometrics die Domain nachweislich nicht, sagt die Antwort das als fehlende Aktivierung. Ließ sich das nicht ermitteln, sagt sie GENAU DAS — ein solcher Messausfall ist weder "nicht aktiviert" noch eine Entwarnung. Offene Warnungen aus der laufenden Überwachung: get_performance_alerts.
get_performance_alertsBeantwortet "hat die Überwachung zuletzt etwas gemeldet?" — die OFFENEN Warnungen der laufenden turbometrics-Überwachung (z. B. TTFB über der Schwelle, visuelle Regression, fehlgeschlagener Scan), also Ereignisse über die Zeit, keine Momentaufnahme und keine Messwerte. Die Zahlen einer Messung stehen in get_performance_findings, der zwischengespeicherte Gesamtwert in get_performance_score. Eine leere Liste wird nicht pauschal als Entwarnung ausgegeben: Die Antwort unterscheidet "überwacht, nichts offen", "Domain wird gar nicht überwacht" und "nicht ermittelbar".
get_webmail_urlBildet die Webmail-Zugangsadresse einer Domain nach dem üblichen Schema (https://webmail.<domain>/). Das ist keine Messung: Es wird nicht geprüft, ob der Host im DNS existiert oder ein gültiges Zertifikat hat — bei externem DNS ohne webmail-Eintrag kann die Adresse im Browser nicht auflösen.
restore_wordpress_backupSpielt ein vorhandenes On-Demand-WordPress-Backup (aus get_wordpress_backups) zurück und überschreibt damit den aktuellen Live-Stand der Seite. Vor dem Restore wird automatisch ein Sicherungs-Backup des bisherigen Stands erstellt ("pre-restore-...") und sein Vorhandensein nachgewiesen; gelingt das nicht, wird NICHT restauriert. WICHTIG für die Antwort: WP Toolkit NIMMT den Restore-Auftrag nur an und arbeitet ihn im Hintergrund ab — dass er durchgelaufen ist, lässt sich nicht bestätigen, und ein Fehlschlag danach (etwa beim Datenbank-Import) meldet sich nirgends. Das Tool meldet deshalb IMMER "angestoßen, nicht bestätigt" und nie "wiederhergestellt"; diesen Vorbehalt bitte unverändert weitergeben. Ob der erwartete Stand da ist, sieht nur der Kunde selbst auf der Website. Bei mehreren WordPress-Installationen auf derselben Domain muss site_url angegeben werden.
reset_wordpress_admin_passwordSetzt das Passwort eines WordPress-Admin-Kontos zurück. Mit login lässt sich ein BESTIMMTER Benutzername gezielt ansprechen — der Name wird vorher gegen die echte Administratorenliste der Installation geprüft und abgelehnt, wenn es ihn dort nicht gibt; list_wordpress_admins liefert die vorhandenen Namen. Ohne login wird das hinterlegte Standard-Admin-Konto zurückgesetzt. Das alte Passwort wird dabei sofort ungültig, und das neue Passwort wird in der Antwort nur EINMAL im Klartext angezeigt — danach ist es nicht mehr abrufbar. Bei mehreren WordPress-Installationen auf derselben Domain muss site_url angegeben werden.
activate_turbometricsAktiviert turbometrics (kostenlose Performance-Überwachung für turbopress-Kunden) für eine Domain. Beim ersten Mal wird dabei ein Konto bei turbometrics.io mit der Kundenadresse angelegt; besteht es schon, bleibt es unverändert — die Antwort sagt, welcher Fall eintrat. Wird ein Konto NEU angelegt, verschickt turbometrics eine Willkommens-Mail mit einem Link zum Festlegen des Passworts, 60 Minuten gültig (bestätigt am 21.09.2026 aus dem turbometrics-Quelltext: die Mail geht nur innerhalb des created-Zweigs raus). Bestand das Konto schon, geht KEINE Mail raus — kündige dann auch keine an. Die Antwort selbst nennt die Mail nicht, nur created/exists; richte dich danach. Danach laufen automatische Scans, deren Ergebnisse get_performance_score und get_performance_findings liefern.
start_performance_scanStößt bei turbometrics einen Performance-Scan an, statt auf den nächsten automatischen Lauf zu warten. Ändert am Hosting nichts. Das Ergebnis holt AUSSCHLIESSLICH get_performance_findings — es liest die Scanliste im Moment der Abfrage und zeigt damit genau diesen Lauf; get_performance_score bleibt zunächst auf dem alten Wert, weil dort der nächtliche Bericht steht. Liefert bewusst keinen Ergebnis-Link (der Scan läuft in unserem Agenturkonto, dessen Report der Kunde nicht öffnen kann). Die Antwort gibt den gemeldeten Zustand wieder, statt in jedem Fall "gestartet" zu melden: ein sofort fehlgeschlagener oder unbekannter Zustand wird als solcher benannt. Eine Laufzeit wird NICHT zugesagt — ob der Lauf durch ist, zeigt der Zeitpunkt bei get_performance_findings.
create_cronjobRichtet einen wiederkehrenden Cronjob für eine Domain ein (Plesk "Geplante Aufgaben"). Die Regeln für die Befehlszeile stehen vollständig bei "command"; lies sie, bevor du dem Kunden einen Befehl vorschlägst — alles davon wird serverseitig geprüft und sonst mit Angabe der verletzten Regel abgewiesen. Bei type="exec" und type="php" wird zusätzlich nachgesehen, ob die Datei an der angegebenen Stelle überhaupt existiert. Fehlt sie, wird der Cronjob trotzdem angelegt (man darf ihn vor dem Hochladen einrichten) — die Antwort trägt dann aber eine Warnung, die du dem Kunden ungekürzt weitergeben musst, statt nur "eingerichtet" zu melden. Konnte nicht nachgesehen werden, sagt die Antwort genau das; behaupte dann weder, die Datei sei da, noch, sie fehle.