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 configurar VMs — Peça para create_vm um convidado macOS, Linux ou Windows com configurações de CPU, memória, disco e rede, e depois ajuste o hardware ou resize_disk conforme necessário.
  • Observar o estado do convidado — Use capture_screen, read_console_text ou wait_for_text para ver a tela da VM, a saída serial ou a interface via OCR e confirmar o que está acontecendo.
  • Enviar entrada e executar comandos — Direcione teclado, ponteiro ou texto via send_input, ou execute comandos limitados com run_in_guest por meio de uma identidade SSH provisionada.
  • Gerenciar ciclo de vida e tarefasstart_vm, stop_vm, suspend_resume_vm ou delete_vm, e acompanhe o progresso com job_status ou wait_for_state.
  • Diagnosticar e inspecionar — Obtenha get_diagnostics, tail_log ou networking_status para solucionar problemas de saúde da VM, logs e conectividade de rede.
  • Lidar com armazenamento e mídia — Adicione ou remova shared_folders, apply_guest_tools ou set_installer_media para gerenciar recursos do convidado.

Documentação

Uma máquina virtual real que um LLM pode ver, entender e operar.

O SlateVM oferece a clientes MCP compatíveis 45 funções estruturadas abrangendo criação, provisionamento, ciclo de vida, interação com console, rede, diagnósticos, configuração e execução no guest. Criar a VM é apenas o começo: o agente pode observar o guest, entender seu estado e então agir e verificar em todas as plataformas guest suportadas.

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

Observe a máquina

Leia o estado exato do ciclo de vida e dos jobs, capture o framebuffer, faça OCR de interfaces visíveis, leia o fluxo serial Linux headless, inspecione logs ou descubra a rede do guest.

Aja pelo canal certo

Envie ações de teclado, ponteiro, rolagem ou texto; provisione uma identidade SSH dedicada por VM; execute comandos limitados; e atualize a configuração suportada da VM.

Verifique o resultado

Aguarde por estado ou texto, capture a tela alterada, leia a saída serial, colete diagnósticos e continue com base no que a VM realmente reporta.

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

O adaptador sem estado slatevm-mcp fala o protocolo versionado do SlateVM por um socket Unix local. SlateControlServer despacha cada requisição por meio do SlateControlHub, onde a interface SwiftUI e o caminho de controle de IA convergem no mesmo VMStore, serviço de rede, gerenciador de janelas e proprietários do ciclo de vida. O SlateVM—não o adaptador—permanece como a autoridade para o estado e as políticas da VM.

SwiftUI Controle humano

SlateControlHub Plano de controle compartilhado do aplicativo

LLM + MCP Controle estruturado

45 funções disponíveis para um LLM.

Este catálogo reflete o manifesto de ferramentas registrado pela implementação slatevm-mcp incluída e seu caminho de despacho local ou do lado do aplicativo correspondente.

Aplicativo, descoberta e jobs

launch_app

Inicia o SlateVM visivelmente e informa se seu endpoint de controle local está pronto.

quit_app

Fecha o SlateVM normalmente ou, quando explicitamente solicitado, força o aplicativo a encerrar.

app_status

Informa se o SlateVM está em execução, seu identificador de processo, acessibilidade do socket de controle e a versão e build do aplicativo em execução (lidas ao vivo do bundle, para permanecerem corretas após uma atualização automática).

host_capabilities

Retorna a capacidade de virtualização do host, virtualização aninhada, versão do macOS, estado de entitlement e informações de disco livre.

list_images

Lista imagens de instalação legíveis visíveis nos caches e em Downloads do SlateVM, com tipo e tamanho de guest inferidos.

list_restore_images

Lista imagens de restauração do macOS conhecidas pelo SlateVM para uso em um fluxo de criação de macOS.

job_status

Retorna o estado de um job em segundo plano, o estágio mais recente, o resultado ou um erro estruturado.

job_wait

Aguarda um job em segundo plano terminar ou atingir um tempo limite limitado e então retorna seu resultado atual.

list_jobs

Lista jobs recentes em segundo plano e seus estados atuais.

Inventário e ciclo de vida de VMs

list_vms

Lista cada VM com sua identidade, estado de execução e resumo de hardware.

get_vm

Retorna a configuração persistida completa e os detalhes atuais de uma VM.

create_vm

