Zurück zu Kyvenza

MCP-Server

Geben Sie Ihrem Coding-Agent
eine eigene Maschine

Kyvenza hat einen MCP-Server eingebaut. Verbinden Sie Claude Code oder einen beliebigen anderen MCP-Client damit, und der Agent kann eine virtuelle Maschine starten, vor jeder Berührung einen Snapshot anlegen, Befehle im Gast ausführen und auf den Bildschirm schauen. Das ist kein Chat-Fenster, das auf einen VM-Manager aufgepfropft wurde. Es ist die Maschine selbst, mit Leitplanken, die es vertretbar machen, sie abzugeben.

Warum eine virtuelle Maschine und nicht ein Container

Ein Agent, der Shell-Befehle ausführen kann, braucht einen Ort, an dem diese Befehle Ihren Schlüsselbund, Ihre SSH-Schlüssel oder Ihre Produktionszugangsdaten nicht erreichen können. Eine virtuelle Maschine ist eine Grenze, die das Betriebssystem durchsetzt, nicht eine, die Ihre Werkzeuge versprechen. Kyvenza fügt die Teile hinzu, die ein Container nicht liefert: einen Snapshot, zu dem Sie in Sekunden zurückkehren können, einen Wegwerf-Klon, der fast keinen Speicherplatz kostet, und einen Netzwerkmodus ohne jedes Netzwerk.

In etwa einer Minute verbunden

  1. Den Server einschalten

    Einstellungen, dann Automatisierung. Er bleibt aus, bis Sie ihn einschalten.

  2. Den Endpunkt kopieren

    Sie enthält bereits das Token dieses Macs. Eine URL ist die vollständigen Zugangsdaten — weshalb jeder Client, der eine URL annimmt, sich verbinden kann.

  3. Fügen Sie sie in Ihren Client ein

    Für Claude Code ist es ein einzelner Befehl. Für Clients, die eine JSON-Konfiguration lesen, erzeugt die Einstellungsseite diesen Code-Schnipsel ebenfalls.

Claude Code

claude mcp add --transport http kyvenza http://127.0.0.1:59800/mcp/YOUR-TOKEN

Daneben steht eine Schaltfläche „Verbindung testen“, die einen echten Handshake mit Ihrem eigenen Endpunkt ausführt und meldet, wie viele Werkzeuge sie gefunden hat. Sie beantwortet „habe ich das richtig konfiguriert“ sofort, statt Sie das aus einem späteren fehlgeschlagenen Aufruf herausfinden zu lassen.

Was den Agenten davon abhält, Ihren Mac zu zerstören

Der Server verlässt nie die Loopback-Schnittstelle

Er bindet an 127.0.0.1 und an nichts anderes. Kein Gerät in Ihrem Netzwerk sieht ihn, und nichts im Internet sieht ihn ebenfalls.

Jeder Mac hat sein eigenes Token

Dieser Punkt verdient die Details, denn die Bedrohung ist real, nicht theoretisch. Das User-Mode-Netzwerk von QEMU übersetzt alles, was ein Gast an 10.0.2.2 sendet, in eine Verbindung zur Loopback-Schnittstelle des Hosts. Ein laufendes Windows-Gastsystem kann daher Dienste erreichen, die auf Ihrem Mac an 127.0.0.1 gebunden sind, einschließlich dieses Servers. Deshalb trägt der Endpunkt ein 128-Bit-Token, im URL-Pfad oder in einem Authorization-Header, und eine Anfrage ohne dieses Token erhält ein 401 und sonst nichts. Es gibt keinen Kompatibilitätsmodus, der dies abschaltet.

Werkzeuge, die zerstören, sind standardmäßig deaktiviert

create_vm, clone_vm und delete_vm erscheinen in der Werkzeugliste überhaupt nicht, bis Sie diese aktivieren. Ein Werkzeug, das das Modell nicht sehen kann, ist ein Werkzeug, das es nicht versuchen wird — eine stärkere Garantie als das spätere Verweigern des Aufrufs.

delete_vm löscht nur das, was es selbst angelegt hat

Es verweigert jede Maschine, die nicht von clone_vm als Sandbox angelegt wurde. Was es löscht, geht in den Papierkorb statt sofort zu verschwinden, denn wenn ein Agent das Falsche löscht, muss sich das rückgängig machen lassen.

Ein Snapshot, bevor der Agent irgendetwas startet

Wenn ein Agent eine VM über MCP startet, erstellt Kyvenza zuerst einen Snapshot und meldet ihn in derselben Antwort, damit der Agent weiß, auf welchen Stand er zurückrollen kann. Wenn Sie selbst eine VM aus der Oberfläche starten, geschieht dies nicht. Es ist eine Sicherheitsfunktion für die Automatisierung, kein Speicherfresser im Hintergrund.

Eine Maschine ganz ohne Netzwerk

Jede VM lässt sich auf isoliertes Netzwerk setzen. Auf Linux können Sie mit installiertem Kyvenza-Gast-Agent danach weiterhin Befehle ausführen und Screenshots aufnehmen, weil dieser Kanal ein virtueller Socket und kein Netzwerk ist.

Die fünfzehn Werkzeuge

Drei davon, unten markiert, bleiben verborgen, bis Sie die destruktiven Werkzeuge einschalten.

