adb-mcp and uiautomator2-mcp-server
Both tools are MCP (Model Context Protocol) servers designed for interacting with Android devices, but they differ in their underlying automation technology: `adb-mcp` utilizes ADB directly, while `uiautomator2-mcp-server` leverages the uiautomator2 framework, making them **competitors** in the choice of Android automation backend.
About adb-mcp
srmorete/adb-mcp
An MCP (Model Context Protocol) server for interacting with Android devices through ADB in TypeScript.
Exposes comprehensive Android device control through stdio-based MCP tools including app installation, logcat filtering, file transfer, shell execution, and UI inspection via screenshot/XML hierarchy dumps. Designed as a Claude Desktop integration that bridges AI models with local ADB commands, supporting Android 8.0+ devices and emulators with configurable ADB paths. Provides both high-level operations (APK deployment, permission management) and low-level access (custom shell commands, activity/package manager control).
About uiautomator2-mcp-server
tanbro/uiautomator2-mcp-server
A MCP (Model Context Protocol) server that provides tools for controlling and interacting with Android devices using uiautomator2.
Exposes 70+ tools for device automation (screenshots, gestures, app management, text input) via MCP protocol, with XPath-based UI element filtering to reduce token usage and tool selection controls to minimize AI hallucinations. Implements a stdio/HTTP dual-transport architecture that bridges AI assistants with Android devices through uiautomator2 and ADB, enabling conversational automation without coding. Integrates with MCP-compatible clients (Claude Desktop, Cursor) for natural language device control and includes a built-in AI-driven testing framework for UI validation.
Related comparisons
Scores updated daily from GitHub, PyPI, and npm data. How scores work