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¶
- 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. - 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.