MCP server · Apple Silicon
A real computer for your agent, ready in a second
agentpc runs Windows and Ubuntu desktop VMs on your Mac and hands them to AI agents over MCP. The agent clicks, types, runs commands and takes screenshots, then resets the VM to a clean install in seconds.
Install from Terminal
curl -fsSL https://agentpc.pawanpaudel.com.np/install.sh | sh
curl -fsSL https://agentpc.pawanpaudel.com.np/
install.sh | sh
Free and open source (MIT). Apple Silicon Mac, M1 or later. The installer adds QEMU and registers the MCP server with the agents it finds.
What it does
A single Rust binary that runs VMs with QEMU on Apple's hypervisor and serves them to agents over MCP.
- Instant VMs
- New VMs resume from a snapshot of a running desktop: about 1 s for Ubuntu, 4 s for Windows. Resetting a VM takes just as long.
- Checkpoints
- Save a running VM's disk and memory before a risky step, then return to that exact state in seconds.
- Real desktops
- Windows 11 (ARM) and Ubuntu with XFCE, each with a desktop-control server (cua-driver) that agents drive with clicks and keystrokes.
- One MCP server
- Agents create, drive, screenshot and delete VMs on their own. Works with any MCP client;
agentpc mcp-installsets up the popular ones. - Shell and screen
- PowerShell or bash over SSH. Screenshots come straight from the hypervisor in about 40 ms, even while a guest is booting or hung.
- Files and ports
- Copy files and folders between your Mac and a VM, and reach a server running inside a VM from your Mac.
- Watch along
- Every VM has a browser viewer, so you can watch what the agent is doing, live.
- Local and private
- Everything runs on your Mac and listens on
127.0.0.1only. Offline VMs can't reach the internet or your Mac.
How an agent works in a VM
The same loop a person uses: look at the screen, act, look again to check the result.
-
Look
A hypervisor screenshot, or the UI tree with numbered elements.
take_screenshotget_window_state -
Act
Click, type and launch apps, or run a shell command when that's quicker.
use_desktop_toolrun_command -
Verify, then reset
Check the result, save a checkpoint, or reset to a clean install for the next run.
checkpoint_vmreset_vm
Works with your agent
The installer registers agentpc with every supported agent it finds. You can also add it yourself.
- Claude Code
- Claude Desktop
- Codex
- Cursor
- Gemini CLI
- VS Code
- Any MCP client
$ agentpc mcp-install
$ agentpc mcp-install claude claude-desktop codex # or pick clients
Restart Claude Desktop after registering. agentpc mcp-uninstall removes it again.
/plugin marketplace add pawanpaudel93/agentpc
/plugin install agentpc@agentpc
Bundles the MCP server with a skill that teaches Claude when and how to use the VMs. Install the agentpc binary first.
{
"mcpServers": {
"agentpc": { "command": "agentpc", "args": ["mcp"] }
}
}
One stdio server handles every VM. See the MCP docs for the tools.
Two desktops, any version
Every VM is a copy-on-write clone of a read-only image, so it starts from a clean install and costs only a few MB.
ubuntu · ubuntu-22.04 · ubuntu-26.04
Ubuntu
XFCE on X11 with Google Chrome for the browser tools. The image downloads on first use (~1.2 GB).
$ agentpc create ubuntu
windows · windows-11-24h2 · windows-11-23h2
Windows 11 ARM
Built once on your Mac from Microsoft's official ISO, since Windows images can't be redistributed. Includes Edge.
$ agentpc image build windows # once, ~12 min
$ agentpc create windows
Documentation
MCP
All 20 tools agents use to create, drive and reset VMs, plus how to set up each client.
CLI
Manage VMs and images yourself: create, checkpoint, ssh, copy files and forward ports.