WerkzeugWas es tut
list_vmsJede VM mit Betriebssystem, Status, CPU und Arbeitsspeicher
get_vm_statusStatus, IP-Adresse, Bildschirmauflösung und Netzwerkmodus
get_vm_ipDie Gast-IP-Adresse einer laufenden VM
start_vmEine gestoppte VM starten, vorher einen Snapshot anlegen
stop_vmEine laufende VM stoppen, sauber, sofern Sie nichts anderes verlangen
restart_vmEine laufende VM neu starten
suspend_vmDen Arbeitsspeicher des Gasts auf die Disk schreiben und ausschalten, beim nächsten Mal genau dort wieder aufnehmenNur Linux. Verwenden Sie stop_vm für macOS und Windows.
list_snapshotsDie Snapshots einer VM, mit Markierung der automatisch erstellten
take_snapshotEin Offline-Snapshot einer gestoppten VM
restore_snapshotEine gestoppte VM auf einen Snapshot zurücksetzen und die aktuelle Disk ersetzen
exec_shellEinen Befehl im Gast ausführen und Exit-Code, stdout und stderr zurückgebenLinux-Gastsysteme mit Gast-Agent brauchen weder Netzwerkadresse noch SSH. macOS nutzt SSH. Windows nutzt SSH über einen ausschließlich an Loopback gebundenen weitergeleiteten Port, nachdem der Treiber-Installer einmal im Gast ausgeführt wurde.
screenshotEin PNG des Gast-BildschirmsWindows-Gastsysteme werden hostseitig aufgenommen, ohne dass etwas installiert sein muss, ohne Netzwerkadresse und ohne geöffnetes Anzeigefenster. Linux-Gastsysteme mit Agent können ganz ohne Display-Server aufgenommen werden, weil der Agent den Kernel-Framebuffer direkt liest. macOS benötigt eine angemeldete grafische Sitzung.
clone_vmStandardmäßig deaktiviertEine gestoppte VM in eine Wegwerf-Sandbox kopieren, nahezu sofort und fast kostenlos an Disk
create_vmStandardmäßig deaktiviertEine neue, leere Maschine ohne Betriebssystem
delete_vmStandardmäßig deaktiviertEine von clone_vm angelegte Sandbox in den Papierkorb verschieben

Drei Aufgaben, für die es sich eignet

Etwas ausführen, dem Sie nicht vertrauen

Klonen Sie eine vorbereitete VM in eine Sandbox, lassen Sie den Agenten den Installer oder das Skript darin ausführen, lesen Sie das Ergebnis und löschen Sie dann die Sandbox. Der Klon ist Copy-on-Write — er ist in etwa einer Sekunde da und kostet fast keine Disk, bis der Gast zu schreiben beginnt. Kyvenza räumt abgelaufene Sandboxes auch selbst auf, sodass ein Agent, der das Aufräumen vergisst, Ihnen keine volle Bibliothek hinterlässt.

Einen Build auf echtem Windows prüfen

Der Agent kann Befehle in einem Windows 11 auf ARM-Gastsystem über einen weitergeleiteten Port ausführen, der ausschließlich an Loopback gebunden ist, und Screenshots von diesem Gast aufnehmen, ohne etwas darin installiert zu haben. Nützlich, wenn Sie wissen müssen, wie die Anwendung unter Windows tatsächlich aussieht, nicht, was die Test-Suite sagt.

Auf einer Maschine arbeiten, die netzabgeklemmt ist

Setzen Sie eine Linux-VM auf isoliertes Netzwerk, und sie hat keinen Netzwerkadapter mehr. Der Gast-Agent beantwortet weiterhin Befehle und nimmt weiterhin Screenshots auf, weil er über einen virtuellen Socket läuft. Der Agent arbeitet weiter; der ausgeführte Code kann nirgendwohin kommunizieren.

Was es nicht kann

  • create_vm liefert Ihnen eine leere Maschine. Ein Betriebssystem zu installieren ist ein interaktiver Prozess, der sich nicht über MCP steuern lässt, weshalb clone_vm aus einer vorbereiteten VM das Werkzeug ist, das zählt.
  • Befehle in einem Windows-Gast auszuführen setzt voraus, dass der Kyvenza-Treiber-Installer einmal in Windows ausgeführt wurde, und dieser erste Lauf benötigt, dass die VM über Internetzugang verfügt.
  • Der SSH-Benutzername für einen Windows-Gast muss reines ASCII sein. OpenSSH verweigert Kontonamen, die Anführungszeichen, Leerzeichen oder Shell-Metazeichen enthalten, die Windows selbst zulässt.
  • Snapshots über MCP sind nur Disk-basiert und erfordern eine gestoppte VM. Den Arbeitsspeicher einer laufenden Maschine zu sichern bleibt eine manuelle Aktion.
  • Screenshots eines macOS-Gasts benötigen eine grafische Sitzung, in der jemand angemeldet ist.

Warum es in der App kein Chat-Fenster gibt

Wir haben erwogen, eines zu bauen, und uns aus drei Gründen dagegen entschieden, die es wert sind, offen benannt zu werden. Kyvenza ist ein einmaliger Kauf, während Inferenz pro Token abgerechnet wird — die Wirtschaftlichkeit geht nicht auf. Ein In-App-Assistent, der beliebige Befehle in einem Gast ausführen kann, zieht Datenschutz- und Datenerhebungs-Erklärungen sowie Altersfreigaben auf einen Schlag nach sich. Und der Client, den Sie bereits nutzen, beherrscht das Client-Sein besser als alles, was wir neben einer Virtualisierungs-App ausliefern würden. Das Gespräch bleibt also dort, wo Sie es bereits haben, und wir bauen die Maschine, mit der es spricht.

Probieren Sie es mit der Maschine, die Sie bereits haben

Der MCP-Server ist in jeder Version, sowohl im Mac App Store als auch beim direkten Download. Die 7-tägige Testphase enthält ihn bereits.

Etwas ausführen, dem Sie nicht vertrauen