SlateVM

oficial

Plataforma de VM nativa para Apple silicon com 45 ferramentas MCP para criar, observar e operar convidados macOS, Linux e Windows 11 ARM.

O que você pode fazer com SlateVM MCP?

  • Criar e inicializar VMs — Crie uma VM a partir de uma imagem de instalação listada, depois inicie-a e aguarde até que ela atinja um estado de execução desejado.
  • Observar o guest — Capture a tela, leia o texto do console ou aguarde até que um padrão regex apareça no console.
  • Operar o guest — Injete entrada de teclado, ponteiro e texto, ou execute comandos dentro de um guest inicializado por meio de sua chave SSH por VM.
  • Configurar hardware — Aplique configurações de hardware e rede em tempo real, expanda um disco ou defina a resolução de exibição e o tamanho da janela do console.
  • Compartilhar pastas do host — Adicione ou remova pastas compartilhadas virtio-fs em VMs mac/Linux e alterne seu sinalizador de somente leitura.
  • Diagnosticar problemas — Obtenha um pacote de diagnóstico pontual ou acompanhe as linhas de log recentes quando uma VM não inicializar.

Documentação

Computadores reais que sua IA pode ver e operar.

O servidor MCP integrado do SlateVM oferece a qualquer cliente de IA compatível 46 ferramentas estruturadas para criar máquinas virtuais, observar suas telas, digitar e clicar, executar comandos dentro do guest e verificar o resultado — com o mesmo contrato no Mac, Windows e Linux.

Automação com evidências em cada etapa.

Observar

Estado e jobs ao vivo, captura de tela, texto na tela (OCR), texto do console serial para Linux headless, logs e endereços de rede do guest.

Agir

Teclado, ponteiro, rolagem e entrada de texto; comandos dentro do guest por meio de uma identidade SSH por VM; alterações de hardware, disco, display, rede e pasta compartilhada.

Verificar

Aguardar um estado ou o aparecimento de um texto, capturar a tela alterada e ler os diagnósticos antes de reportar de volta.

Não é um wrapper de shell. Não é script de UI.

Um pequeno adaptador local conecta seu cliente de IA ao SlateVM por um canal que nunca sai da sua máquina. O SlateVM — o componente que possui as VMs — responde a cada chamada, então o agente vê a mesma verdade que o app. MCP no hypervisor →

Todas as 46 ferramentas.

Nomes, schemas e códigos de erro idênticos em todos os hosts. Um host que não consegue fazer algo (por exemplo, guests macOS fora de um Mac) retorna um erro claro em vez de uma ferramenta diferente.

App (4)

launch_app

Iniciar o app SlateVM (visível, em primeiro plano).

quit_app

Encerrar o app SlateVM.

app_status

Informar se o app SlateVM está em execução, se seu canal local de controle está acessível e a versão/build do app em execução (lida ao vivo do seu bundle, então permanece correta após uma atualização automática trocar o app no meio da sessão).

host_capabilities

Informar as capacidades do host: suporte a virt aninhada, disco livre, entitlement de virtualização, versão do macOS.

Criar e instalar (7)

create_vm

Criar uma nova VM.

list_images

Listar todas as imagens de instalação de SO que o SlateVM consegue ver (seus caches de imagens + seus Downloads) com um os estimado, tamanho e se é legível — para que você possa escolher um caminho para create_vm sem receber um pronto.

list_restore_images

Listar as imagens de restauração do macOS (.ipsw) que o SlateVM conhece.

set_installer_media

Reapontar a imagem de instalação de uma VM parada para um novo caminho acessível e gravar um novo bookmark.

finish_install

Marcar explicitamente a instalação do SO de uma VM como concluída: ejetar o ISO/mídia de instalação e mudar installState de 'installing' para 'installed'.

apply_guest_tools

Preparar/aplicar o disco de guest-tools para uma VM.

set_attach_linux_guest_tools

Alternar a montagem do disco SlateVM Tools para uma VM Linux desktop.

Ciclo de vida (8)

list_vms

Listar todas as máquinas virtuais do SlateVM com seu estado e hardware.

get_vm

Obter a configuração completa de uma VM.

start_vm

Iniciar uma VM e abrir sua janela de console (visível).

stop_vm

Parar uma VM em execução.

suspend_resume_vm

Alternar suspender/retomar para uma VM em execução.

wait_for_state

Bloquear até que uma VM atinja um estado de execução alvo, ou atingir o timeout.

delete_vm

Excluir uma VM (move seu bundle para a lixeira).

reveal_vm

Revelar o bundle de uma VM no navegador de arquivos.

Ver a máquina (4)

capture_screen

Capturar a tela do guest.

read_console_text

Ler o console do guest como texto.

wait_for_text

Bloquear até que pattern\ (regex case-insensitive) apareça no console do guest, ou atingir o timeout — fazendo o polling por você para que você não precise dormir-e-tirar-screenshot.

read_guest_clipboard

Extrair TEXTO de um guest GRÁFICO — o análogo de framebuffer do read_console_text (que cobre apenas Linux serial headless).

Agir na máquina (5)

send_input

Injetar entrada no guest (não no desktop do Mac).

run_in_guest

Executar um comando em um guest inicializado via SSH usando sua chave de IA por VM.

provision_ssh

Retornar a chave pública SSH dedicada por VM + um installCommand.

ssh_status

Informar se uma VM tem uma chave SSH de IA provisionada, e sua chave pública.

revoke_ssh

Remover a chave SSH de IA do lado do host para uma VM.

Configurar (7)

set_hardware

Aplicar ao vivo configurações de hardware/rede a uma VM.

resize_disk

Aumentar o disco de uma VM.

set_display_resolution

Definir a resolução de display do guest (servidor Linux headless; aplica no próximo boot).

set_console_window_size

Definir o tamanho da janela de console para uma VM.

add_shared_folder

Compartilhar uma pasta do host em uma VM mac/Linux (virtio-fs).

remove_shared_folder

Remover uma pasta compartilhada de uma VM.

set_shared_folder_readonly

Definir o flag somente leitura de uma pasta compartilhada.

Rede (6)

guest_network

Descobrir o(s) endereço(s) IP de um guest em execução a partir do seu MAC via tabela de leases DHCP e ARP (somente leitura).

set_linux_network_path

Definir o driver NAT de uma VM Linux: native (Apple VZNAT) ou service (socket_vmnet).

networking_status

Informar se o serviço de rede do SlateVM está instalado e saudável.

networking_install

Instalar o serviço de rede do SlateVM.

networking_repair

Reparar/reinstalar o serviço de rede do SlateVM (aprovado pelo admin).

networking_uninstall

Desinstalar o serviço de rede do SlateVM (aprovado pelo admin).

Jobs e diagnósticos (5)

job_status

Obter o estado de um job em segundo plano (running/succeeded/failed), seu estágio mais recente e seu resultado ou erro.

job_wait

Bloquear até que um job em segundo plano termine ou o timeout transcorra; retorna seu estado + resultado/erro.

list_jobs

Listar os jobs em segundo plano recentes e seus estados.

get_diagnostics

Pacote de troubleshooting em uma só chamada para uma VM: estado, lastError ({code, message} — o motivo de uma VM não inicializar, por exemplo MEDIA_INACCESSIBLE), acessibilidade de mídia por drive, linhas de log recentes, tamanho do disco, saúde do serviço de rede e configuração. Chame isto primeiro quando algo estiver errado.

tail_log

Retornar as linhas de log recentes de uma VM.