Put your iPhone on your Mac. Hand it to Codex and Claude Code.

Mirror a real iPhone over USB or Wi-Fi at 60 fps. Connect Codex or Claude Code in one click so the live screen opens beside your chat, ready to read, tap, and verify.

v0.8.5 · macOS 15+ · iPhone, iPad & Android 11+ · Local Vision OCR & MCP

Stays live when you
open the camera or switch apps.

USB and Wi-Fi share the same signed iPhone screen agent and H.264/SRT video pipeline. Prepare the agent once over USB; video needs no Camera permission, and device proportions match iPhone and iPad hardware frames.

Direct touch & trackpad

Click, drag, long-press, and type from your Mac. On iOS 27+ and simulators, trackpad scroll momentum, pinch, and rotation stream straight to the device.

Standalone window

Pop out a borderless, device-ratio mirror window that stays beside your editor for debugging, screen recording, or live demos.

Multiple devices

Mirror and control one phone for free without signing in. Sign in with an iTool yearly membership (¥99/year) to run several phones side by side.

Android 11+ over ADB

Turn on USB debugging to bring Android video and audio in via scrcpy, control screens through UiAutomator2, and use the same MCP tools.

Set up once over USB.
Continue over Wi-Fi.

The built-in four-step guide checks the phone, your Apple development account, and the signed screen agent. After the initial USB setup, unplug the cable and mirror at full H.264 resolution across your local network.

Four-step assistant for initial USB pairing
One-click MCP setup for Codex and Claude Code
LANSame-network mirror
SRTComplete access units
H.264VideoToolbox codec

Mirroring and control stay separate. Viewing a screen never installs or starts the control path behind your back.

Your phone, inside Codex
and Claude Code.

One click to connect. The live screen sits beside the chat.

In Settings → MCP Automation, Connect Codex and Connect Claude Code each install the plugin and MCP tools together. Start a new session, and your agent can watch, tap, type and verify on the real device.

Codex
New chat · StupidMirror
Check the General settings row and open About

Live WebRTC stream open in chat

Live
1

The phone panel lives in your chat.

Encrypted local WebRTC brings the screen into Codex. Switch devices, take manual control, or freeze a frame and send numbered annotations with Command-Enter.

  • Live video in the conversation
  • Manual control and device switching
  • Annotated screenshots to the agent
Codex setup guide
Claude Code
Code · Browser
Find the Settings icon on the Home Screen and open it

Vision OCR matched 24 targets on screen

127.0.0.1 · viewer
14

The phone opens beside the conversation.

In the Claude desktop app, Claude opens the live viewer in the Browser pane the first time it works with a device. No link to copy, no window to arrange. In the terminal, ask for the viewer link.

  • Opens in the Browser pane by itself
  • Same video, device picker and manual control
  • Works in local sessions, gateway setups included
Claude Code setup guide

Video stays on this Mac. Screenshots your AI requests and annotations you send follow your AI client’s data settings. Other MCP clients connect with the generated configuration.

Local Vision OCR
meets iOS Accessibility.

StupidMirror runs an MCP server bound to localhost. It embeds no model and asks for no model API key, giving the Codex or Claude Code setup you already use exact element coordinates on the real device.

MCP tools and other clients

Understand, then act

The latest frame, local Vision OCR, and iOS Accessibility converge on the real target.

Every action is visible

Targets, taps, and swipe paths appear only on the Mac, ready for review or takeover.

Built for real interfaces

System Settings, the App Store, dense feeds, and custom canvases all yield semantic targets.

Recognition stays local.
Control stays with you.

OCR runs on demand on your Mac. Action overlays never go back to the iPhone or into the video stream. StupidMirror embeds no model, needs no model API key, and never uploads the screen to a model service on its own.

127.0.0.1 MCP
Listens on this Mac only with bearer token authentication.
On-demand Vision OCR
Runs locally on Apple Silicon outside the 60 fps capture path.
Mac-only overlays
Target boxes and tap trails render on the Mac window, never on the phone.

Common questions.

Does StupidMirror work without a cable?

Yes. Run Set Up This iPhone once over USB, then keep the iPhone and the Mac on the same network and mirror it over Wi-Fi. Wireless audio is not available.

When are Camera and Microphone permissions needed?

iPhone video over USB or Wi-Fi needs neither permission. For a USB iPhone, choose Phone to keep sound on the device, or Mac to play it on this computer. Mac audio requires Camera and Microphone permissions for the USB audio source.

Does it support Android?

Yes. Android 11 or newer over ADB with USB debugging enabled. Video and device audio come from scrcpy, and control uses Appium with UiAutomator2.

Which AI agents can use it?

Codex and Claude Code, each through a bundled plugin you connect with one click. Codex shows the live phone screen inside the chat, and the Claude desktop app opens it in the Browser pane beside the conversation. Other MCP clients use the local MCP server. StupidMirror needs no model API key.

Does the screen or my data go through a cloud service?

No. The Codex panel streams over encrypted local WebRTC and the Claude viewer is a page served from this Mac, neither through a cloud relay. The MCP server listens on this Mac only, and text recognition runs locally with Apple Vision.

Is StupidMirror free?

One device can be mirrored and controlled without signing in. Several devices at once are included in the iTool yearly membership (¥99/year, all iTool products); sign in to unlock them. The source is available under PolyForm Noncommercial, and commercial use needs separate authorization.

What do I need to run it?

A Mac with macOS 15 or newer and Xcode for iPhone or iOS Simulator support. Real iPhones need trust and Developer Mode. Both USB and Wi-Fi iPhone video require a signed screen agent prepared through Set Up This iPhone over USB; accessibility automation and compatibility control use that agent too.

Put a real iPhone
on your Mac.

macOS 15+ · Free for personal and noncommercial use · Commercial license required

Enlarged product screenshot