cd /news/ai-agents/give-your-ai-agent-hands-android-aut… · home topics ai-agents article
[ARTICLE · art-126819] src=dev.to ↗ pub= topic=ai-agents verified=true sentiment=↑ positive

Give Your AI Agent Hands: Android Automation via MCP

A developer has released app-automating, an open-source MCP server that gives AI agents direct control over Android emulators and physical devices. The project exposes 28 tools across three modules — device lifecycle, screen interaction via Appium and uiautomator2, and a persistent navigation memory backed by SQLite — positioning itself as a capability layer rather than a testing framework. Its navigation memory is described as the piece that distinguishes it from existing adb wrappers, which the developer says give a model hands but no memory.

by read2 min views4 publishedSep 11, 2026

🔗 github.com/dkmostafa/app-automating app-automating is an open-source MCP server that gives an AI agent real

control over Android — emulators and physical devices alike.

It does three things:

That third one is the part that doesn't exist elsewhere. Most tooling in this

space is a thin wrapper over adb — it gives a model hands but no memory, so

every session starts from zero.

28 tools, three modules: android_ (10) for the device lifecycle,

appium_ (13) for the screen, navigation_memory_ (5) for the map. It's deliberately not a testing framework. It's a capability layer — the

agent decides what the job is.

You want to The agent does
Test an app Boots a clean emulator, installs the build, walks the flows, screenshots what broke
Scrape a mobile-only app Navigates to the data, reads the view hierarchy, pages through results
Reproduce a bug Replays a recorded route to the exact screen, every time
Explore an unfamiliar app Maps the screens it finds and builds a navigation graph as it goes
Automate a repetitive chore Anything you'd otherwise do by hand, thirty times

If the task involves an Android screen and you'd rather describe it than script it, this is the layer underneath.

Pure Python at the core — the server itself is a remote control for other

people's tools, and it stays out of their way.

Layer Stack
MCP server FastMCP over STDIO — no sockets, deliberately
Device control Appium + the uiautomator2 driver
Emulator control The Android SDK directly: adb ,emulator ,avdmanager ,sdkmanager
Navigation memory SQLAlchemy + aiosqlite — one local SQLite file, no service to run
Schemas & config Pydantic v2 + pydantic-settings
Tooling Python 3.12+, uv ,pytest ,ruff

Under that, the codebase is four-layer Clean Architecture — one vertical slice

per module, dependencies pointing inward, and an architecture test in every

module that walks the AST and fails the build on a layer violation. More on that later in the post.

── more in #ai-agents 4 stories · sorted by recency
── more on @app-automating 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/give-your-ai-agent-h…] indexed:0 read:2min 2026-09-11 ·