android-mcp
Let Claude, or any MCP assistant, see an Android
phone's screen and use it, over plain adb. No app to install on the phone, no root.
Laisser Claude voir l'écran d'un téléphone Android et s'en servir, par adb, sans rien installer sur le téléphone.
What it is good for:
- Testing your own app like a user would: "open my app, create an account, tell me
where it breaks", then read the crash in
logcat. - Repetitive phone chores: "go through my notifications settings and turn off every shopping app".
- Accessibility: describing a screen and acting on it by voice through the assistant.
How it sees the screen
screen_elements turns the phone's accessibility tree into a short list: every visible
text and every touchable element, with its centre, type, id and state (checked, disabled,
editable...). The assistant then taps by name with tap_element("Wi-Fi"). That is
cheaper and much more reliable than guessing coordinates on a screenshot; screenshot
is there for layout, images and games.
Tools
| Tool | |
|---|---|
devices |
Phones and emulators adb can see |
screen_elements, screenshot, current_app |
Read the screen |
tap_element, tap, swipe, type_text, press_key |
Act on it |
list_apps, launch_app, install_apk |
Apps |
logcat |
Recent log, per app, errors only if wanted |
There is deliberately no free shell tool: every action is named and bounded, and the server's instructions ask the assistant to check with you before sending messages, paying or deleting anything.
Install
- On the phone: Settings > About > tap Build number 7 times, then Developer options > USB debugging (or Wireless debugging). Plug it in and accept the prompt.
- On the computer, with platform-tools
installed (
adb devicesshould list the phone):
With uv installed, nothing else is needed:
claude mcp add android -- uvx android-mcp-lite
Or with pip: pip install android-mcp-lite, then claude mcp add android -- android-mcp.
With several devices, pass serial (from devices) to each tool. Set ADB if adb is
not on the PATH or in ~/Android/Sdk/platform-tools.
Status
Version 0.1, tested on an Android 14 emulator: reading the screen, screenshots, launching
apps, tapping by name, scrolling, typing and keys. install_apk and logcat are written
but not yet exercised on a device.
- Screen as a list of elements, tap by name
- Retries while the screen is still animating
- Unicode typing (accents, emoji) through a clipboard helper
- Wait for an element to appear
- Record a session and replay it as a test
- Notifications: read and act on them
License
MIT
Metadata
Release files for android-mcp-lite 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| android_mcp_lite-0.1.2.tar.gz | 9.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| android_mcp_lite-0.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 18.5 kB
Release files / android_mcp_lite-0.1.2.tar.gz
| Download URL | android_mcp_lite-0.1.2.tar.gz |
|---|---|
| Size | 9.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d61a660c9b1826287d2f60745e5189a70f2c23615700d7a121bfc9b3e8b5b560
|
|
BLAKE2b-256 checksum How to use checksums |
cd2e9218a101a04a9b905bf5f5c1a2c6580e90febf91f980c8ec57e5f478040d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.5.9
|
Release files / android_mcp_lite-0.1.2-py3-none-any.whl
| Download URL | android_mcp_lite-0.1.2-py3-none-any.whl |
|---|---|
| Size | 8.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ad04b119ad2b4973aa6732c81473c23ced05b7e7265a076163a2321a28f702da
|
|
BLAKE2b-256 checksum How to use checksums |
377d3f86aa00015f17d7fbd223be1794d5e55595195f443e505174a8e51d7553
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.5.9
|