Verbindungsdaten
| Name | RTK Website Host |
|---|---|
| Server URL | https://host.kuble.ai/mcp |
| Authentication | OAuth 2.1 mit PKCE |
{
"name": "RTK Website Host",
"server_url": "https://host.kuble.ai/mcp",
"authentication": "OAuth 2.1 mit PKCE"
}
ChatGPT verbinden
- Diesen Ablauf in ChatGPT Web durchfuehren. Benutzerdefinierte MCP-Apps werden aktuell nicht in der Mobile-App eingerichtet oder getestet.
- Den alten RTK Website Host nicht im bestehenden Chat weiterverwenden: ChatGPT speichert einen Snapshot der alten Tools.
- In ChatGPT Settings oeffnen und zu Apps gehen.
- Falls noetig: unter Advanced settings den Developer Mode aktivieren.
- Business: die bisherige App neu erstellen. Enterprise/Edu: unter Action control die Actions aktualisieren oder ebenfalls eine neue App erstellen.
- Am sichersten: Create oder New App waehlen.
- Als Name
RTK Website Host OAutheintragen. - Als Server URL
https://host.kuble.ai/mcpeintragen. - OAuth als Authentication waehlen, Scan Tools starten und den Browserdialog abschliessen.
- Im Browser den Voucher oder Multi-Voucher eingeben. Damit darf die Verbindung neue Websites erstellen und alle noch vorhandenen Websites bearbeiten, die mit diesem Code erstellt wurden.
- Nach der Rueckleitung die App erstellen bzw. publizieren.
- Einen neuen Chat oeffnen,
RTK Website Host OAuthaktivieren und zuerstconnected_siteaufrufen.
Claude verbinden
- In Claude Customize und dann Connectors oeffnen.
- Bei Pro/Max: + und Add custom connector waehlen.
- Bei Team/Enterprise: Owner fuegen ihn unter Organization settings und Connectors hinzu.
- Als Remote MCP Server URL
https://host.kuble.ai/mcpeintragen. - OAuth automatisch erkennen lassen und den sicheren Browserdialog abschliessen.
- Add klicken und den Connector im Chat aktivieren.
Was ist was?
- Voucher-Code: Code aus dem Workshop fuer genau eine Website. Nach dem Erstellen kann derselbe Code jederzeit wieder verbunden werden, um diese Website zu bearbeiten.
- Multi-Voucher: Code fuer beliebig viele Websites. Jede neue Verbindung mit diesem Code darf alle damit erstellten Websites bearbeiten und weitere erstellen.
- Subdomain: Du waehlst nur den Slug, zum Beispiel
meine-seite. Die fertige Domain ist dannmeine-seite.host.kuble.ai. - Public: Alle koennen die Website sehen.
- Geschuetzt: Nur freigegebene E-Mail-Adressen koennen die Website per Magic-Link sehen.
- Editor-E-Mail: Adresse, mit der du spaeter von einem anderen LLM oder Computer einen neuen Bearbeitungs-Code anfordern kannst.
- MCP-OAuth: Der Bearbeitungszugang liegt im geschuetzten HTTP-Header und ist fuer das Modell unsichtbar.
Code oder Token: Erstellen und Bearbeiten
- Einmal-Voucher: Erstellt genau eine Website. Derselbe Code kann diese Website spaeter auf jedem neuen MCP wieder zum Bearbeiten freischalten.
- Multi-Voucher: Erstellt beliebig viele Websites. Derselbe Token schaltet bei jeder Verbindung automatisch alle damit erstellten Websites frei.
- Ohne ursprünglichen Code: Bestehende Website ohne Code waehlen und Subdomain plus hinterlegte Editor-E-Mail eingeben.
Wichtig: Behandle den Code wie ein Passwort. Jede Person mit dem Code kann die zugehoerigen Websites bearbeiten und loeschen.
Startfrage
Der Agent soll am Anfang immer fragen, ob die Website public oder geschuetzt sein soll.
- Bei public kann jede Person die Website aufrufen.
- Bei geschuetzt fragt der Agent nach den erlaubten E-Mail-Adressen und setzt die Site mit
site_visibility: "protected"undallowed_emailsauf. - Zusaetzlich soll der Agent nach Editor-E-Mail-Adressen fragen und diese als
editor_emailsspeichern. - Geschuetzte Sites werden vom Host vor HTML, Assets und
/_db/...Endpunkten per Magic-Link-Login geschuetzt.
Von anderem LLM oder Computer weiterarbeiten
Beim Verbinden erscheint die sichere Kuble-Host-Seite. Am einfachsten gibst du dort nochmals den urspruenglichen Voucher oder Multi-Voucher ein.
- Ein bereits verwendeter Einmal-Voucher schaltet seine eine Website zum Bearbeiten frei, erstellt aber keine zweite.
- Ein Multi-Voucher schaltet automatisch alle noch vorhandenen Websites frei, die mit ihm erstellt wurden, und darf weitere erstellen.
- Falls der Code nicht mehr vorhanden ist: Bestehende Website ohne Code waehlen und Subdomain plus Editor-E-Mail eingeben.
- Voucher, Editor-Code und Bearbeitungs-Token erscheinen zu keinem Zeitpunkt im Chat.
Bilder und Dateien
ChatGPT/Claude koennen Dateien aus Code Interpreter oder Sandbox-Speicher je nach Client nicht direkt an MCP uebergeben. Der Host kann Assets trotzdem publizieren, wenn der Agent einen dieser Wege nutzt.
- Favicon, Icons, einfache Logos, Muster und kleine Illustrationen direkt als
favicon.svgoder SVG/CSS/Text mitpublish_siteerstellen. - Bilder oder Dateien mit oeffentlicher HTTPS-URL via
import_asset_from_urlimportieren und unterassets/...speichern. - Wenn eine Datei nur lokal im Code Interpreter existiert, braucht der Agent eine oeffentliche URL oder erstellt eine SVG/Text-Alternative.
Custom Domains
Eine eigene Domain wie example.com oder app.example.com kann per MCP vorbereitet und verifiziert werden. Die DNS-Eintraege muessen aber beim Domain-Anbieter gesetzt werden.
start_custom_domain_setuperzeugt TXT-Verifikation und A/CNAME-Anleitung.- TXT:
_kuble-verify.deinedomain.chmit dem generiertenkth-...Wert beweist Domain-Kontrolle. - Subdomains nutzen meist
CNAME app.deinedomain.ch -> host.kuble.ai. - Root-Domains nutzen meist
A deinedomain.ch -> 188.245.205.0. - Kuble-interne Domains wie
felix.kuble.comsind nur fuer Sites mit einer Editor-E-Mail@kuble.comerlaubt. Dafuer gibtstart_custom_domain_setupeinen A-Record auf188.245.205.0aus. - Reservierte Kuble-Namen wie
www,v3,hostund verschachtelte Namen bleiben gesperrt. - Danach
check_custom_domain_dnsausfuehren und bei Erfolg mitactivate_custom_domainaktivieren.
Instruktionen fuer LLMs
Diese Regeln werden verbundenen LLMs auch direkt ueber MCP als Server-Instruktionen mitgegeben.
RTK Website Host MCP build contract:
Base domain: host.kuble.ai
This remote MCP connection uses OAuth. The user enters a voucher, multi-voucher, or editor code only in the secure browser authorization page. Never ask the user to paste one of these secrets or a site_token into the chat.
1. First call connected_site. It returns the connection's creation permission and all sites this connection can edit.
2. If creation_permission.can_create_site is true and the user wants a new site, ask the user for the desired subdomain, whether it should be public or protected, allowed viewer emails when protected, and editor emails for later recovery. Then call claim_subdomain WITHOUT a voucher/code/site_token. The OAuth connection supplies the creation permission securely.
3. A one-time voucher permits exactly one successful claim. After that claim, the same active voucher can be used in any new OAuth connection to edit its site but cannot create a second site. A multi-voucher permits multiple claims, and every new OAuth connection using it can edit all still-existing sites created with that token. Call connected_site again when you need the current remaining permission or list of sites.
4. For all site tools, use a slug returned by claim_subdomain or connected_site and omit site_token. The OAuth HTTP authorization supplies site access outside the model context.
5. If the user wants to edit an existing site that connected_site does not list, tell them to reconnect the RTK Website Host app and enter the original voucher or multi-voucher in the secure browser. This automatically restores every existing site created by that code. If the code is unavailable, use the browser's "Bestehende Website ohne Code" fallback with the site's slug and configured editor email.
6. Use the returned url/full_domain as the website address. Never give users /s/<slug>/ preview URLs; those are local-development previews only.
7. If the user wants to change public/protected access after creation, use configure_site_access. Protected sites require allowed viewer email addresses.
8. Editor management: use configure_site_editors and get_site_editors. Editor emails allow a later OAuth reconnection without exposing codes to the model.
8a. Whole-site deletion: call delete_site only after the user explicitly confirms deletion of the exact slug. Set confirm_slug to that same slug. Explain that the website, custom domains, files, databases, sessions, editor links, and checkpoints go offline; the original voucher remains consumed. Deleted data is kept in an admin-only server trash for recovery.
9. First full publish: call publish_site with replace=true and include at minimum index.html. Prefer index.html, assets/styles.css, assets/app.js, and favicon.svg.
10. Every site needs a favicon. Create a simple favicon.svg and link it with a relative path if no brand asset is provided.
11. Create responsive, accessible HTML with viewport metadata, a useful title, visible focus states, and clear success/error states.
12. Create databases before publishing frontend code that depends on them. Use create_database and then create_table.
13. Browser reads use GET /_db/{database}/{table} with public_read=true. Public forms use POST /_db/{database}/{table} with public_insert=true. Never place authentication data in browser code.
14. For protected sites and login experiences, use the host's built-in /_auth/request, /_auth/me, /_auth/logout, and /_auth/verify endpoints. Do not configure external authentication providers.
15. Use import_asset_from_url for public HTTPS assets. Generate small SVG/CSS/text assets directly with publish_site.
16. Before risky edits, full redesigns, database migrations, or deleting files, call create_checkpoint. Restore only when the user asks.
17. Use list_files and read_file before partial edits. Use replace=true only for an intentional full replacement.
18. For custom domains, call start_custom_domain_setup, show the returned DNS records, check them with check_custom_domain_dns, and activate only when DNS is ready.
Login-Seiten
Wenn eine Website Login braucht oder geschuetzt sein soll, nutzt sie die eingebaute Magic-Link-Auth vom Host. Es braucht kein Resend, SMTP, OAuth oder eigene API-Keys.
POST /_auth/requestmit{ "email": "...", "redirect_path": "/" }sendet den Magic Link.GET /_auth/meprueft, ob eine Person eingeloggt ist.POST /_auth/logoutmeldet aus./_auth/verifywird automatisch ueber den E-Mail-Link geoeffnet und setzt ein HttpOnly-Cookie.configure_site_accesskann eine bestehende Site spaeter zwischen public und geschuetzt umschalten.
Checkpoints
Agents koennen pro Subdomain bis zu drei Wiederherstellungspunkte speichern. Ein Checkpoint enthaelt Dateien und einfache JSON-Datenbanken.
create_checkpointmit kurzer Beschreibung speichert den aktuellen Stand.list_checkpointszeigt vorhandene Checkpoints mit Beschreibung und Datum.restore_checkpointsetzt Dateien und JSON-Datenbanken auf den gewaehlten Stand zurueck.- Beim vierten Checkpoint wird automatisch der aelteste entfernt.
Website loeschen
Eine MCP-Verbindung kann nur Websites loeschen, die sie auch bearbeiten darf. Der Agent muss vor delete_site die ausdrueckliche Bestaetigung fuer den exakten Slug einholen.
- Website, Subdomain, Custom Domains, Dateien, Datenbanken, Sessions, Editor-Zugaenge und Checkpoints werden aus dem aktiven Betrieb entfernt.
- Die Daten landen zuerst in einem serverseitigen Admin-Papierkorb und koennen bei einem Fehler wiederhergestellt werden.
- Der urspruengliche Einmal-Voucher bleibt verbraucht. Ein Multi-Voucher kann weiterhin neue Websites erstellen.
Start-Prompt
Diesen Text kannst du nach dem Verbinden in ChatGPT oder Claude verwenden:
Nutze RTK Website Host. Rufe zuerst connected_site auf. Wenn die Verbindung eine neue Website erstellen darf, frage mich nach Subdomain, Sichtbarkeit sowie Viewer- und Editor-E-Mails. Rufe danach claim_subdomain ohne Voucher und ohne site_token auf. Publiziere eine einfache responsive Website mit Startseite, CSS, Favicon und Kontaktformular. Erstelle davor eine Datenbank main mit einer Tabelle leads. Uebergib bei den Tools kein site_token; die OAuth-Verbindung autorisiert die Aufrufe.
Reconnect-Prompt
Diesen Text kannst du in einem neuen LLM verwenden, wenn die Site schon existiert:
Verbinde RTK Website Host neu. Gib im Browserdialog meinen urspruenglichen Voucher oder Multi-Voucher ein. Dadurch werden alle damit erstellten Websites wieder zum Bearbeiten freigeschaltet. Rufe danach connected_site auf und arbeite an der autorisierten Website weiter.
Offizielle Hilfe
ChatGPT Developer Mode und MCP Apps
Claude Custom Connectors mit Remote MCP