SlateVM

offiziell

Native Apple-Silicon-VM-Plattform mit 45 MCP-Tools zum Erstellen, Beobachten und Betreiben von macOS-, Linux- und Windows-11-ARM-Gästen.

Was kann man mit SlateVM MCP machen?

  • VMs erstellen und konfigurieren — Bitte create_vm für einen macOS-, Linux- oder Windows-Gast mit CPU-, Speicher-, Festplatten- und Netzwerkeinstellungen anfordern und dann die Hardware bei Bedarf anpassen oder resize_disk verwenden.
  • Gaststatus beobachtencapture_screen, read_console_text oder wait_for_text verwenden, um die Anzeige, die serielle Ausgabe oder die OCR-Schnittstelle der VM zu sehen und zu bestätigen, was gerade passiert.
  • Eingaben senden und Befehle ausführen — Tastatur, Zeiger oder Text direkt über send_input steuern oder begrenzte Befehle mit run_in_guest über eine bereitgestellte SSH-Identität ausführen.
  • Lebenszyklus und Aufträge verwaltenstart_vm, stop_vm, suspend_resume_vm oder delete_vm verwenden und den Fortschritt mit job_status oder wait_for_state verfolgen.
  • Diagnose und Inspektionget_diagnostics, tail_log oder networking_status abrufen, um VM-Zustand, Protokolle und Netzwerkverbindungen zu beheben.
  • Speicher und Medien verwaltenshared_folders hinzufügen oder entfernen, apply_guest_tools verwenden oder set_installer_media einstellen, um Gastressourcen zu verwalten.

Dokumentation

Eine echte virtuelle Maschine, die ein LLM sehen, verstehen und bedienen kann.

SlateVM bietet kompatiblen MCP-Clients 45 strukturierte Funktionen für Erstellung, Bereitstellung, Lebenszyklus, Konsoleninteraktion, Netzwerk, Diagnose, Konfiguration und Gastausführung. Das Erstellen der VM ist nur der Anfang: Der Agent kann den Gast beobachten, seinen Zustand verstehen und dann auf jeder unterstützten Gastplattform handeln und verifizieren.

Automatisierung mit Nachweisen bei jedem Schritt.

Die Maschine beobachten

Exakten Lebenszyklus- und Jobstatus lesen, den Framebuffer erfassen, sichtbare Oberflächen per OCR lesen, den seriellen Stream des headless Linux lesen, Protokolle prüfen oder Gastnetzwerk entdecken.

Über den richtigen Kanal handeln

Tastatur, Zeiger, Scrollen oder Texteingabe senden; eine dedizierte SSH-Identität pro VM bereitstellen; begrenzte Befehle ausführen; und unterstützte VM-Konfiguration aktualisieren.

Das Ergebnis verifizieren

Auf Status oder Text warten, den geänderten Bildschirm erfassen, serielle Ausgabe lesen, Diagnosen sammeln und auf Basis dessen fortfahren, was die VM tatsächlich meldet.

Kein Shell-Wrapper. Kein UI-Scripting.

Der zustandslose slatevm-mcp-Adapter spricht SlateVMs versioniertes Protokoll über einen lokalen Unix-Domain-Socket. SlateControlServer leitet jede Anfrage über SlateControlHub weiter, wo die SwiftUI-Oberfläche und der KI-Steuerungspfad auf demselben VMStore, Netzwerkdienst, Fenstermanager und denselben Lebenszyklus-Eigentümern zusammenlaufen. SlateVM – nicht der Adapter – bleibt die Autorität für VM-Zustand und -Richtlinien.

SwiftUI Menschliche Steuerung

SlateControlHub Gemeinsame Anwendungssteuerungsebene

LLM + MCP Strukturierte Steuerung

45 Funktionen, die einem LLM zur Verfügung stehen.

Dieser Katalog spiegelt das Tool-Manifest wider, das von der gebündelten slatevm-mcp-Implementierung und ihrem entsprechenden lokalen oder anwendungsseitigen Weiterleitungspfad registriert wird.

Anwendung, Erkennung und Jobs

launch_app

Startet SlateVM sichtbar und meldet, ob der lokale Steuerungsendpunkt bereit ist.

quit_app

Schließt SlateVM ordentlich oder erzwingt auf ausdrückliche Anfrage das Beenden der Anwendung.

app_status

Meldet, ob SlateVM läuft, seine Prozesskennung, die Erreichbarkeit des Steuerungs-Sockets sowie Version und Build der laufenden App (live aus dem Bundle gelesen, sodass es nach einem automatischen Update korrekt bleibt).

host_capabilities

Gibt Host-Virtualisierungsfähigkeit, verschachtelte Virtualisierung, macOS-Version, Berechtigungsstatus und freien Speicherplatz zurück.

list_images

Listet lesbare Installationsimages in SlateVMs Caches und Downloads auf, mit abgeleitetem Gasttyp und Größe.

list_restore_images

Listet macOS-Wiederherstellungsimages auf, die SlateVM für einen macOS-Erstellungsworkflow kennt.

job_status

Gibt den Status, die letzte Stufe, das Ergebnis oder einen strukturierten Fehler eines Hintergrundjobs zurück.

job_wait

Wartet, bis ein Hintergrundjob abgeschlossen ist oder ein begrenztes Zeitlimit erreicht wird, und gibt dann sein aktuelles Ergebnis zurück.

list_jobs

Listet aktuelle Hintergrundjobs und deren aktuellen Status auf.

VM-Inventar und Lebenszyklus

list_vms

Listet jede VM mit Identität, Laufzeitstatus und Hardwareübersicht auf.

get_vm

