How to give Claude Code an Android phone: USB and ADB, an emulator, or a cloud phone.

The four options

Ways to give Claude Code an Android phone, compared
NeedsClaude Code seesWorks in CI and sandboxesCost
USB phone + ADBA phone, a cable, USB debugging, platform-toolsScreenshots and UI dumps it parses itselfNoFree
ADB + scrcpyThe same, plus scrcpyThe same; scrcpy is for you to watchNoFree
Local emulatorAndroid Studio, a system image, hardware accelerationScreenshots and UI dumps through adbRarely: needs nested virtualizationFree; uses your RAM and CPU
Cloud phone over MCP (Phonebox)One command and an API keyA numbered list of on-screen elements, plus a screenshotYes$0.06/min while running, parked phones free

Option 1: a USB phone and ADB

  1. Turn on developer options. Open Settings, About phone, and tap Build number seven times. Then turn on USB debugging.
  2. Install platform-tools from developer.android.com, plug the phone in, accept the prompt, and check that adb devices lists it.
  3. Tell Claude Code to use adb. It can run adb install, adb shell input tap x y, adb shell input text and adb exec-out screencap -p in its terminal.

It works, and it's free. The limits show up quickly. Claude Code has to work out tap coordinates from screenshots, the phone has to stay plugged into the machine Claude Code runs on, and a dropped connection or a locked screen stops the run. ADB-based MCP servers wrap the same commands in tools, with the same requirement of a device next to the agent.

Option 2: add scrcpy to watch

scrcpy mirrors the phone to a window on your desktop and lets you control it with your mouse. It doesn't give Claude Code anything new: the agent still acts through adb. It's useful for watching the agent and stepping in.

Option 3: a local emulator

An emulator from Android Studio avoids the cable and can be reset. It needs gigabytes of SDK and system images and hardware acceleration, and it competes with your IDE for memory. Most CI runners and cloud sandboxes can't run it, because they don't offer nested virtualization.

Option 4: a cloud phone through MCP

Phonebox runs Android phones in the cloud and gives Claude Code a hosted MCP server. Get a key with the setup prompt, then add the server:

Paste into your agent
Read https://phonebox.dev/setup.md and set me up with Phonebox from here: get me signed in and ready, then find out what I want to use phones for and help me with that.
Claude Code
claude mcp add --transport http phonebox https://phonebox.dev/mcp \
  --header "Authorization: Bearer $PHONEBOX_API_KEY"

Claude Code gets 13 tools. observe returns the screen as numbered elements with their labels, act taps and types by label, and install_app installs the APK it just built. live_view_url hands the phone to you for a one-time code, and park_phone stops billing while keeping the apps and sign-ins. Phonebox never retries a write action on its own, so a slow response can't become a double tap.

What the agent reads
snapshot snp_4f2k7m3q6z3a
app com.android.launcher3
keyboard hidden
screen 1080x2400
[1] EditText "Search apps" #search clickable editable (540,250)
[2] TextView "Chrome" #icon clickable (200,1900)
[3] TextView "Settings" #icon clickable (500,1900)
[4] TextView "Play Store" #icon clickable (800,1900)

Which to choose

  • USB and ADB if a spare phone sits on your desk and Claude Code runs on that machine.
  • A local emulator for repeatable tests on a workstation that can run one well.
  • A cloud phone when Claude Code runs remotely, in CI or in a sandbox, when the phone has to stay signed in between sessions, or when you'd rather not set anything up.

Watch it in practice: the 56-second demo and the 3-minute setup video. See also Android MCP server.

Questions

How can I give Claude Code an Android phone?

There are four ways. Plug in a phone with USB debugging and let Claude Code run adb commands. Add scrcpy to mirror the screen. Run an Android emulator on your machine. Or add a hosted Android MCP server such as Phonebox, which gives Claude Code a cloud Android phone with one command and nothing to install.

Can Claude Code use ADB?

Yes. Claude Code can run adb in its terminal to install APKs, take screenshots, tap coordinates and type text. It works best for fixed steps. The agent has to read screenshots or UI dumps and work out coordinates itself, and it needs the phone or emulator on the same machine.

Do I need a physical Android phone for Claude Code?

No. You can use a local emulator from Android Studio, or a cloud phone. A cloud phone also works where an emulator can't run, such as a CI runner, a cloud sandbox or a laptop without hardware acceleration.

What is the easiest way to give Claude Code an Android phone?

A hosted MCP server is the fewest steps: claude mcp add --transport http phonebox https://phonebox.dev/mcp with your API key. Claude Code gets 13 phone tools, reads the screen as labelled text and taps by label, and parks the phone when it's done. It costs $0.06 a minute while running, and new accounts get $2 of free credit.

Get started with Phonebox — $2 in free credit, no card required.

The Phonebox team

← All guides