Cria uma VM macOS, Linux ou Windows a partir de entradas obrigatórias de SO, CPU, memória, disco, imagem e rede, com instalação não assistida opcional, credenciais de conta, rede NAT ou ponte LAN e suporte a x86-64 (Rosetta) para guests Linux.

start_vm

Inicia uma VM selecionada e abre sua janela de console visível.

stop_vm

Para uma VM em execução com desligamento gracioso como padrão e uma opção explícita de força.

suspend_resume_vm

Alterna uma VM em execução entre estados suspenso e retomado.

wait_for_state

Aguarda o estado em execução ou parado e retorna o resultado com contexto de erro disponível.

delete_vm

Move um bundle de VM confirmado para a Lixeira pelo caminho de exclusão coordenado do SlateVM.

reveal_vm

Revela o bundle da VM selecionada no Finder.

Configuração, armazenamento e integração

set_hardware

Atualiza apenas as configurações fornecidas de CPU, memória, rede, virtualização aninhada, x86-64 (Rosetta) ou driver de rede Linux.

resize_disk

Expande o disco de uma VM para um tamanho maior confirmado, preservando o disco virtual existente.

set_installer_media

Redireciona uma VM parada para mídia de instalação acessível e persiste uma nova referência com escopo definido.

finish_install

Marca a instalação como concluída e remove a mídia de instalação da configuração do próximo boot.

add_shared_folder

Adiciona uma pasta do host a uma VM macOS ou Linux com um nome de montagem e acesso somente leitura opcional.

remove_shared_folder

Remove um registro de pasta compartilhada selecionado da configuração de uma VM.

set_shared_folder_readonly

Altera uma pasta compartilhada entre acesso somente leitura e gravável.

apply_guest_tools

Prepara ou aplica o disco de ferramentas de guest do SlateVM para a VM selecionada.

set_attach_linux_guest_tools

Controla se uma VM Linux de desktop anexa o disco de ferramentas do SlateVM.

set_console_window_size

Define a largura e a altura da janela do console da VM selecionada em pontos de exibição do Mac.

set_display_resolution

Define a resolução de exibição do próximo boot para um guest servidor Linux headless.

set_linux_network_path

Seleciona o NAT nativo da Apple ou o caminho NAT com suporte a serviço do SlateVM para uma VM Linux.

Diagnósticos, console e entrada

get_diagnostics

Coleta estado da VM, configuração, acesso à mídia, informações de disco, saúde da rede, logs e o erro estruturado mais recente.

tail_log

Retorna linhas recentes de log da VM para uma janela de tempo selecionada com um filtro de texto opcional.

capture_screen

Captura o console do guest como uma imagem MCP ou arquivo do host, com controles de formato, recorte e escala.

read_console_text

Retorna o texto do console do guest, opcionalmente filtrado por um padrão sem diferenciar maiúsculas de minúsculas. Servidores Linux headless leem o fluxo serial exato (sem OCR); outros guests usam OCR do framebuffer.

wait_for_text

Consulta o console até que um padrão solicitado apareça ou um tempo limite limitado seja atingido — o fluxo serial para servidores headless, OCR do framebuffer caso contrário.

send_input

Envia ações de ponteiro, texto ou teclas com escopo no guest e pode capturar o resultado na mesma chamada. Em servidores headless, texto/teclas vão para o console serial — maiúsculas, símbolos e combinações com Ctrl funcionam.

Serviço de rede e comandos no guest

networking_status

Informa se o serviço de rede do SlateVM está instalado, acessível e saudável.

networking_install

Abre o instalador macOS assinado para aprovação única de administrador do serviço de rede.

networking_repair

Reinstala o serviço de rede pelo fluxo de pacote aprovado pelo administrador.

networking_uninstall

Abre o desinstalador aprovado pelo administrador para o serviço de rede.

guest_network

Descobre endereços IP candidatos do guest a partir do MAC da VM usando informações de DHCP e ARP do host.

provision_ssh

Cria ou retorna a chave pública SSH dedicada por VM e o comando de instalação no lado do guest.

ssh_status

Informa se uma VM tem uma chave SSH LLM dedicada e retorna sua chave pública.

revoke_ssh

Remove a identidade SSH dedicada do lado do host para que possa ser rotacionada ou aposentada.

run_in_guest

Executa um comando SSH limitado e retorna código de saída, saída, erros, tempo limite e status da conexão.