Mirroir MCP Server

Control a real iPhone through macOS iPhone Mirroring: screenshot, tap, swipe, type.

Local serverstdioGo

What is the Mirroir MCP server?

Connect Mirroir to Claude, Cursor or any other MCP client and it stops being a tab you switch to. Control a real iPhone through macOS iPhone Mirroring: screenshot, tap, swipe, type. The mirroir mcp server is what makes that connection.

What the server does

Give your AI eyes, hands, and a real iPhone. An MCP server that lets any AI agent see the screen, tap what it needs, and figure the rest out — through macOS iPhone Mirroring. Experimental support for macOS windows. 33 tools, any MCP client.

Available tools

The toolset is worth reading before you wire it up, because it tells you what the integration is really for:

  • chevron — >
  • dismiss — ×
  • back — <
  • Mode — ocrBackend setting
  • Both — "both"
  • app_name — required
  • goal — none
  • goals — none
  • max_depth — 6
  • max_screens — 30
  • max_time — 300
  • strategy — auto

Credentials and setup notes

Configuration is passed through the environment: OPENAI_API_KEY, ANTHROPIC_API_KEY. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.

Installation

The server ships on npm as mirroir-mcp, so your MCP client can launch it on demand — there is no separate build step. Add the server block to your client's configuration, restart it, and the tools register themselves.

Where it fits

Plenty of browser automation servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. Mirroir's toolset — chevron, dismiss, back and 11 more — is a fair guide to whether it matches your workflow. It is maintained by jfarcand; worth a glance at recent repository activity before you build anything load-bearing on it.

We check each listing at SyncDev against the project's documentation before it goes live — if something here drifts out of date, it is a bug worth reporting.

Worth knowing first

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • With 14 tools registered it takes up a noticeable share of the context window; turn it off in projects that never touch Mirroir.
  • Missing credentials fail quietly in some clients — if no tools show up, check the environment block first.
  • Keep per-call confirmation enabled while you learn its behaviour; it is the cheapest safeguard you have.

Available tools

ToolWhat it does
chevron>
dismiss×
back<
ModeocrBackend setting
Both"both"
app_namerequired
goalnone
goalsnone
max_depth6
max_screens30
max_time300
strategyauto
explorerbfs
skip_calibrationfalse

How to install the Mirroir MCP server

{
  "mcpServers": {
    "mirroir": {
      "command": "npx",
      "args": ["-y", "mirroir-mcp"],
      "env": {
        "OPENAI_API_KEY": "your-value",
        "ANTHROPIC_API_KEY": "your-value"
      }
    }
  }
}

Add to claude_desktop_config.json, then restart Claude Desktop.

Configuration

VariableDescriptionRequired
OPENAI_API_KEYCredential the server authenticates with.Yes
ANTHROPIC_API_KEYCredential the server authenticates with.Yes

Example prompts to try

  • Use Mirroir to chevron.
  • Use Mirroir to dismiss.
  • Use Mirroir to back.

Frequently asked questions

It connects Mirroir to MCP-compatible AI assistants such as Claude and Cursor, exposing 14 tools (chevron, dismiss, back, and more) that the assistant can call on your behalf. Instead of copying data back and forth by hand, the assistant works with Mirroir directly.