Termux MCP server for controlling Android phone from Claude Desktop. Provides tools for device info, location tracking, app management, UI automation, media control, communication, system control, file browsing and command execution.
Server has 8 tools with basic descriptions but significant quality gaps. Most tools have empty input schemas ({}), violating the requirement that every parameter needs a description. Tool descriptions are present but generic (avg ~80 chars, below the 194-char baseline). No output schemas documented. Error handling is minimal, tools return raw JSON or error strings without recovery guidance. No tool annotations (readOnlyHint/destructiveHint). The adb_connect tool accepts parameters but lacks descriptions for pair_code, pair_port, connect_port. get_location has parameters with descriptions, but others do not. No evidence of idempotency, permission gates, or audit trails.
Connect ADB to this device wirelessly. Required on Android 12+. Step 1: If pair_code and pair_port are given, pair first. Step 2: If connect_port is given (or after pairing), connect. Find these in: Settings → Developer Options → Wireless Debugging
Check if ADB is set up and connected. On Android 12+, ADB is required for screencap, input, uiautomator, am, etc. to work from Termux. If not connected, follow the instructions in the output to set up.
Get phone battery status including level, charging state, temperature, etc.
Get the phone's current GPS location.
Get detailed cellular network information.
Get telephony device info (carrier, phone type, SIM state, etc.).
Six of eight tools have empty input schemas ({}), violating the requirement that every parameter needs a description and type. Tools like get_battery_status, get_wifi_info, scan_wifi, get_telephony_info, get_telephony_cell_info, and adb_setup_status expose no schema at all.
adb_connect accepts three parameters (pair_code, pair_port, connect_port) but lacks descriptions for each. LLMs cannot infer parameter meaning from names alone.
No output schemas documented for any tool. LLMs need to know what fields to expect in responses to plan downstream calls and extract data. Responses are raw JSON strings without structure hints.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 46 | 2026-07-28+ | v2 |
Get current WiFi connection information (SSID, IP, signal strength, etc.).
Scan for nearby WiFi networks.
Error handling is minimal. Tools return raw error strings (e.g., 'Error: adb not found') without recovery guidance.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). adb_connect is marked WRITE but has no destructiveHint annotation. Per current spec (2026-07-28), tool annotations enable agents to reason about side effects and retry safety.