One API to drive any Mac — built for AI agents

Your agent sees the screen, moves the mouse, types and runs builds. You grant the permissions, and you confirm anything irreversible.

Video coming soon

Your Mac under agent control in ten minutes

Install the app

Dyrra Agent lives in the menu bar — no window, no Dock icon.

Grant permissions

Screen and input are pre-selected. Terminal and files stay off unless you turn them on.

Hand your agent the key

Copy the ready MCP config from the console. Claude Code and other agents pick it up as is.

{
  "mcpServers": {
    "dyrra": {
      "command": "npx",
      "args": ["-y", "@dyrra/mcp"],
      "env": {
        "DYRRA_API_KEY": "dk_live_…",
        "DYRRA_TARGET": "con_…"
      }
    }
  }
}

We assume the agent will get it wrong

Every dangerous step is a decision a person makes, not a step an agent takes on its own.

You grant the rights, not the platform

The app enforces them locally and refuses anything out of scope — even if our server is compromised.

Irreversible actions need your OK

Sending mail, paying, deleting, answering another app's dialog. Click or keyboard shortcut — what matters is the consequence, not the method.

The agent can't approve on its own behalf

The confirmation window is missing from screenshots and from the screen tree, and clicks into it are refused.

Hidden apps

Pick your bank, your messenger, your mail — the agent never sees them, in screenshots or anywhere else.

Nothing extra on our servers

Screenshots and command output pass through and are never stored. The log keeps the fact of an action, not its content.

Stop with one shortcut

⌃⌥⌘P pauses the agent instantly.

What the agent can do

Sees the screen

A screenshot when you need pixels, a structured window tree when you need coordinates. The tree is cheaper and far more precise than guessing from an image.

Controls the Mac

Mouse, keyboard, apps, links. Types any language and emoji.

Runs the terminal

A separate permission. Off until you turn it on.

Touches only chosen folders

File access is limited to folders you pick yourself.

Waits for wake-up

Commands queue while the Mac sleeps and run when you are back, with your approval.

Works out of the box

MCP server, TypeScript SDK, plain REST.

Need a Mac you don't have

Every machine comes with Xcode and developer tools already installed, plus the API and MCP ready to use — the first build starts immediately.

MachinePer monthWhat you get
Mac mini M4$18916 GB / 256 GB · ready 5 minutes after payment
Mac mini M4 Pro$38564 GB / 1 TB · ready 5 minutes after payment
Mac Studio M1 Max$34964 GB / 2 TB · delivery date confirmed within one business day
Mac Studio M2 Max$35764 GB / 1 TB · delivery date confirmed within one business day
Mac Studio M2 Ultra$51764 GB / 2 TB · delivery date confirmed within one business day
Mac Studio M4 Max$41364 GB / 1 TB · delivery date confirmed within one business day
M1 Ultra · M3 Ultra · Mac ProOn requestTell us what you need and we will price it
Mac Studio M5 Max · M5 UltraComing soonShipping since 22 September 2026, not at providers yet

Daily and weekly terms too — a day is a month ÷ 20. For software development and testing only: that is the macOS license, not our rule. Minimum lease is 24 hours.

Your users, their own Macs

Send your user a link — they connect their Mac themselves and decide what to allow. You get a connection id, one API and webhooks for connected, ready and revoked. See the docs.

Pricing

Your own Macs

Free for up to 10 active Macs per month. Beyond that: packages of 50, 200 or 1000.

Cloud Macs

Per machine, per term — see the table above.

Questions people ask first

What happens to my data?
Screenshots and command output pass through our server and are not stored. Tokens never appear in logs.
Will Dyrra wake a sleeping Mac?
No. Remote wake is not reliable, so we do not promise it. Commands queue instead and run when you are back.
Can I scrape sites or solve captchas?
No. Dyrra is for development and testing.
Which macOS?
macOS 14 and newer.
What if the agent breaks something?
Pause instantly with ⌃⌥⌘P and revoke the connection in the console. Every action is in the activity log.