mcpField
N
Nido - VM Manager for AI Agents

Nido - VM Manager for AI Agents

Local
github.comCloud & Infra2Updated 1d ago

About Nido - VM Manager for AI Agents

Nido is a local QEMU virtual machine manager for AI agents, exposing VM lifecycle operations through a CLI, TUI, and MCP. It supports cloud images, templates, and blueprints, with a separate guest kernel for each VM.

Key features

  1. 01Create, configure, and delete VMs
  2. 02Reuse cached images with linked clones
  3. 03Provision guests with cloud-init
  4. 04Manage images, templates, and blueprints
  5. 05CLI, TUI, and MCP interfaces
  6. 06Read-only resources and opt-in event subscriptions

Use cases

  1. 01Run tests inside disposable virtual machines
  2. 02Let an AI agent create and manage its work environment
  3. 03Reuse prepared VM disks from templates
  4. 04Sync terminal dashboards and agents through events

MCP support

Nido includes a stdio MCP server that exposes VM, image, template, blueprint, and system management tools to clients. It also provides read-only resources and opt-in event subscriptions.

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
Packages
mcpbnido.mcpb4.10.5
npmnido-mcp4.10.5

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

Nido

Nido: a luminous egg in a retro workstation. Real VMs. Agent-ready.

Real virtual machines for AI agents. One local engine, three ways to drive it: CLI, TUI and MCP.

Release CI npm MCP Registry License: MIT

Give an agent a machine it can provision, use and delete. Nido runs QEMU locally, clones cached images with copy-on-write disks, and exposes the same VM lifecycle to your terminal and your MCP client. Each VM has its own guest kernel.

Hatch your agents. Let them fly. Retro shell, practical machinery.

Get started · Connect an agent · Documentation · Wiki

Why Nido?

You want to...Nido gives you...
Test code away from your hostDisposable QEMU VMs with SSH access and cloud-init provisioning
Let an agent manage its own environmentA built-in stdio MCP server with compact tools, read-only resources and opt-in event subscriptions
Reuse an expensive setupTemplates and QCOW2 linked clones, with one shared base and a writable disk per VM
Switch between automation and hands-on workStructured CLI JSON, shell completion and an interactive terminal dashboard
Keep multiple dashboards and agents in syncShared local events, live TUI updates and selective MCP notifications
Choose the right starting pointAn automatically refreshed cloud-image catalog, local templates and buildable blueprints

Press start

QEMU is required to run VMs. Nido supports Linux, macOS and Windows hosts; hardware acceleration depends on what the host actually exposes. Start with nido doctor. See installation and host requirements.

Install

Linux / macOS

curl -fsSL https://github.com/Josepavese/nido/releases/latest/download/install.sh | bash

Windows PowerShell

irm https://github.com/Josepavese/nido/releases/latest/download/install.ps1 | iex

Open a new terminal, then check nido version and nido doctor. The quick installers check prerequisites and offer QEMU setup where supported.

Prefer a package manager? npm works on Linux, macOS and Windows:

npm install -g nido-mcp                # Linux / macOS / Windows launcher
brew install Josepavese/nido/nido       # macOS / Linux
go install github.com/Josepavese/nido/v4/cmd/nido@latest
scoop bucket add nido https://github.com/Josepavese/scoop-nido
scoop install nido

Container (Docker/Podman, bundles QEMU; needs a KVM-capable host):

docker run -i --rm --device /dev/kvm \
  --group-add "$(stat -c %g /dev/kvm)" \
  -v nido-home:/home/nido/.nido \
  ghcr.io/josepavese/nido mcp

Images are rebuilt on every release at ghcr.io/josepavese/nido (:{version}, :{minor}, :latest) and speak MCP on stdio; pass --group-add so the non-root user can open /dev/kvm.

WinGet: Josepavese.Nido is awaiting Microsoft review. See availability and commands.

For MCP clients, use npx -y nido-mcp mcp, discover io.github.Josepavese/nido in the Official MCP Registry, browse Glama, or import the MCPB bundle. MCP catalogs and client installation.

All install options · Distribution channel status

