Website hosten.
MCP einrichten.

Die hostit.at-Anleitung für statische Websites: Claude oder Codex verbinden, HTML-Dateien und Bilder hochladen und deine Website im Browser bearbeiten.

Dein Agent übernimmt den Weg zur URL.

Kopiere den Prompt in Claude, Codex oder deinen Agenten. Er fragt nach Projekt und Wunschadresse, verbindet MCP und begleitet die Veröffentlichung.

Anmeldung und Sicherheitsprüfung bestätigst du selbst. Veröffentlicht wird nach der Inhaltsprüfung.

Prompt ansehen und anpassen

Schnellstart

  1. Erstelle ein Konto oder melde dich an und öffne deinen Workspace.
  2. Lege ein Projekt mit einem Namen und einer freien Subdomain an.
  3. Lade den fertigen Website-Ordner mit index.html hoch oder verbinde deinen MCP-Client.
  4. Verfolge die Prüfung. Sobald der Status „Veröffentlicht“ lautet, ist deine URL erreichbar.

Statische Websites benötigen keinen Build auf dem Server. Bei Vite oder ähnlichen Tools lädst du den fertigen dist-Ordner hoch, nicht den Quellcode.

MCP verbinden

Der Remote-MCP-Endpunkt lautet https://hostit.at/mcp. In einem Client mit Remote-MCP-Unterstützung fügst du diese URL als Server hinzu. Die genaue Konfiguration hängt vom Client ab.

Remote-MCP · Konfigurationsbeispiel
{
  "mcpServers": {
    "hostit": {
      "url": "https://hostit.at/mcp"
    }
  }
}

Wenn dein Client eine Anmeldung öffnet, bestätige den Zugriff auf dein Konto im Browser. Für Clients mit API-Token-Unterstützung erstellst du einen Schlüssel unter API-Schlüssel und übergibst ihn über die sichere Credential-Verwaltung des Clients. Dein Agent kann Anmeldung und menschliche Sicherheitsprüfung nicht für dich umgehen.

Lokaler MCP-Server über stdio

Baue das MCP-Paket aus dem Repository mit npm run build. Ersetze beide Pfade durch den absoluten Pfad zu deiner Installation und den erlaubten Website-Ordner.

Claude Desktop / stdio
{
  "mcpServers": {
    "hostit": {
      "command": "node",
      "args": ["/ABSOLUTER/PFAD/hostit.at/apps/mcp/dist/index.js"],
      "env": {
        "HOSTIT_API_URL": "https://hostit.at",
        "HOSTIT_ALLOWED_ROOTS": "/ABSOLUTER/PFAD/MEINE-WEBSITES"
      }
    }
  }
}

Zum Veröffentlichen benötigt der Client ein authentifiziertes Konto. Er verwendet vorhandene private Zugangsdaten aus ~/.config/hostit/credentials.json (oder dem konfigurierten XDG_CONFIG_HOME). Bei einer erlaubten Registrierung über hostit_register speichert er ausgestellte Zugangsdaten dort selbst. Alternativ kannst du einen bestehenden Schlüssel mit HOSTIT_API_TOKEN über deinen Secret-Manager oder die sichere Konfiguration des Clients übergeben. Schreibe ihn weder in Projektdateien noch in Markdown. HOSTIT_API_URL ist die Basis-URL ohne /api/v1.

hostit_upload_directory lädt einen fertigen lokalen Ordner hoch, dessen Pfad unter HOSTIT_ALLOWED_ROOTS liegt. Das Werkzeug ist beim lokalen stdio-Server verfügbar; der Remote-Server kann keine Dateien auf deinem Rechner lesen. Codex kann denselben stdio-Prozess starten. In einem lokalen Setup verwende http://localhost:8080 als Basis-URL.

Aus deinem Assistenten veröffentlichen

