Computers for
AI agents.
Persistent cloud desktops your agents can see, control, and operate. Real machines with a real screen — not headless browsers.
A full Linux desktop, ready when your agent is.
statement_July.pdf · Downloaded ✓
statement_May.pdf statement_June.pdf
statement_July.pdf
$ █
An illustration of an agent session, not a live computer.
Why a real computer
Your agent works the way people do —
give it the machine people use.
Give your workflow a browser, desktop applications, shell access, and persistent files in one environment. A Mandala computer is a genuine virtual machine with a graphical desktop, isolated down to the hypervisor.
Full Linux machines with a graphical session — browse, install, edit files, run anything.
A live view of the screen, embeddable in your own product with a single tag — view-only or interactive.
Prebuilt Linux images, including Hermes with its agent installed. Choose your model provider and sign in to start using the agent.
Create, start, resize, and snapshot programmatically. Connect your agent through the API, SDKs, or MCP.
Take point-in-time copies on demand, or enable a daily snapshot schedule for each computer. Restore a saved snapshot when you need to recover.
Hardware virtualization per computer, its own network policy, its own credentials. Not a shared container.
Every paid plan includes workspaces. Partition computers by project or customer, with API keys scoped to exactly one workspace.
Files, logins, and installed software are still there tomorrow. Stop a computer, start it next week, pick up where the agent left off.
The API
A desktop your code can drive.
- Python and TypeScript SDKs — create a persistent computer, or use an ephemeral one that cleans itself up when your code finishes.
- An MCP server — point Claude Code or Claude Desktop at a real desktop and skip the code entirely.
- Screenshot, click, type, key — the verbs computer-use models expect.
- Exec on the desktop — run commands inside the graphical session, not just a shell.
You'll need a paid plan and an API key from Settings → API keys. Replace YOUR_API_KEY below with your key.
Python
Install · Python 3.10+
python3 -m pip install mandala-computer
export MANDALA_API_KEY="YOUR_API_KEY"
Save as example.py
from pathlib import Path
from mandala_computer import Client
client = Client()
c = client.computers.create(template="base")
print(c.id) # find it in your dashboard
c.wait_for_guest()
c.open("https://example.com")
Path("screen.png").write_bytes(c.screenshot())
Run python3 example.py in the same terminal. The screenshot is saved locally; the computer stays in your account. Python guide →
TypeScript
Install · Node.js 22+
npm install mandala-computer
export MANDALA_API_KEY="YOUR_API_KEY"
Save as example.mjs · runs directly in Node.js
import { writeFile } from 'node:fs/promises';
import { Client } from 'mandala-computer';
const client = new Client();
const c = await client.computers.create({
template: 'base',
});
console.log(c.id); // find it in your dashboard
await c.waitForGuest();
await c.open('https://example.com');
await writeFile('screen.png', await c.screenshot());
Run node example.mjs in the same terminal. The SDK includes TypeScript types; this example also runs as JavaScript. The computer stays in your account. TypeScript guide →
MCP
Claude Code · Node.js 20.3+
claude mcp add mandala \
-e MANDALA_API_KEY="YOUR_API_KEY" \
-- npx -y mandala-computer-mcp
Run this in your terminal, then start a new Claude Code session in the same project and ask:
Create a computer from the base template, open example.com, and show me a screenshot.
MCP connects your existing agent to Mandala's desktop tools. The computer stays in your account. Claude Desktop and other MCP clients →
An illustration of an embedded session, not a live computer.
The live view
Show your users what their agent is doing.
Trust is watching the work happen. Drop the live screen into your own product with one tag — view-only for an audience, interactive when a human needs to take over.
<script
src="https://app.mandala.computer/embed/desktop.js">
</script>
<com-desktop
src="YOUR_EMBED_URL"
style="height: 400px">
</com-desktop>
Replace YOUR_EMBED_URL with vnc.embed_url from your server's create-computer or get-computer response. This URL is watch-only. For interactive control, use the computer and token attributes with the computer's ID and vnc.token. Your account API key stays on your server.
Pricing
A pool of resources. Split it your way.
Every plan is a pool of vCPU, memory, and storage. Divide it across computers within your plan’s per-computer limits.
Solo
Best for solo builders, personal agents
- Up to 4 computers
- 4 vCPU · 8 GB RAM · 80 GB storage pool
- Scheduled snapshots: 7 days of history
- Full API, SDKs, and MCP server
Studio · Popular
Best for small teams and agencies
- Up to 16 computers · 5 seats
- 16 vCPU · 32 GB RAM · 320 GB storage pool
- Scheduled snapshots: 7 days + 4 weeks
- Workspaces & scoped keys
Fleet
Best for production teams at scale
- Up to 32 computers · 25 seats
- 64 vCPU · 128 GB RAM · 640 GB storage pool
- Scheduled snapshots: 7 days + 4 weeks + 12 months
- 4 never-suspend computers · 20 template builds a day
Enable a daily snapshot schedule for each computer; schedules are not enabled by default. History is kept within your plan’s retention and snapshot-storage limits.