Nemeton MCP

oficial

Ponte MCP de código aberto para o Nemeton: crie, inicie, faça snapshot e controle máquinas virtuais nativas do macOS a partir do Claude Desktop, Claude Code ou Cursor, incluindo automação de UI dentro do guest. Executa localmente em Apple silicon.

O que você pode fazer com Nemeton MCP?

  • Criar e configurar VMs — Peça ao seu assistente para criar uma VM com uma distro, contagem de CPUs e RAM escolhidas, e depois atualizá-la ou cloná-la.
  • Controlar o estado de energia da VM — Inicie, pare, pause, retome, suspenda ou force a parada de VMs, e verifique o status de suspensão.
  • Executar comandos via SSH — Use ssh_execute para executar comandos dentro de uma VM e vm_ip para encontrar o endereço dela.
  • Transferir arquivos — Faça upload, download e liste arquivos dentro de uma VM com file_upload, file_download e file_list.
  • Gerenciar snapshots — Crie, liste, restaure e exclua snapshots CoW de uma VM.
  • Ler console e capturas de tela — Envie entrada para o console, leia a saída, execute comandos no console e capture telas.

Documentação

Servidor MCP Nemeton

Swift Platform License MCP juergenkoller-software/nemeton-mcp MCP server

Controle máquinas virtuais nativas do macOS a partir do Claude Desktop, Claude Code, Cursor ou qualquer cliente MCP.

Este é a ponte oficial do Model Context Protocol para o Nemeton — um app nativo de macOS que cria e gerencia VMs Linux e macOS usando o Virtualization.framework da Apple (sem Parallels, sem VMware, sem assinaturas).

Você precisa do app Nemeton instalado e em execução. Este servidor MCP é uma ponte fina stdio→HTTP — a lógica real das VMs fica no app. Obtenha o Nemeton em store.juergenkoller.software/apps/nemeton.


O que você pode fazer

"Claude, crie uma VM Ubuntu 24.04 com 4 CPUs e 8 GB de RAM, instale o Docker e me avise quando estiver pronta."

O servidor MCP expõe mais de 50 ferramentas nestas categorias:

CategoriaFerramentas
Ciclo de vida da VMlist_vms, get_vm, create_vm, update_vm, clone_vm, delete_vm, reorder_vms, stop_all
Controle da VMstart_vm, stop_vm, force_stop_vm, pause_vm, resume_vm, suspend_vm, get_suspend_status
Snapshots (CoW em APFS)list_snapshots, create_snapshot, restore_snapshot, delete_snapshot
Consolesend_console, read_console, console_execute, take_screenshot
Rede e arquivosvm_ip, ssh_execute, file_upload, file_download, file_list
Controle de GUIgui_launch, gui_windows, vscode_command, select_vm
Ponte de área de transferênciaclipboard_read, clipboard_write
Informações do hostget_host_info, get_metrics
Armazenamentoresize_disk, export_vm, import_vm
Distroslist_distros (Ubuntu, Debian, Fedora, Arch — download automático de ISOs)
Exibiçãofullscreen_enter, fullscreen_exit, fullscreen_toggle
Webhookslist_webhooks, register_webhook, delete_webhook
Runtimevm_runtime, vm_errors, list_downloads

Cada ferramenta retorna JSON estruturado com o estado da VM, metadados de snapshot, saída do console ou resultado da operação.


Instalação

Pré-requisitos

  1. macOS 14 (Sonoma) ou superior — necessário para os recursos do Virtualization.framework.
  2. App Nemeton instalado e em execução — obtenha aqui.
  3. Swift 5.9+ (Xcode 15+) se você quiser compilar a partir do código-fonte. Binários pré-compilados também estão disponíveis.

Compilar a partir do código-fonte

git clone https://github.com/juergenkoller-software/nemeton-mcp.git
cd nemeton-mcp
swift build -c release
# Binary: .build/release/NemetonMCP

Binário pré-compilado

Baixe o binário NemetonMCP mais recente na página de Releases.


Configuração

Claude Desktop

Edite ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "nemeton": {
      "command": "/path/to/NemetonMCP",
      "env": {
        "NEMETON_PORT": "22100",
        "NEMETON_TOKEN": "your-token-here"
      }
    }
  }
}

Obtenha o NEMETON_TOKEN em Nemeton → Configurações → API e Integrações.

Claude Code

Adicione a ~/.claude/mcp.json (ou via claude mcp add):

claude mcp add nemeton /path/to/NemetonMCP \
  --env NEMETON_PORT=22100 \
  --env NEMETON_TOKEN=your-token-here

Cursor / outros clientes MCP

Mesmo padrão: configure o NemetonMCP como um servidor MCP stdio com as duas variáveis de ambiente acima.


Como funciona

┌────────────────┐  JSON-RPC stdio   ┌────────────────┐  HTTP+Bearer   ┌────────────────┐
│  Claude/Cursor │ ───────────────►  │  NemetonMCP    │ ─────────────► │  Nemeton.app   │
│  (MCP client)  │ ◄───────────────  │   (this repo)  │ ◄───────────── │  (port 22100)  │
└────────────────┘                   └────────────────┘                └────────────────┘

A ponte lê requisições JSON-RPC 2.0 de stdin, encaminha-as para o servidor HTTP local do Nemeton em 127.0.0.1:22100/mcp e grava as respostas de volta em stdout. Toda a autenticação, lógica de VM e despacho de ferramentas acontece dentro do app Nemeton.

Essa separação nos permite manter o formato de comunicação MCP como código aberto (para que você possa auditá-lo, fazer um fork ou executá-lo através de qualquer camada de sandbox que preferir), enquanto os detalhes internos das VMs permanecem no app.


Variáveis de ambiente

VariávelPadrãoDescrição
NEMETON_PORT22100Porta do servidor HTTP local do Nemeton
NEMETON_TOKEN(nenhum)Token Bearer das Configurações do Nemeton (obrigatório para operações de escrita)

Erros e logs de rastreamento são gravados em stderr para não poluir o canal stdout do JSON-RPC.


Sobre o Nemeton

O Nemeton é um app nativo de macOS para criar e gerenciar máquinas virtuais usando o Virtualization.framework da Apple. Destaques:

  • Sem assinatura — compra única, €389
  • VMs Linux e macOS com download automático de ISO/IPSW
  • Snapshots CoW em APFS — salve estados de VM sem desperdiçar disco
  • API REST + eventos WebSocket (42 endpoints) para automação
  • Servidor MCP (este repositório) para agentes Claude/IA
  • Desempenho nativo — usa o framework da Apple diretamente, sem overhead do QEMU
  • 100% local — sem nuvem, sem telemetria

→ Obtenha o Nemeton em store.juergenkoller.software


Licença

MIT — consulte LICENSE. A ponte é de código aberto; o app Nemeton em si é comercial.

Problemas e suporte

Desenvolvido por Juergen Koller Software GmbH.