mcpField
N
Nemeton Mcp

Nemeton Mcp

Local
github.com/juergenkoller-softwareCloud & Infra1Updated 1d ago

About Nemeton Mcp

Nemeton MCP Server bridges MCP clients to the Nemeton macOS app to control Linux and macOS virtual machines. It forwards stdio requests to the local app, where the VM operations are handled.

Key features

  1. 01Create, manage, and control VMs
  2. 02Create and restore snapshots
  3. 03Run console and SSH operations
  4. 04Transfer files and inspect VM details
  5. 05Control GUI and clipboard
  6. 06Import, export, and resize disks

Use cases

  1. 01Start and configure VMs from an MCP client
  2. 02Save or restore VM state with snapshots
  3. 03Run commands and transfer files in a VM
  4. 04Inspect VM metrics and runtime status

MCP support

The bridge exposes MCP tools over stdio and forwards JSON-RPC requests to Nemeton's local HTTP service. The Nemeton app must be installed and running.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

Nemeton MCP Server

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

Control native macOS virtual machines from Claude Desktop, Claude Code, Cursor, or any MCP client.

This is the official Model Context Protocol bridge for Nemeton — a native macOS app that creates and manages Linux and macOS VMs using Apple's Virtualization.framework (no Parallels, no VMware, no subscriptions).

You need the Nemeton app installed and running. This MCP server is a thin stdio→HTTP bridge — the actual VM logic lives in the app. Get Nemeton at store.juergenkoller.software/apps/nemeton.


What you can do

"Claude, spin up an Ubuntu 24.04 VM with 4 CPUs and 8 GB RAM, install Docker, and tell me when it's ready."

The MCP server exposes 50+ tools across these categories:

CategoryTools
VM Lifecyclelist_vms, get_vm, create_vm, update_vm, clone_vm, delete_vm, reorder_vms, stop_all
VM Controlstart_vm, stop_vm, force_stop_vm, pause_vm, resume_vm, suspend_vm, get_suspend_status
Snapshots (CoW on APFS)list_snapshots, create_snapshot, restore_snapshot, delete_snapshot
Consolesend_console, read_console, console_execute, take_screenshot
Networking & Filesvm_ip, ssh_execute, file_upload, file_download, file_list
GUI Controlgui_launch, gui_windows, vscode_command, select_vm
Clipboard Bridgeclipboard_read, clipboard_write
Host Infoget_host_info, get_metrics
Storageresize_disk, export_vm, import_vm
Distroslist_distros (Ubuntu, Debian, Fedora, Arch — auto-download ISOs)
Displayfullscreen_enter, fullscreen_exit, fullscreen_toggle
Webhookslist_webhooks, register_webhook, delete_webhook
Runtimevm_runtime, vm_errors, list_downloads

Each tool returns structured JSON with VM state, snapshot metadata, console output, or operation result.


Installation

Prerequisites
  1. macOS 14 (Sonoma) or later — required for Virtualization.framework features.
  2. Nemeton app installed and running — get it here.
  3. Swift 5.9+ (Xcode 15+) if you want to build from source. Pre-built binaries are also available.
Build from source
git clone https://github.com/juergenkoller-software/nemeton-mcp.git
cd nemeton-mcp
swift build -c release
# Binary: .build/release/NemetonMCP
Pre-built binary

Download the latest NemetonMCP binary from the Releases page.


Configuration

Claude Desktop

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

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

Get NEMETON_TOKEN from Nemeton → Settings → API & Integrations.

Claude Code

Add to ~/.claude/mcp.json (or via claude mcp add):

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

Same pattern: configure NemetonMCP as a stdio MCP server with the two environment variables above.


How it works

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

The bridge reads JSON-RPC 2.0 requests from stdin, forwards them to Nemeton's local HTTP server at 127.0.0.1:22100/mcp, and writes responses back to stdout. All authentication, VM logic, and tool dispatch happens inside the Nemeton app.

This split lets us keep the MCP wire format open-source (so you can audit it, fork it, or run it through any sandboxing layer you prefer) while the VM internals stay in the app.


Environment variables

VariableDefaultDescription
NEMETON_PORT22100Port of Nemeton's local HTTP server
NEMETON_TOKEN(none)Bearer token from Nemeton Settings (required for write operations)

Errors and trace logs are written to stderr so they don't pollute the JSON-RPC stdout channel.


About Nemeton

Nemeton is a native macOS app for creating and managing virtual machines using Apple's Virtualization.framework. Highlights:

  • No subscription — one-time purchase, €389
  • Linux & macOS VMs with automatic ISO/IPSW download
  • CoW snapshots on APFS — save VM states without wasting disk
  • REST API + WebSocket events (42 endpoints) for automation
  • MCP server (this repo) for Claude/AI agents
  • Native performance — uses Apple's framework directly, no QEMU overhead
  • 100% local — no cloud, no telemetry

→ Get Nemeton at store.juergenkoller.software


License

MIT — see LICENSE. The bridge is open source; the Nemeton app itself is commercial.

Issues & support

Built by Juergen Koller Software GmbH.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.