shapeyourphone
Enables AI agents to manage and customize an Android phone over adb, including scanning and debloating apps, tightening privacy and settings, installing/configuring a custom launcher, applying app time rules and pause screens, and undoing or restoring every change.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
shapeyourphone
Your Android phone, shaped by an AI agent. Not a custom ROM, and no root needed. It runs on the Android you already have, over adb, and every change can be undone.
You tell your agent (Claude Code, Claude Desktop, Codex, Gemini CLI…) how you want your phone. It cleans out bloat, tightens privacy, tunes settings, and designs your home screen. It remembers what you asked for, so the next request builds on the last one instead of starting over.
Status: v0.1. Every CI run drives the real CLI over adb against Android 8, 11, 14 and 16 emulators: debloat, undo, install the launcher, time rules, the pause screen, full restore. It has not been tested on physical phones yet, and phone makers' Android versions differ, so device reports are very welcome.
Default | Minimal text | Wallpaper + evening rule | Drawer |
|
|
|
|
Get started
1. Turn on USB debugging. Settings → About phone → tap Build number 7
times → Developer options → USB debugging. Plug the phone in and tap Allow.
You also need adb (brew install android-platform-tools,
winget install Google.PlatformTools, or apt install adb) and Python 3.9+.
2. Pick how you want to talk to it.
You use | Do this |
Claude Code, Codex, Gemini CLI |
|
Claude Desktop or another MCP app |
|
Just a terminal |
|
MCP config (Claude Desktop → Settings → Developer → Edit Config):
{"mcpServers": {"shapeyourphone": {"command": "shape-mcp"}}}Every tool that changes the phone returns a preview first, and only acts when
called again with owner_approved: true.
Related MCP server: mcp-android
What a session looks like
you: my phone is full of junk and I waste too much time on Instagram
agent: shape scan → 14 preinstalled apps you can switch off (Meta App Manager,
Samsung TV Plus, …), nothing you use. Here's the plan. OK?
you: yes, but keep Samsung Notes
agent: shape keep com.samsung.android.app.notes · shape apply … --yes ✓ 13 done
Want a calmer home screen? I can hide Instagram on weekdays 9–18 and
show a 10-second pause before it opens the rest of the time.
you: do it
agent: shape launcher hide Instagram --days weekdays --from 09:00 --to 18:00 --yes
shape launcher pause Instagram --seconds 10 --yes ✓
(noted in your preferences, so next time I remember)What it does
Cleanup and privacy
initsaves a full backup before anything changes.scanandplanuse tiered bloat lists (safe / recommended / optional) for Google, Meta, Samsung, Xiaomi, OPPO/OnePlus/realme, vivo, Motorola and carriers. Each entry says in plain words what you'd lose.privacyshows who can use your camera, mic, location and contacts, plus accessibility services, notification readers and device admins.tweakcovers animations, dark mode, font size, screen timeout, ad-blocking Private DNS, per-app notifications and background limits.
A home screen that rebuilds itself to your taste (config reference)
A tiny launcher with no dependencies. Everything about it comes from one JSON config: theme, widgets (clock, apps, search, next calendar event), dock, drawer and gestures.
Changes by name, live, with no reinstall:
shape launcher hide Instagram --from 22:00 --to 07:00,shape launcher dock Phone WhatsApp Camera,shape launcher theme --icons mono. Every version is kept, solauncher rollbackalways works.Time rules ("work mode 9–18"), search-only apps, and a pause screen before distracting apps that never opens them by itself.
The launcher only accepts commands from adb, so other apps on the phone can't change it.
Memory, safety and new phones
preferences.mdper phone is your wishes in plain words. The agent reads it before every session and keeps it current. It stays on your computer and is never committed.It never touches core Android, telephony, the stock launcher (which also provides recents and gestures), or packages known to bootloop. It also protects whatever this phone depends on: its keyboard, WebView provider, camera, dialer and SMS apps, accessibility tools, device admins, and anything you said to keep.
Every change is checked on the phone and logged with its undo. Use
undo <id>,restorefor everything, or the generatedrestore.sh/restore.ps1, which need no Python.driftandreapplycatch changes a system update quietly reverted.clone --from <old phone>sets a new phone up the same way.suggestreads real usage, with your permission, and proposes what to put in reach, pause or hide. It only suggests.
What it can't do (without root)
It can't change the status bar, quick settings or lock screen, and it can't remove Google Play services. On Fire OS and some phone makers' Android versions, a third-party launcher can't become the home screen.
Layout
shape/ Python toolkit + MCP server (stdlib only) PROMPT.md the agent's playbook
shape/data/ bloat lists, protected packages docs/ launcher config reference
launcher/ Android launcher (Kotlin, no deps) config/ default + example home screens
tests/ fake-phone tests, emulator e2e, vectors scripts/ release signing setupDeveloping
Python:
python3 -m unittest discover -s tests -t testsLauncher:
cd launcher && ./gradlew testDebugUnitTest assembleDebug(JDK 17+ and the Android SDK)Releases: run
scripts/make-release-key.shonce, thengit tag v0.1.0 && git push origin v0.1.0. CI builds a signedshape-launcher.apk, andshape launcher installdownloads it.
See CONTRIBUTING · SECURITY · CHANGELOG. Inspired by cleanyourtv. MIT licensed.
This server cannot be deployed
Maintenance
Related MCP Connectors
Cloud Android phones for AI agents: create a phone, read the screen, tap, type, install APKs, park.
Melaya is a remote MCP server. It gives an assistant hands on your own Android phone and browser: it reads the screen through the accessibility tree, then taps, types and navigates inside the apps and sites you allow-list, with no per-app API. It also builds, schedules and runs agent pipelines across 6k+ connected tools. OAuth 2.1, nothing to install.
Give your AI agent a real cloud Android phone: push APKs, drive it, get screenshots and logs.
Let AI agents control Android and iOS devices on Mobilerun Cloud: screen, input, apps, workflows.
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables AI agents to control Android devices via ADB, supporting gestures, input, screenshots, UI analysis, and app management.1913 npmISC
- FlicenseBqualityAmaintenanceEnables an AI agent to control an Android phone over a private Tailscale network via accessibility UI automation, screenshots, gestures, notifications, clipboard, intents, SAF file access, and optional Termux/Shizuku shells without root or ADB.65-
- AlicenseAqualityAmaintenanceEnables AI agents to see and drive a real Android phone over plain ADB: screenshots and numbered UI trees, gestures, typing with accents and emoji, SMS/RCS reading and prepared replies, notifications, files, and settings, with no root and no app installed on the phone. Safeguards mask security codes and require explicit confirmation before sending, paying, deleting or confirming anything.182MIT
- AlicenseAqualityBmaintenanceLets an AI assistant look after Android TV boxes, phones and watches over ADB: find devices on the network, see the screen, tap and type, install apps. Package changes are dry-run first, with a protected set read off the device and one-call rollback.18123 npmMIT