Hatch your first VM
nido images update
nido images info ubuntu:lts
nido images pull ubuntu:lts
nido spawn agent-lab --image ubuntu:lts --memory 2048 --cpus 2
nido info agent-lab --json

# Once the guest has finished booting and SSH is ready:
nido ssh agent-lab

The first pull downloads the base image. Later VMs can reuse it. ubuntu:lts follows the catalog's supported LTS selection; use a numbered tag from nido images list when you need a specific OS release. Guest boot and cloud-init take additional time; creating the overlay is only one part of startup.

When you have saved the work you need, shut down inside the guest and remove only your disposable VM:

nido ssh agent-lab sudo poweroff
# After shutdown, confirm its state:
nido info agent-lab
nido delete agent-lab

nido stop terminates the managed QEMU process and waits for exit. Use guest poweroff for a clean OS shutdown. VM data persists until you delete it.

Provisioning, ports, templates and cleanup

Watch core changes in another terminal with nido events or nido events --json. TUI sessions update from the shared stream; agents explicitly subscribe only to the resources they need. See event delivery and mute controls.

Connect your agent

Nido's MCP server runs locally over stdio. No separate service is required. Use an installed binary:

{
  "mcpServers": {
    "nido": {
      "command": "nido",
      "args": ["mcp"]
    }
  }
}

Use the absolute executable path if your client does not inherit your terminal's PATH. nido register prints a registration block; your client owns where it is saved. Clients that launch npm packages can instead use command: "npx" with args: ["-y", "nido-mcp", "mcp"].

ToolResponsibility
nido_vmCreate, inspect, configure, connect and remove VMs; manage forwarded ports
nido_imageBrowse and refresh the catalog; pull and manage cached images
nido_templateSave and manage reusable disk templates
nido_blueprintInspect and build image recipes
nido_systemDiagnostics, configuration, accelerators and installation operations

Read-only resources include nido://fleet/vms, nido://catalog/images and nido://system/config. Use nido mcp-help for the machine-readable tool/action guide, or nido mcp --help in your terminal.

An example task for your agent:

Create a disposable Ubuntu LTS VM named test-lab, provision the dependencies, run my tests and save their output. Delete only that VM when finished. Preserve other VMs and shared images.

MCP grants access to local VM and installation operations, including destructive ones. Connect clients you trust. MCP guide · Optional VM-testing skill

One base. Separate machines.

Nido workflow: CLI, TUI and MCP use one VM engine. A cached base feeds separate writable VM disks; save useful output before deleting a VM.

With linked clones enabled, the cached base stays shared while each VM records its own disk changes. Space usage grows with those writes, logs and templates; it is not constant as you add VMs. Nido checks backing-image dependencies before cache removal. Keep bases in place while dependent VM disks exist.

VMs provide a separate guest kernel, but host mounts, forwarded ports and PCI passthrough deliberately cross that boundary. Nido is not a complete security policy for arbitrary untrusted workloads. See operations and isolation.

Pick your starting point

  • Cloud image: pull from the catalog and provision through cloud-init. Ubuntu, Debian, Alpine, Kali, CirrOS and openSUSE discovery follows the policies in registry/sources.yaml. Catalog and integrity
  • Template: save a prepared VM disk and reuse it for repeated tasks. Template workflow
  • Blueprint: build an image from a recipe and installer media, including Windows evaluation editions. Windows guide

The scheduled catalog job discovers new supported upstream releases. Refresh your local copy with nido images update; it does not update an existing guest OS.

Prefer hands-on control? Run nido gui for the Fleet, Hatchery, Registry and System views. Use --gui on spawn/start when you want the VM's display; that flag and the terminal dashboard are separate features.

Go further

TaskGuide
Provision a guest, forward ports, adjust resources, share filesEveryday workflows
Write scripts against NidoCLI JSON contract
Install, upgrade or choose a package channelInstallers · Distribution
Change the terminal paletteThemes
Understand runtime and hardware boundariesArchitecture
Contribute or validate a changeContributing · Testing

Documentation index · Changelog · Issues · MIT license

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.