Zum Inhalt

MCP-Server (KI-Anbindung)

Die MCP-Server-Extension verbindet externe KI-Tools — Claude, ChatGPT, Cursor, VS Code und jeden weiteren Client, der das offene Model Context Protocol (MCP) spricht — direkt mit Ihrem Panel. Sie wird als Opt-in-Extension über den Marktplatz installiert; der Panel-Kern bleibt unberührt, solange sie nicht aktiviert ist.

Sicherheitsmodell in einem Satz

Der Werkzeugsatz ist überwiegend lesend, mit einzelnen sicheren Schreibaktionen — und enthält keine einzige Lösch-Operation. Das ist keine Konfigurationsoption, sondern schlicht nicht implementiert: Auch ein fehlerhaft instruierter KI-Assistent kann über MCP keine Site, Datenbank, DNS-Zone, Cronjob oder Extension entfernen.

Installation & Freigabe

  1. Extension aktivieren (Marktplatz) — startet den Extension-Prozess als eigenständigen Unix-Socket-Dienst (/run/enconf/ext-mcp-server.sock), ohne direkten Zugriff auf die Panel-Datenbank.
  2. Paket-Permission — im Paket legt der Admin mit MCP-Zugriff erlauben (perm_mcp_server) fest, ob ein Kunde die Extension nutzen darf. Standardmäßig deaktiviert.

Verbinden

Auf der Seite MCP-Server (Sidebar) finden Sie eine Verbindungsanleitung samt Beispiel-Konfiguration für den jeweiligen Client. Die Extension authentifiziert über den bestehenden API-Key des Panels — der Client sendet ihn als X-API-Key-Header, dieselbe Berechtigungsprüfung wie bei jedem normalen API-Aufruf greift. Es gibt keinen separaten Service-Token und keine zusätzliche Vertrauensgrenze.

Werkzeuge (Stand: 24, Version 1.2.0)

Bereich Werkzeuge Art
Sites & Server list_sites, get_site, get_site_status, get_site_logs, list_servers lesend
Datenbanken list_databases, create_database, list_database_users, create_database_user lesend + sicheres Anlegen
DNS & SSL list_dns_zones, list_dns_records, create_dns_record, list_domains, enable_ssl lesend + sicheres Anlegen
Cronjobs list_cronjobs, create_cronjob lesend + sicheres Anlegen
Firewall list_firewall_rules nur lesend (siehe unten)
Backup list_backup_schedules, list_backup_jobs lesend
FTP & Mail list_ftp_accounts, list_mailboxes lesend
Subdomains list_subdomains lesend
Plattform list_extensions, list_packages lesend

create_dns_record setzt serverseitig fest changetype=REPLACE — ein DNS-Create-Werkzeug kann so grundsätzlich nicht zum Lösch-Werkzeug umfunktioniert werden.

Warum Firewall-Regeln nur lesend sind

Der zugrundeliegende Panel-Endpoint reicht einen weitgehend unvalidierten Rohbody direkt an nftables durch. Eine fehlerhafte Regel von einem KI-Client könnte SSH oder das Panel selbst aussperren — das passt nicht zum „sicher, nicht-destruktiv"-Anspruch der Extension. Firewall-Regeln lassen sich über MCP daher nur einsehen, nicht ändern.

FTP-Accounts und Postfächer geben niemals Passwörter zurück — beide werden serverseitig ausschließlich verschlüsselt bzw. gar nicht in reversibler Form gespeichert.

Audit-Log

Jeder tools/call wird protokolliert (Extension → POST /api/v1/audit-logs/mcp → bestehende Audit-Log-Infrastruktur). Admins sehen die letzten Aufrufe direkt auf der Seite MCP-Server.

Noch nicht enthalten

  • OAuth + PKCE — die aktuelle Version nutzt bewusst den bestehenden API-Key-Mechanismus statt eines eigenen OAuth-Flows.
  • Deployments — würde einen Cross-Extension-Proxy zur Git-Deploy-Extension erfordern.
  • Daemons/Queues — hat kein Äquivalent im PHP-Hosting-Modell von enconf.
  • Firewall-Schreibzugriff — siehe Sicherheits-Hinweis oben.