Dein Assistent liest mit hostit_plans und hostit_account zuerst Limits und Konto. Mit hostit_list_projects findet er bestehende Projekte. hostit_check_slug prüft die Wunschadresse, hostit_create_project legt das Projekt an.

hostit_deploy · Werkzeugargumente
{
  "projectId": "DEINE_PROJEKT_ID",
  "files": [
    {
      "path": "index.html",
      "encoding": "utf8",
      "content": "<!doctype html><html lang=\"de\"><title>Meine Website</title><h1>Hallo Welt.</h1></html>"
    }
  ]
}

Ein angenommenes Deployment landet zuerst in der Warteschlange. hostit_deployment_status fragt den tatsächlichen Status ab. Erst live bedeutet veröffentlicht; awaiting_review wartet auf eine manuelle Entscheidung. Abgelehnte oder fehlgeschlagene Uploads werden nicht veröffentlicht.

Die Werkzeuge hostit_set_access, hostit_get_files und hostit_rollback verwalten Zugriff, veröffentlichte Dateien und frühere freigegebene Versionen.

Über die Projektseite kannst du eine .hostit/project.json herunterladen. Sie enthält nur Basis-URL, Projekt-ID und Slug, keine Schlüssel.

Bilder und Dateien hochladen

Ja: POST /api/v1/projects/:id/deployments ist der Upload-Endpunkt. Er nimmt ein JSON-Objekt mit der vollständigen Dateiliste entgegen und antwortet mit 202 und einer Deployment-ID. Bilder werden mit der Website hochgeladen; es gibt keinen separaten Multipart-Endpunkt für einzelne Bilder.

Textdateien wie HTML, CSS oder SVG verwendest du mit encoding: "utf8". PNG, JPEG, WebP und andere Binärdateien verwendest du mit encoding: "base64". Übertrage den Base64-Inhalt ohne data:image/…;base64,-Präfix.

HTTP-Upload · vollständiger Snapshot mit PNG
POST /api/v1/projects/DEINE_PROJEKT_ID/deployments HTTP/1.1
Host: hostit.at
Authorization: Bearer <aus deiner sicheren Credential-Verwaltung>
Content-Type: application/json

{
  "files": [
    {
      "path": "index.html",
      "encoding": "utf8",
      "content": "<!doctype html><html lang=\"de\"><title>Bild-Beispiel</title><img src=\"assets/pixel.png\" alt=\"\"></html>"
    },
    {
      "path": "assets/pixel.png",
      "encoding": "base64",
      "content": "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR4nGPY+K38PwAHmAMeu0TYUQAAAABJRU5ErkJggg=="
    }
  ]
}

Das PNG im Beispiel ist ein kleines Testbild. In deiner Website referenzierst du Assets über ihren Dateipfad, etwa assets/logo.webp. Alle Dateien eines Deployments ergeben einen neuen Snapshot: Dateien, die du weglässt, fehlen in der neuen veröffentlichten Version. Für eine Änderung nur an einem Bild lädst du deshalb die übrigen Website-Dateien ebenfalls hoch oder liest sie zuerst mit hostit_get_files.

Im Browser wähle auf der Projektseite „Ordner auswählen“, damit Unterordner und Bildpfade erhalten bleiben. Bei „Einzelne Dateien“ liegen die gewählten Dateien im Website-Hauptverzeichnis. Dein Agent verwendet hostit_deploy oder lokal hostit_upload_directory.

Website-Dateien im Browser bearbeiten

  1. Öffne dein Projekt im Workspace und wähle „Dateien“.
  2. Unter „Dateistand“ kannst du den „Letzten Upload“ oder die „Veröffentlichte Website“ auswählen. So kannst du auch einen noch nicht freigegebenen Upload überarbeiten.
  3. Öffne einen Ordner oder eine Datei. Texte kannst du direkt bearbeiten, Bilder ansehen und Dateien herunterladen oder ersetzen. Über „Dateien hinzufügen“, „Ordner hinzufügen“ und „Neue Textdatei“ ergänzt du dein Projekt. Nicht mehr benötigte Dateien kannst du entfernen. Die Startseite index.html muss erhalten bleiben.
  4. Klicke auf „Änderungen veröffentlichen“. Die vollständige neue Version wird geprüft; die bisherige Website bleibt bis zur Veröffentlichung unverändert.

