Nemeton MCP
offiziellOpen-Source-MCP-Bridge für Nemeton: Erstelle, starte, snapshotte und steuere native macOS-Virtualmaschinen aus Claude Desktop, Claude Code oder Cursor, einschließlich UI-Automatisierung innerhalb des Gasts. Läuft lokal auf Apple Silicon.
Was kann man mit Nemeton MCP machen?
- VMs erstellen und konfigurieren — Bitten Sie Ihren Assistenten, eine VM mit einer gewählten Distribution, CPU-Anzahl und RAM zu erstellen, und aktualisieren oder klonen Sie sie später.
- Energiezustand von VMs steuern — Starten, stoppen, pausieren, fortsetzen, suspendieren oder hart stoppen Sie VMs und prüfen Sie den Suspend-Status.
- Befehle über SSH ausführen — Verwenden Sie
ssh_execute, um Befehle innerhalb einer VM auszuführen, undvm_ip, um ihre Adresse zu ermitteln. - Dateien übertragen — Laden Sie Dateien mit
file_upload,file_downloadundfile_listin eine VM hoch, herunter und listen Sie sie auf. - Snapshots verwalten — Erstellen, listen, wiederherstellen und löschen Sie CoW-Snapshots einer VM.
- Konsole und Screenshots lesen — Senden Sie Konsoleneingaben, lesen Sie Ausgaben, führen Sie Konsolenbefehle aus und erstellen Sie Screenshots.
Dokumentation
Nemeton MCP Server
Steuere native macOS-Virtual-Machines aus Claude Desktop, Claude Code, Cursor oder jedem beliebigen MCP-Client.
Dies ist die offizielle Model Context Protocol-Brücke für Nemeton — eine native macOS-App, die Linux- und macOS-VMs mit Apples Virtualization.framework erstellt und verwaltet (kein Parallels, kein VMware, keine Abonnements).
Die Nemeton-App muss installiert und ausgeführt werden. Dieser MCP-Server ist eine schlanke stdio→HTTP-Brücke — die eigentliche VM-Logik befindet sich in der App. Hol dir Nemeton unter store.juergenkoller.software/apps/nemeton.
Was du tun kannst
„Claude, starte eine Ubuntu-24.04-VM mit 4 CPUs und 8 GB RAM, installiere Docker und sag mir Bescheid, wenn sie bereit ist."
Der MCP-Server stellt über 50 Tools in diesen Kategorien bereit:
| Kategorie | Tools |
|---|---|
| VM-Lebenszyklus | list_vms, get_vm, create_vm, update_vm, clone_vm, delete_vm, reorder_vms, stop_all |
| VM-Steuerung | start_vm, stop_vm, force_stop_vm, pause_vm, resume_vm, suspend_vm, get_suspend_status |
| Snapshots (CoW auf APFS) | list_snapshots, create_snapshot, restore_snapshot, delete_snapshot |
| Konsole | send_console, read_console, console_execute, take_screenshot |
| Netzwerk & Dateien | vm_ip, ssh_execute, file_upload, file_download, file_list |
| GUI-Steuerung | gui_launch, gui_windows, vscode_command, select_vm |
| Zwischenablage-Brücke | clipboard_read, clipboard_write |
| Host-Informationen | get_host_info, get_metrics |
| Speicher | resize_disk, export_vm, import_vm |
| Distributionen | list_distros (Ubuntu, Debian, Fedora, Arch — automatischer ISO-Download) |
| Anzeige | fullscreen_enter, fullscreen_exit, fullscreen_toggle |
| Webhooks | list_webhooks, register_webhook, delete_webhook |
| Laufzeit | vm_runtime, vm_errors, list_downloads |
Jedes Tool gibt strukturiertes JSON mit VM-Status, Snapshot-Metadaten, Konsolenausgabe oder Operationsergebnis zurück.
Installation
Voraussetzungen
- macOS 14 (Sonoma) oder neuer — erforderlich für
Virtualization.framework-Funktionen. - Nemeton-App installiert und ausgeführt — hier herunterladen.
- Swift 5.9+ (Xcode 15+), wenn du aus dem Quellcode bauen möchtest. Vorgefertigte Binaries sind ebenfalls verfügbar.
Aus dem Quellcode bauen
git clone https://github.com/juergenkoller-software/nemeton-mcp.git
cd nemeton-mcp
swift build -c release
# Binary: .build/release/NemetonMCP
Vorgefertigtes Binary
Lade das neueste NemetonMCP-Binary von der Releases-Seite herunter.
Konfiguration
Claude Desktop
Bearbeite ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"nemeton": {
"command": "/path/to/NemetonMCP",
"env": {
"NEMETON_PORT": "22100",
"NEMETON_TOKEN": "your-token-here"
}
}
}
}
Den NEMETON_TOKEN findest du unter Nemeton → Einstellungen → API & Integrationen.
Claude Code
Füge dies zu ~/.claude/mcp.json hinzu (oder über claude mcp add):
claude mcp add nemeton /path/to/NemetonMCP \
--env NEMETON_PORT=22100 \
--env NEMETON_TOKEN=your-token-here
Cursor / andere MCP-Clients
Dasselbe Muster: Konfiguriere NemetonMCP als stdio-MCP-Server mit den beiden oben genannten Umgebungsvariablen.
So funktioniert es
┌────────────────┐ JSON-RPC stdio ┌────────────────┐ HTTP+Bearer ┌────────────────┐
│ Claude/Cursor │ ───────────────► │ NemetonMCP │ ─────────────► │ Nemeton.app │
│ (MCP client) │ ◄─────────────── │ (this repo) │ ◄───────────── │ (port 22100) │
└────────────────┘ └────────────────┘ └────────────────┘
Die Brücke liest JSON-RPC-2.0-Anfragen aus stdin, leitet sie an Nemeton's lokalen HTTP-Server unter 127.0.0.1:22100/mcp weiter und schreibt Antworten zurück nach stdout. Die gesamte Authentifizierung, VM-Logik und Tool-Verteilung erfolgt innerhalb der Nemeton-App.
Diese Aufteilung ermöglicht es uns, das MCP-Wire-Format quelloffen zu halten (damit du es prüfen, forken oder durch eine beliebige Sandboxing-Schicht deiner Wahl ausführen kannst), während die VM-Interna in der App bleiben.
Umgebungsvariablen
| Variable | Standard | Beschreibung |
|---|---|---|
NEMETON_PORT | 22100 | Port von Nemeton's lokalem HTTP-Server |
NEMETON_TOKEN | (keine) | Bearer-Token aus den Nemeton-Einstellungen (erforderlich für Schreiboperationen) |
Fehler und Trace-Logs werden nach stderr geschrieben, damit sie den JSON-RPC-stdout-Kanal nicht verunreinigen.
Über Nemeton
Nemeton ist eine native macOS-App zum Erstellen und Verwalten von virtuellen Maschinen mit Apples Virtualization.framework. Highlights:
- Kein Abonnement — Einmalkauf, 389 €
- Linux- & macOS-VMs mit automatischem ISO/IPSW-Download
- CoW-Snapshots auf APFS — VM-Zustände speichern, ohne Speicherplatz zu verschwenden
- REST-API + WebSocket-Events (42 Endpunkte) für Automatisierung
- MCP-Server (dieses Repo) für Claude/KI-Agenten
- Native Performance — nutzt Apples Framework direkt, kein QEMU-Overhead
- 100 % lokal — keine Cloud, keine Telemetrie
→ Hol dir Nemeton unter store.juergenkoller.software
Lizenz
MIT — siehe LICENSE. Die Brücke ist quelloffen; die Nemeton-App selbst ist kommerziell.
Probleme & Support
- Fehler in der Brücke: Issue eröffnen
- App-Support: support@juergenkoller.software
Entwickelt von Juergen Koller Software GmbH.