KI-Assistenten (MCP)
Arbeitest du ohnehin mit einem KI-Assistenten, kann der dir auch gleich die Umgebung einrichten:
„Mach mir ein Laravel-Projekt mit MariaDB und Redis“, und eine Minute später läuft es. Dafür hat
Envoryx unter /mcp einen MCP-Server (Streamable HTTP). Ein verbundener Assistent kann Projekte
anlegen, duplizieren und umbenennen, starten und stoppen, Logs lesen, Aktionen ausführen und
Datenbanken, Backups und Snapshots anlegen. Dabei laufen dieselben Prüfungen wie in der
Weboberfläche, und alles landet im selben Audit-Log.
Einen Client verbinden
Abschnitt betitelt „Einen Client verbinden“Leg unter Einstellungen → API-Tokens & MCP einen Token an. Wähl seinen Scope und beschränke ihn, wenn du magst, auf bestimmte Projekte. Die Seite zeigt dir danach eine Konfiguration, die du direkt in deinen Client einfügen kannst:
{ "mcpServers": { "envoryx": { "type": "http", "url": "https://envoryx.test/mcp", "headers": { "Authorization": "Bearer stq_…" } } }}Mit Claude Code ist es ein einziger Befehl:
claude mcp add --transport http envoryx https://envoryx.test/mcp --header "Authorization: Bearer stq_…"Proxy und HTTPS noch nicht eingerichtet? Dann nimm http://<host>:8787/mcp. Der MCP-Endpunkt
nimmt nur Bearer-Tokens; ein Sitzungs-Cookie aus deinem Browser zählt dort nicht.
Werkzeuge
Abschnitt betitelt „Werkzeuge“Was ein Assistent aufrufen darf, hängt vom Scope des Tokens ab. Angeboten bekommt er nur die
Werkzeuge, die sein Token aufrufen kann; der Assistent eines read-Tokens sieht create_project
also gar nicht erst:
| Werkzeug | Scope |
|---|---|
list_projects, get_project, list_runtimes |
read |
get_logs, get_log_stats |
read |
list_actions, list_databases, list_backups, list_snapshots |
read |
list_branch_environments |
read |
start_project, stop_project, restart_project |
operate |
run_action (ein Eintrag aus dem Aktionskatalog) |
operate |
create_database, create_backup, create_snapshot, add_domain |
operate |
deploy_branch_environment |
operate |
create_project, duplicate_project, rename_project, create_branch_environment |
admin |
Etwas, das Daten vernichtet, findest du in dieser Liste nicht. Projekte löschen, Datenbanken verwerfen, Backups und Snapshots zurückspielen und über eine Datenbank klonen fehlen mit Absicht - ein Assistent, der dich falsch versteht, soll nichts plattmachen können. Das erledigst du in der Oberfläche.
Die drei Branch-Werkzeuge gehören zu den Branch-Umgebungen: Ein Assistent kann sie auflisten, eine für einen Branch des Repositorys anlegen und eine nach deinem Push pullen und deployen.
Projekte anlegen
Abschnitt betitelt „Projekte anlegen“create_project nimmt PHP-Version und Erweiterungen, die Datenbank, Dienste (Redis, Memcached,
Mailpit, RabbitMQ, Meilisearch, Typesense, OpenSearch, Ollama, Objektspeicher), ein
Git-Repository oder ein Template und Umgebungsvariablen. Welche Versionen und Templates es gibt,
erfährt der Assistent über list_runtimes. Für ein Projekt ohne PHP übergibt er
phpVersion: "none" und die Runtime:
| Runtime | Felder | Templates |
|---|---|---|
| Node.js | nodeVersion, nodeDevServer, nodePreset, nodeScript, nodePort, nodePackageManager |
vite, next, nuxt |
| Python | pythonVersion, pythonServer, pythonPreset, pythonApp, pythonPort, pythonMode |
django, flask, fastapi |
| Go | goVersion, goServer, goPackage, goPort, goMode |
go, gin, echo |
| Ruby | rubyVersion, rubyServer, rubyPreset, rubyPort, rubyMode |
rails, rails-api, sinatra |
Ein Template schaltet den Server von selbst ein. In der Antwort erfährt der Assistent, was das
Projekt ausliefert (serves: php, python, go, ruby, node oder static), und die URLs -
so kann er dir am Ende gleich einen Link geben.
Ein paar Prompts, die gut funktionieren:
- „Leg ein Laravel-Projekt namens test-api mit PHP 8.4, MariaDB und Redis an und führ dann composer install aus.“
- „Leg ein FastAPI-Projekt namens inventory-api mit PostgreSQL an, ohne PHP, und führ dann pip install aus.“
- „Leg ein Rails-Projekt namens blog auf PostgreSQL an, ohne PHP, und führ dann rails db:prepare aus.“