io.github.bryanjbelanger/desktop-hypervisor-mcp

السجل الرسمي أخرى

VirtualBox and VMware Fusion/Workstation behind one provider-neutral MCP tool surface.

التثبيت

أضف هذا إلى إعدادات MCP في عميلك (Claude Desktop: claude_desktop_config.json، وCursor: ‏.cursor/mcp.json، ويستخدم VS Code وغيره الصيغة نفسها «mcpServers»).

MCPB package https://github.com/bryanjbelanger/desktop-hypervisor-mcp/releases/download/v2.1.2/desktop-hypervisor-mcp-2.1.2.mcpb

متغيرات البيئة

  • HV_GUEST_USER Username for in-guest operations (exec, script, file copy). Omit if guest operations are not needed.
  • HV_GUEST_PASSWORD سري Password for in-guest operations. Read from the server environment, never accepted as a tool parameter.
  • HV_IMAGE_DIR Cache directory for downloaded OS images. Defaults to ~/.hypervisor-images.

التوثيق

مأخوذ من ملف README للمشروع على GitHub ويُحدَّث أسبوعيًا. تفتح الروابط على GitHub.

المحتويات
  1. Desktop Hypervisor MCP
  2. Design
  3. Tools
  4. Image catalog
  5. Prerequisites
  6. Installing
  7. Registration with Claude Code
  8. Permissions
  9. Bundled skills
  10. Related projects

Desktop Hypervisor MCP

One provider-neutral MCP server for the desktop hypervisors: VirtualBox, VMware Fusion, and VMware Workstation. Nine tools, ~1,800 context tokens, full coverage of what its two predecessor servers did in ~5,600.

It succeeds virtualbox-mcp-server (that history is preserved on the predecessor-virtualbox branch) and the never- released vmware-fusion-mcp-server, folding both into one capability-based surface.

Versioning note: stable releases of this server start at v2.0.0. The v1.x line (and its v1.0.0 release, kept for anyone still pinning it) belongs to the virtualbox-only predecessor; the 0.x tags were this server's pre-stable iterations. v2.0.0 is identical in content to v0.4.3, re-versioned as the stable line.

Design

  • Capability-based, not lowest-common-denominator. Providers advertise what they can actually do (provider action=list): guest exec, OVA import/export, linked clones, pre-boot guestinfo injection, DHCP-lease IP discovery, ISO mastering… Unsupported operations fail by naming the missing capability, not with a provider error.
  • Intent, not mechanism. "Ensure the cluster nodes share a network the host can reach" is expressible on both families; "create a host-only interface" is not. The neutral tools express intent; provider-native mechanism stays reachable, unabstracted, through execute_command.
  • Artifacts resolve per provider. The same image name gives each hypervisor the artifact it can actually import — Talos's vmware-*.ova vs virtualbox-*.ova, Vagrant's vmware_desktop vs virtualbox boxes, Microsoft's per-hypervisor dev VM — keyed on (image, provider family, host arch).

Tools

ToolActions
providerlist — installed hypervisors with status, capabilities, formats, and remediation when not ready
artifactcatalog, resolve, fetch (dry_run) — verified downloads of official OS images, per provider
vm_lifecyclecreate, start, stop, suspend, reset, delete, clone, import, export
vm_infolist, running, show, ip (in-guest tools, else DHCP leases by MAC — works for agentless guests like Talos)
vm_configresources, nested_virt, attach_iso, guestinfo (pre-boot key/value injection, VMware)
snapshottake, restore, delete, list (tree)
guestexec, script, copy_in, copy_out, screenshot
networkensure_cluster_network, expose_guest_port, make_iso, repack_iso
execute_commandraw VBoxManage / vmrun argv on the selected provider

With one hypervisor installed it is selected automatically; with several, the ambiguity is surfaced, never guessed.

Image catalog

