Nemeton MCP
oficialPuente MCP de código abierto para Nemeton: crea, inicia, toma instantáneas y controla máquinas virtuales nativas de macOS desde Claude Desktop, Claude Code o Cursor, incluida la automatización de la interfaz de usuario dentro del invitado. Se ejecuta localmente en Apple silicon.
¿Qué puedes hacer con Nemeton MCP?
- Crear y configurar VM — Pide a tu asistente que cree una VM con una distro, cantidad de CPU y RAM elegidas, y luego actualízala o clónala más tarde.
- Controlar el estado de energía de la VM — Inicia, detén, pausa, reanuda, suspende o fuerza la detención de VM, y comprueba el estado de suspensión.
- Ejecutar comandos por SSH — Usa
ssh_executepara ejecutar comandos dentro de una VM yvm_ippara encontrar su dirección. - Transferir archivos — Sube, descarga y lista archivos dentro de una VM con
file_upload,file_downloadyfile_list. - Gestionar instantáneas — Crea, lista, restaura y elimina instantáneas CoW de una VM.
- Leer consola y capturas de pantalla — Envía entrada a la consola, lee la salida, ejecuta comandos de consola y captura pantallas.
Documentación
Servidor MCP de Nemeton
Controla máquinas virtuales nativas de macOS desde Claude Desktop, Claude Code, Cursor o cualquier cliente MCP.
Este es el puente oficial de Model Context Protocol para Nemeton, una app nativa de macOS que crea y gestiona VM de Linux y macOS usando Virtualization.framework de Apple (sin Parallels, sin VMware, sin suscripciones).
Necesitas la app Nemeton instalada y en ejecución. Este servidor MCP es un puente ligero de stdio→HTTP; la lógica real de las VM reside en la app. Consigue Nemeton en store.juergenkoller.software/apps/nemeton.
Qué puedes hacer
"Claude, levanta una VM con Ubuntu 24.04 con 4 CPU y 8 GB de RAM, instala Docker y avísame cuando esté lista."
El servidor MCP expone más de 50 herramientas en estas categorías:
| Categoría | Herramientas |
|---|---|
| Ciclo de vida de VM | list_vms, get_vm, create_vm, update_vm, clone_vm, delete_vm, reorder_vms, stop_all |
| Control de VM | start_vm, stop_vm, force_stop_vm, pause_vm, resume_vm, suspend_vm, get_suspend_status |
| Instantáneas (CoW en APFS) | list_snapshots, create_snapshot, restore_snapshot, delete_snapshot |
| Consola | send_console, read_console, console_execute, take_screenshot |
| Redes y archivos | vm_ip, ssh_execute, file_upload, file_download, file_list |
| Control de GUI | gui_launch, gui_windows, vscode_command, select_vm |
| Puente de portapapeles | clipboard_read, clipboard_write |
| Información del host | get_host_info, get_metrics |
| Almacenamiento | resize_disk, export_vm, import_vm |
| Distribuciones | list_distros (Ubuntu, Debian, Fedora, Arch — descarga automática de ISO) |
| Pantalla | fullscreen_enter, fullscreen_exit, fullscreen_toggle |
| Webhooks | list_webhooks, register_webhook, delete_webhook |
| Tiempo de ejecución | vm_runtime, vm_errors, list_downloads |
Cada herramienta devuelve JSON estructurado con el estado de la VM, metadatos de instantáneas, salida de consola o el resultado de la operación.
Instalación
Requisitos previos
- macOS 14 (Sonoma) o posterior — necesario para las funciones de
Virtualization.framework. - App Nemeton instalada y en ejecución — consíguela aquí.
- Swift 5.9+ (Xcode 15+) si quieres compilar desde el código fuente. También hay binarios precompilados disponibles.
Compilar desde el código fuente
git clone https://github.com/juergenkoller-software/nemeton-mcp.git
cd nemeton-mcp
swift build -c release
# Binary: .build/release/NemetonMCP
Binario precompilado
Descarga el binario NemetonMCP más reciente desde la página de Releases.
Configuración
Claude Desktop
Edita ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"nemeton": {
"command": "/path/to/NemetonMCP",
"env": {
"NEMETON_PORT": "22100",
"NEMETON_TOKEN": "your-token-here"
}
}
}
}
Obtén NEMETON_TOKEN en Nemeton → Ajustes → API e integraciones.
Claude Code
Añade a ~/.claude/mcp.json (o mediante claude mcp add):
claude mcp add nemeton /path/to/NemetonMCP \
--env NEMETON_PORT=22100 \
--env NEMETON_TOKEN=your-token-here
Cursor / otros clientes MCP
Mismo patrón: configura NemetonMCP como un servidor MCP de stdio con las dos variables de entorno anteriores.
Cómo funciona
┌────────────────┐ JSON-RPC stdio ┌────────────────┐ HTTP+Bearer ┌────────────────┐
│ Claude/Cursor │ ───────────────► │ NemetonMCP │ ─────────────► │ Nemeton.app │
│ (MCP client) │ ◄─────────────── │ (this repo) │ ◄───────────── │ (port 22100) │
└────────────────┘ └────────────────┘ └────────────────┘
El puente lee solicitudes JSON-RPC 2.0 desde stdin, las reenvía al servidor HTTP local de Nemeton en 127.0.0.1:22100/mcp y escribe las respuestas de vuelta en stdout. Toda la autenticación, la lógica de las VM y el despacho de herramientas ocurren dentro de la app Nemeton.
Esta separación nos permite mantener el formato de comunicación MCP como código abierto (para que puedas auditarlo, bifurcarlo o ejecutarlo a través de cualquier capa de aislamiento que prefieras) mientras los componentes internos de las VM permanecen en la app.
Variables de entorno
| Variable | Valor predeterminado | Descripción |
|---|---|---|
NEMETON_PORT | 22100 | Puerto del servidor HTTP local de Nemeton |
NEMETON_TOKEN | (ninguno) | Token Bearer de los Ajustes de Nemeton (obligatorio para operaciones de escritura) |
Los errores y los registros de traza se escriben en stderr para que no contaminen el canal stdout de JSON-RPC.
Acerca de Nemeton
Nemeton es una app nativa de macOS para crear y gestionar máquinas virtuales usando Virtualization.framework de Apple. Aspectos destacados:
- Sin suscripción — pago único, 389 €
- VM de Linux y macOS con descarga automática de ISO/IPSW
- Instantáneas CoW en APFS — guarda estados de VM sin desperdiciar disco
- API REST + eventos WebSocket (42 endpoints) para automatización
- Servidor MCP (este repositorio) para Claude/agentes de IA
- Rendimiento nativo — usa el framework de Apple directamente, sin la sobrecarga de QEMU
- 100 % local — sin nube, sin telemetría
→ Consigue Nemeton en store.juergenkoller.software
Licencia
MIT — consulta LICENSE. El puente es de código abierto; la app Nemeton en sí es comercial.
Problemas y soporte
- Errores del puente: abre un issue
- Soporte de la app: support@juergenkoller.software
Creado por Juergen Koller Software GmbH.