Gibt die vollständige gespeicherte Konfiguration und aktuelle Details für eine VM zurück.

create_vm

Erstellt eine macOS-, Linux- oder Windows-VM aus erforderlichen Betriebssystem-, CPU-, Speicher-, Festplatten-, Image- und Netzwerkeingaben, mit optionaler unbeaufsichtigter Installation, Kontoberechtigungen, NAT- oder LAN-Bridge-Netzwerk und x86-64- (Rosetta-) Unterstützung für Linux-Gäste.

start_vm

Startet eine ausgewählte VM und öffnet ihr sichtbares Konsolenfenster.

stop_vm

Stoppt eine laufende VM mit ordentlichem Herunterfahren als Standard und einer expliziten Erzwingungsoption.

suspend_resume_vm

Wechselt eine laufende VM zwischen angehaltenem und fortgesetztem Zustand.

wait_for_state

Wartet auf den Zustand „läuft“ oder „gestoppt“ und gibt das Ergebnis mit verfügbarem Fehlerkontext zurück.

delete_vm

Verschiebt ein bestätigtes VM-Bundle über SlateVMs koordinierten Löschpfad in den Papierkorb.

reveal_vm

Zeigt das ausgewählte VM-Bundle im Finder an.

Konfiguration, Speicher und Integration

set_hardware

Aktualisiert nur die angegebenen CPU-, Speicher-, Netzwerk-, verschachtelte Virtualisierungs-, x86-64- (Rosetta-) oder Linux-Netzwerktreiber-Einstellungen.

resize_disk

Vergrößert eine VM-Festplatte auf eine bestätigte größere Größe, während die vorhandene virtuelle Festplatte erhalten bleibt.

set_installer_media

Setzt eine gestoppte VM auf zugängliche Installationsmedien um und speichert eine neue bereichsbezogene Referenz.

finish_install

Markiert die Installation als abgeschlossen und entfernt Installationsmedien aus der Konfiguration für den nächsten Start.

add_shared_folder

Fügt einer macOS- oder Linux-VM einen Host-Ordner mit einem Mount-Namen und optionalem Nur-Lese-Zugriff hinzu.

remove_shared_folder

Entfernt einen ausgewählten Freigabeordner-Datensatz aus einer VM-Konfiguration.

set_shared_folder_readonly

Ändert einen freigegebenen Ordner zwischen Nur-Lese- und Schreibzugriff.

apply_guest_tools

Stellt die Gastwerkzeuge-Disc von SlateVM für die ausgewählte VM bereit oder wendet sie an.

set_attach_linux_guest_tools

Steuert, ob eine Desktop-Linux-VM die SlateVM-Tools-Disc anhängt.

set_console_window_size

Legt Breite und Höhe des Konsolenfensters der ausgewählten VM in Mac-Anzeigepunkten fest.

set_display_resolution

Legt die Anzeigeauflösung für den nächsten Start eines headless Linux-Server-Gasts fest.

set_linux_network_path

Wählt natives Apple-NAT oder SlateVMs dienstgestützten NAT-Pfad für eine Linux-VM.

Diagnose, Konsole und Eingabe

get_diagnostics

Sammelt VM-Zustand, Konfiguration, Medienzugriff, Festplatteninformationen, Netzwerkzustand, Protokolle und den letzten strukturierten Fehler.

tail_log

Gibt aktuelle VM-Protokollzeilen für ein ausgewähltes Zeitfenster mit optionalem Textfilter zurück.

capture_screen

Erfasst die Gastkonsole als MCP-Bild oder Host-Datei, mit Format-, Zuschnitt- und Skalierungssteuerung.

read_console_text

Gibt Gastkonsolentext zurück, optional gefiltert durch ein nicht case-sensitives Muster. Headless Linux-Server lesen den exakten seriellen Stream (keine OCR); andere Gäste verwenden Framebuffer-OCR.

wait_for_text

Pollt die Konsole, bis ein angefragtes Muster erscheint oder ein begrenztes Zeitlimit erreicht wird – der serielle Stream für headless Server, Framebuffer-OCR andernfalls.

send_input

Sendet gastbezogene Zeiger-, Text- oder Tastenaktionen und kann das Ergebnis im selben Aufruf erfassen. Auf headless Servern gehen Text/Tasten an die serielle Konsole – Großbuchstaben, Symbole und Ctrl-Kombinationen funktionieren alle.

Netzwerkdienst und Gastbefehle

networking_status

Meldet, ob SlateVMs Netzwerkdienst installiert, erreichbar und fehlerfrei ist.

networking_install

Öffnet das signierte macOS-Installationsprogramm für die einmalige Administratorfreigabe des Netzwerkdienstes.

networking_repair

Installiert den Netzwerkdienst über den administratorfreigegebenen Paketworkflow neu.

networking_uninstall

Öffnet das administratorfreigegebene Deinstallationsprogramm für den Netzwerkdienst.

guest_network

Ermittelt mögliche Gast-IP-Adressen aus der MAC-Adresse der VM mithilfe von Host-DHCP- und ARP-Informationen.

provision_ssh

Erstellt oder gibt den dedizierten SSH-öffentlichen Schlüssel pro VM und den Installationsbefehl auf der Gastseite zurück.

ssh_status

Meldet, ob eine VM einen dedizierten LLM-SSH-Schlüssel hat, und gibt ihren öffentlichen Schlüssel zurück.

revoke_ssh

Entfernt die dedizierte SSH-Identität auf der Hostseite, sodass sie rotiert oder zurückgezogen werden kann.

run_in_guest

Führt einen begrenzten SSH-Befehl aus und gibt Exit-Code, Ausgabe, Fehler, Timeout und Verbindungsstatus zurück.