A side-by-side look at the Droidsight and Expo Android MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Droidsight for os automation work as a local process; choose Expo Android MCP for os automation as a local process. You can also run both side by side in one mcpServers block.
DROIDSIGHT_DEVICE_SERIAL, DROIDSIGHT_ADB_PATH, DROIDSIGHT_LOCAL_ROOT, DROIDSIGHT_DEVICE_PIN, DROIDSIGHT_ALLOW_SHELL, DROIDSIGHT_DEBUG_LOG.mcp_android_vision_query, mcp_android_vision_stream, mcp_android_get_view_hierarchy.ADB_PATH, ADB_SERIAL, ADB_TIMEOUT_MS, ADB_MAX_BUFFER_MB, ADB_DEBUG, MCP_TRANSPORT, PORT.devices, doctor, setDevice.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | OS Automation | OS Automation |
| Quality signal | 56/100 · Good | 52/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | Not declared | Not declared |
| Pricing | Not declared | Not declared |
| Required env vars | DROIDSIGHT_DEVICE_SERIALDROIDSIGHT_ADB_PATHDROIDSIGHT_LOCAL_ROOTDROIDSIGHT_DEVICE_PINDROIDSIGHT_ALLOW_SHELLDROIDSIGHT_DEBUG_LOG | ADB_PATHADB_SERIALADB_TIMEOUT_MSADB_MAX_BUFFER_MBADB_DEBUGMCP_TRANSPORTPORT |
| Verified owner | Community listing | Community listing |
| GitHub stars | 4 | 4 |
| Directory activity | 1 views 0 installs 0 upvotes | 0 views 0 installs 0 upvotes |
| Tools | 31 | 17 |
| Full listing | View Droidsight | View Expo Android MCP |
mcp_android_vision_queryScreenshot, hierarchy, OCR, and element or template search. Its `elements` and `tap_element` actions avoid coordinate arithmetic entirely.mcp_android_vision_streamStart, stop, or read the background H.264 stream.mcp_android_get_view_hierarchyThe accessibility tree as structured JSON.mcp_android_smart_waitBlock until an element appears, or time out.mcp_android_input_actTap, type, key events, swipe, smart tap, and IME control.mcp_android_tap_textScan for text and tap it the instant it appears, retrying until timeout. Avoids the miss between a screenshot and a tap.mcp_android_run_flowRun a bounded, fully prevalidated sequence of safe actions.mcp_android_record_gestureRecord raw touch input for a fixed duration.mcp_android_play_gestureReplay a recorded gesture timeline.mcp_android_app_manageLaunch, stop, list, install, and read crash logs. Uninstall, clear data, permission, enable, and disable additionally require `confirm_destructive`.mcp_android_app_instrumentationDeep state inspection: activity, window, process list, stack traces.mcp_android_open_urlOpen a URL.deviceslist connected devices and emulators.doctorvalidate adb availability and show connected devices.setDeviceoverride the active device serial for this MCP process.inspectUI dump parsed into elements with a summary (screenshot optional).screenshotcapture a screenshot only (base64 or file path).findElementreturn elements that match search criteria.tapElementfind an element and tap its center.waitForElementwait until an element appears (optionally with state checks).assertElementverify element existence and state.taptap at x/y coordinates.swipeswipe between coordinates.longPresspress and hold at coordinates.Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"droidsight": {
"command": "npx",
"args": [
"-y",
"@edgecasehuman/droidsight"
],
"env": {
"DROIDSIGHT_DEVICE_SERIAL": "YOUR_DROIDSIGHT_DEVICE_SERIAL_HERE",
"DROIDSIGHT_ADB_PATH": "YOUR_DROIDSIGHT_ADB_PATH_HERE",
"DROIDSIGHT_LOCAL_ROOT": "YOUR_DROIDSIGHT_LOCAL_ROOT_HERE",
"DROIDSIGHT_DEVICE_PIN": "YOUR_DROIDSIGHT_DEVICE_PIN_HERE",
"DROIDSIGHT_ALLOW_SHELL": "YOUR_DROIDSIGHT_ALLOW_SHELL_HERE",
"DROIDSIGHT_DEBUG_LOG": "YOUR_DROIDSIGHT_DEBUG_LOG_HERE"
}
}
}
}
{
"mcpServers": {
"expo-android-mcp": {
"command": "npx",
"args": [
"-y",
"@fndchagas/expo-android"
],
"env": {
"ADB_PATH": "YOUR_ADB_PATH_HERE",
"ADB_SERIAL": "YOUR_ADB_SERIAL_HERE",
"ADB_TIMEOUT_MS": "YOUR_ADB_TIMEOUT_MS_HERE",
"ADB_MAX_BUFFER_MB": "YOUR_ADB_MAX_BUFFER_MB_HERE",
"ADB_DEBUG": "YOUR_ADB_DEBUG_HERE",
"MCP_TRANSPORT": "YOUR_MCP_TRANSPORT_HERE",
"PORT": "YOUR_PORT_HERE"
}
}
}
}