Deine Änderungen sind zunächst ein Entwurf in diesem Browser. Sichere oder veröffentliche sie, bevor du die Seite verlässt. Gibt es inzwischen eine andere veröffentlichte Version, bleibt dein Entwurf erhalten. Lade den aktuellen Stand bewusst neu und übertrage deine Änderungen darauf.

Jede Veröffentlichung zählt zum Tageslimit. Auch gespeicherte frühere Versionen belegen Speicher. Deine aktuellen Limits findest du im Tarifbereich.

Projektadresse später ändern

Unter Projekteinstellungen kannst du den Slug deiner kostenlosen Adresse ändern, etwa von erste-idee.hostit.at zu neue-idee.hostit.at. Eine erfolgreiche Adressänderung ist pro Projekt einmal in sechs Stunden möglich. Die nächste mögliche Änderung wird dort angezeigt. Änderungen am Projektnamen beeinflussen diese Wartezeit nicht.

Die gewünschte Subdomain muss frei und zulässig sein. Nach deiner Bestätigung verwendet die Website sofort die neue Adresse; alte Links führen nicht mehr zu deiner Website und werden nicht umgeleitet. Die alte Subdomain wird sofort frei und kann von anderen genutzt werden. Die veröffentlichte Version und ihr Zugriffsschutz bleiben erhalten. Aktualisiere danach deine .hostit/project.json.

Für Agenten: hostit_check_slug prüft die Verfügbarkeit und hostit_update_project ändert den Slug. Über die API: GET /project-slugs/:slug und PATCH /projects/:id mit {"slug":"neue-idee"}. Der Server entscheidet bei der Änderung verbindlich über Verfügbarkeit und Cooldown. Eine Abfrage reserviert keine Adresse.

Damit änderst du deine hostit.at-Subdomain. Eine eigene Domain lässt sich aktuell noch nicht verbinden.

Die HTTP-API

Vollständige API-Basis: https://hostit.at/api/v1. Automatisierte Clients authentifizieren sich per Bearer-Token. Browser verwenden eine sichere Session.

Anfrageform · Platzhalter, kein echter Schlüssel
GET /api/v1/projects HTTP/1.1
Host: hostit.at
Authorization: Bearer <aus deiner sicheren Credential-Verwaltung>

POST /projects legt Projekte an, POST /projects/:id/deployments nimmt Dateien an und GET /deployments/:id liefert den Status. Fehler verwenden {"error":{"code":"…","message":"…"}}.

Was du hochladen kannst

Öffentliche HTML-, CSS-, JavaScript-, Bild- und Font-Dateien. Für Bilder: SVG, PNG, JPG/JPEG, GIF, WebP, AVIF und ICO. Für Fonts: WOFF, WOFF2, TTF und OTF. Außerdem sind JSON, TXT, Markdown, PDF, XML und Webmanifest erlaubt. Keine Archive, serverseitigen Programme, .env-Dateien, privaten Schlüssel oder versteckten Dateien. index.html muss im Website-Hauptverzeichnis liegen. Der Server prüft Dateipfade, Inhalte und Tariflimits bei jedem Upload.

Passwortschutz benötigt mindestens zwölf Zeichen. Er schützt den Zugriff auf die Website; Schlüssel gehören trotzdem nie in Website-Dateien. Speicher, Deployments pro Tag und monatlicher Traffic hängen von deinem Tarif ab.

Für WordPress und serverseitige Anwendungen: jstrauss.at. Für Gameserver: mchosting.at.