What ERIUS PHONE does
The ERIUS PHONE MCP server lets an MCP-compatible agent control Android phones or tablets assigned to an ERIUS PHONE account. It provides device discovery, screen inspection, touch and keyboard input, application control, APK management, and crash-log access through native MCP tools.
The ERIUS PHONE MCP server is intended for direct device operation rather than test glue code. An agent can identify an available device, inspect its current interface, interact with visible controls, open an application or URL, and collect diagnostic information when an app fails.
How it works
The package runs as an MCP process using stdio. The client starts the process and supplies configuration through its environment. Each request is authenticated with ERIUS_PHONE_API_KEY and limited to devices available to that account.
Tools accept an optional device identifier. When omitted, the server uses ERIUS_PHONE_DEFAULT_DEVICE; otherwise, the agent can select a device explicitly after calling list_devices. Device status includes information such as Android version, screen dimensions, boot state, and foreground application.
Screen inspection can return either an accessibility tree or an image. Accessibility snapshots expose visible text, roles, and temporary references that can be used for later actions. Screenshot output supports image settings such as format, quality, maximum side length, and scale. Snapshot references must be refreshed because they reset after each snapshot.
Setup and configuration
Python 3.10 or newer is required, along with an ERIUS PHONE API key. Access is requested through the ERIUS PHONE website, and early-access accounts receive their key and device identifiers directly from the team.
The package can be launched with uvx erius-phone-mcp, or installed into a dedicated virtual environment with pip. For pip installations, client configuration should use the executable's absolute path because desktop applications may not inherit the shell's PATH.
Required and optional environment variables are:
ERIUS_PHONE_API_KEY: authenticates every request.
ERIUS_PHONE_DEFAULT_DEVICE: selects the fallback device.
ERIUS_PHONE_API_URL: overrides the default API base URL.
ERIUS_PHONE_TIMEOUT: sets the per-request HTTP timeout in seconds.
Put these values in the MCP client's env block. Exporting them only in a shell may not make them available to a client-launched subprocess. Treat the API key as a password because it allows control of the associated devices.
Tools and capabilities
- Check account access and available devices with
whoami, list_devices, and get_device.
- Inspect the interface with
snapshot, screenshot, foreground, and wait_for_text.
- Interact with controls using
tap, long_press, type_text, press_key, swipe, and scroll.
- Manage applications with
launch_app, open_url, send_intent, stop_app, and list_apps.
- Install or remove packages with
install_apk and uninstall_app.
- Investigate application failures with
get_crash_log, which reads the crash buffer.
Limitations and notes
The package is pre-1.0, currently version 0.2.0, so tool names and arguments may change. It requires access to an ERIUS PHONE account and assigned device; it is not described as a local USB or emulator-control server. APK installation uploads a file from the machine running the MCP process. The default API endpoint is https://api.eriusphone.com, and the documented request timeout default is 30 seconds.