artifact action=catalog lists maintained images: Talos (appliance and metal ISO), Ubuntu (cloud image and Vagrant), Debian, Fedora, Rocky, Alma, openSUSE, FreeBSD, Kali, TurnKey, the Windows dev VM, plus vagrant:org/box passthrough to the whole registry. Downloads are sha256-verified wherever the publisher provides a digest (GitHub release assets always do); unverified sources say so loudly. Vagrant boxes are fetched for the right provider and auto-extracted to their importable machine file. The cache lives in ~/.hypervisor-images (HV_IMAGE_DIR overrides).

Prerequisites

  • VirtualBox (VBoxManage) and/or VMware Fusion / Workstation (vmrun). Detection is per-call, so a hypervisor installed mid-session is picked up.
  • Nothing else: a single static Go binary, no Python, no Node.

Optional, detected at runtime: ovftool enables OVA import/export on VMware; xorriso enables repack_iso.

Installing

Published on the official MCP Registry as io.github.bryanjbelanger/desktop-hypervisor-mcp — that name is what registry-aware clients install by. The registry has no per-server page yet, so the listing itself is the API record: current entry.

For hosts that support MCP Bundles, download the .mcpb from the latest release and open it — guest credentials and the image cache directory are prompted for in the host's own UI. One bundle covers every platform; it carries a binary per (os, arch) and picks one at startup, so it is ~16 MB.

Otherwise take the bare binary for your platform from the same release, or build it:

go build -o desktop-hypervisor-mcp .

Registration with Claude Code

claude mcp add --scope user hypervisor -- /path/to/desktop-hypervisor-mcp

Guest-operation credentials come from the server environment, never from tool parameters:

claude mcp add --scope user hypervisor \
  --env HV_GUEST_USER=vagrant --env HV_GUEST_PASSWORD=vagrant \
  -- /path/to/desktop-hypervisor-mcp

(VMRUN_GUEST_USER/VMRUN_GUEST_PASSWORD are honored for compatibility.)

The server ships usage recipes in the MCP initialize handshake, generated from what was actually detected on the host — a session on a VirtualBox-only machine never pays context for VMware guidance.

Permissions

Per-tool allowlisting in .claude/settings.json keeps prompts meaningful — read-only tools are safe to always-allow:

{
  "permissions": {
    "allow": [
      "mcp__hypervisor__provider",
      "mcp__hypervisor__vm_info",
      "mcp__hypervisor__artifact",
      "mcp__hypervisor__snapshot"
    ]
  }
}

Keep mutating tools (vm_lifecycle, execute_command) behind prompts unless you accept unattended VM mutation.

Bundled skills

skills/ contains workflow skills for Claude Code — procedures that compose this server's tools across either hypervisor: hv-vm (provisioning), hv-network (networks, guest reachability, seed ISOs), hv-snapshot (safety workflows), hv-maintenance (inventory & cleanup), hv-transfer (clone/export/move). Install by copying (or symlinking) into ~/.claude/skills/. They supersede the predecessor's vbox-* skills.

  • talos-mcp-server — Talos/Kubernetes orchestration; consumes this server for node provisioning and stays deliberately hypervisor-agnostic.

الأسئلة الشائعة

ما هو io.github.bryanjbelanger/desktop-hypervisor-mcp؟

VirtualBox and VMware Fusion/Workstation behind one provider-neutral MCP tool surface.

كيف أثبّت io.github.bryanjbelanger/desktop-hypervisor-mcp؟

اتبع خطوات التثبيت في توثيقه المعروض في هذه الصفحة وفي مستودعه.

هل يحتاج io.github.bryanjbelanger/desktop-hypervisor-mcp إلى مفتاح API؟

نعم. يتطلب HV_GUEST_PASSWORD، وتضبطها في إعداداته.

هل io.github.bryanjbelanger/desktop-hypervisor-mcp مفتوح المصدر؟

نعم. شيفرته متاحة على GitHub بترخيص MIT.

من يصون io.github.bryanjbelanger/desktop-hypervisor-mcp؟

ينشره bryanjbelanger. يدرجه AI.tn لكنه لا يصونه ولا يوصي به.

من سجل MCP الرسمي. الإدراج ليس توصية: راجع شيفرة الخادم وصلاحياته قبل منحه الوصول إلى بياناتك.