SlateVM
officielPlateforme VM native pour Apple silicon, avec 45 outils MCP pour créer, observer et exploiter des invités macOS, Linux et Windows 11 ARM.
Que pouvez-vous faire avec SlateVM MCP ?
- Créer et démarrer des VM — Créez une VM à partir d'une image d'installation listée, puis démarrez-la et attendez qu'elle atteigne un état d'exécution cible.
- Observer l'invité — Capturez l'écran, lisez le texte de la console ou attendez qu'un motif regex apparaisse sur la console.
- Piloter l'invité — Injectez des entrées clavier, pointeur et texte, ou exécutez des commandes dans un invité démarré via sa clé SSH propre à la VM.
- Configurer le matériel — Appliquez à chaud des paramètres matériels et réseau, agrandissez un disque ou définissez la résolution d'affichage et la taille de la fenêtre de console.
- Partager des dossiers de l'hôte — Ajoutez ou supprimez des dossiers partagés virtio-fs dans les VM mac/Linux et basculez leur indicateur en lecture seule.
- Diagnostiquer les problèmes — Récupérez un ensemble de diagnostics ponctuel ou suivez les dernières lignes de journal lorsqu'une VM ne démarre pas.
Documentation
De vrais ordinateurs que votre IA peut voir et piloter.
Le serveur MCP intégré de SlateVM met à la disposition de tout client IA compatible 46 outils structurés pour créer des machines virtuelles, observer leurs écrans, saisir du texte et cliquer, exécuter des commandes à l'intérieur de l'invité et vérifier le résultat — avec le même contrat sur Mac, Windows et Linux.
Une automatisation avec des preuves à chaque étape.
Observer
État et tâches en direct, capture d'écran, texte à l'écran (OCR), texte de la console série pour Linux sans interface graphique, journaux et adresses réseau de l'invité.
Agir
Clavier, pointeur, défilement et saisie de texte ; commandes à l'intérieur de l'invité via une identité SSH propre à chaque VM ; modifications du matériel, du disque, de l'affichage, du réseau et des dossiers partagés.
Vérifier
Attendre un état ou l'apparition d'un texte, capturer l'écran modifié et lire les diagnostics avant de rendre compte.
Pas un simple wrapper de shell. Pas du scripting d'interface.
Un petit adaptateur local relie votre client IA à SlateVM via un canal qui ne quitte jamais votre machine. SlateVM — le composant qui possède les VM — répond à chaque appel, de sorte que l'agent voit la même vérité que l'application. MCP dans l'hyperviseur →
Les 46 outils.
Noms, schémas et codes d'erreur identiques sur chaque hôte. Un hôte qui ne peut pas faire quelque chose (par exemple, des invités macOS hors d'un Mac) renvoie une erreur claire plutôt qu'un outil différent.
Application (4)
launch_app
Lancer l'application SlateVM (visible, au premier plan).
quit_app
Quitter l'application SlateVM.
app_status
Indiquer si l'application SlateVM est en cours d'exécution, si son canal local de contrôle est joignable, ainsi que la version/build de l'application EN COURS D'EXÉCUTION (lue en direct depuis son bundle, afin qu'elle reste correcte après qu'une mise à jour automatique a remplacé l'application en cours de session).
host_capabilities
Indiquer les capacités de l'hôte : prise en charge de la virtualisation imbriquée, espace disque libre, droit de virtualisation, version de macOS.
Créer et installer (7)
create_vm
Créer une nouvelle VM.
list_images
Lister toutes les images d'installation d'OS que SlateVM peut voir (ses caches d'images + votre dossier Téléchargements) avec un os deviné, une taille et une indication de lisibilité — afin que vous puissiez choisir un chemin pour create_vm sans qu'on vous en impose un.
list_restore_images
Lister les images de restauration macOS (.ipsw) connues de SlateVM.
set_installer_media
Repointer l'image d'installation d'une VM arrêtée vers un nouveau chemin accessible et écrire un nouveau signet.
finish_install
Marquer explicitement l'installation de l'OS d'une VM comme terminée : éjecter l'ISO/le support d'installation et faire passer installState de 'installing' à 'installed'.
apply_guest_tools
Préparer/appliquer le disque des outils invité pour une VM.
set_attach_linux_guest_tools
Activer/désactiver le montage du disque SlateVM Tools pour une VM Linux de bureau.
Cycle de vie (8)
list_vms
Lister toutes les machines virtuelles SlateVM avec leur état et leur matériel.
get_vm
Obtenir la configuration complète d'une VM.
start_vm
Démarrer une VM et ouvrir sa fenêtre de console (visible).
stop_vm
Arrêter une VM en cours d'exécution.
suspend_resume_vm
Activer/désactiver la suspension/reprise d'une VM en cours d'exécution.
wait_for_state
Bloquer jusqu'à ce qu'une VM atteigne un état d'exécution cible, ou expiration du délai.
delete_vm
Supprimer une VM (déplace son bundle vers la corbeille).
reveal_vm
Révéler le bundle d'une VM dans le navigateur de fichiers.
Voir la machine (4)
capture_screen
Capturer l'écran de l'invité.
read_console_text
Lire la console de l'invité sous forme de texte.
wait_for_text
Bloquer jusqu'à ce que pattern\ (regex insensible à la casse) apparaisse sur la console de l'invité, ou expiration du délai — en interrogeant à votre place pour que vous n'ayez pas à faire sleep-and-screenshot.
read_guest_clipboard
Extraire le TEXTE d'un invité GRAPHIQUE — l'analogue framebuffer de read_console_text (qui ne couvre que le Linux série sans interface graphique).
Agir sur la machine (5)
send_input
Injecter des entrées dans l'invité (et non dans le bureau du Mac).
run_in_guest
Exécuter une commande dans un invité démarré via SSH en utilisant sa clé IA propre à la VM.
provision_ssh
Renvoyer la clé publique SSH dédiée propre à la VM + une installCommand.
ssh_status
Indiquer si une VM dispose d'une clé SSH IA provisionnée, ainsi que sa clé publique.
revoke_ssh
Supprimer la clé SSH IA côté hôte pour une VM.
Configurer (7)
set_hardware
Appliquer à chaud les paramètres matériels/réseau à une VM.
resize_disk
Agrandir le disque d'une VM.
set_display_resolution
Définir la résolution d'affichage de l'invité (serveur Linux sans interface graphique ; s'applique au prochain démarrage).
set_console_window_size
Définir la taille de la fenêtre de console d'une VM.
add_shared_folder
Partager un dossier de l'hôte dans une VM mac/Linux (virtio-fs).
remove_shared_folder
Retirer un dossier partagé d'une VM.
set_shared_folder_readonly
Définir l'indicateur de lecture seule d'un dossier partagé.
Réseau (6)
guest_network
Découvrir la ou les adresses IP d'un invité en cours d'exécution à partir de son MAC via la table des baux DHCP et ARP (lecture seule).
set_linux_network_path
Définir le pilote NAT d'une VM Linux : native (Apple VZNAT) ou service (socket_vmnet).
networking_status
Indiquer si le service réseau de SlateVM est installé et en bon état.
networking_install
Installer le service réseau de SlateVM.
networking_repair
Réparer/réinstaller le service réseau de SlateVM (approuvé par l'administrateur).
networking_uninstall
Désinstaller le service réseau de SlateVM (approuvé par l'administrateur).
Tâches et diagnostics (5)
job_status
Obtenir l'état d'une tâche en arrière-plan (en cours/réussie/échouée), sa dernière étape et son résultat ou son erreur.
job_wait
Bloquer jusqu'à ce qu'une tâche en arrière-plan se termine ou que le délai expire ; renvoie son état + résultat/erreur.
list_jobs
Lister les tâches en arrière-plan récentes et leurs états.
get_diagnostics
Bundle de dépannage en une seule fois pour une VM : état, lastError ({code, message} — la raison pour laquelle une VM ne démarre pas, par ex. MEDIA_INACCESSIBLE), accessibilité des supports par lecteur, lignes de journal récentes, taille du disque, santé du service réseau et configuration. Appelez ceci en premier lorsqu'un problème survient.
tail_log
Renvoyer les lignes de journal récentes d'une VM.