About BenchFleet
BenchFleet’s MCP server connects MCP clients to a self-hosted hub for controlling real Android phones. It provides permission-scoped device inspection and actions, with approvals for sensitive operations and an audit log.
Key features
- 01Inspect phone screens and UI elements
- 02Tap, type, launch and stop apps
- 03Run published workflows and queue tasks
- 04Scope access by phone and capability
- 05Require approvals and log actions
Use cases
- 01Inspect an app on a connected phone
- 02Automate an allowed device workflow
- 03Route sensitive actions for approval
MCP support
Exposes Android device and workflow tools to MCP clients, forwarding messages to the BenchFleet app on the same computer. Clients see only tools permitted by the configured access; the hub enforces approvals and logs actions.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
npx -y benchfleet-mcpBENCHFLEET_TOKENSecretThe token from BenchFleet: Settings → AI clients → Connect an AI clientLocal servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEbenchfleet-mcp
Let AI agents use your real Android phones, safely. benchfleet-mcp connects Claude Code, Codex, Cursor, Claude
Desktop and any other MCP client to BenchFleet, the
self-hosted control hub for real Android phones. The agent can list your phones, look at their screens, read the
elements on them, tap, type, open apps and run your published workflows — only on the phones and with the actions
you allow, with approvals for anything sensitive and every step in BenchFleet's audit log.
It is a thin connector: it forwards MCP messages to the BenchFleet app running on the same computer and reaches nothing else. The tools, the permissions and the phones are all in the app.
Set up
-
Install BenchFleet from https://benchfleet.com/download and connect your phones (or use its demo phones).
-
In BenchFleet: Settings → AI clients → Connect an AI client…, choose what the client may do (Look only, Look and operate, or chosen capabilities) and on which phones, and copy the token it shows once.
-
Add the server to your client:
Claude Code
claude mcp add benchfleet --env BENCHFLEET_TOKEN=<token> -- npx -y benchfleet-mcpCodex (
~/.codex/config.toml)[mcp_servers.benchfleet] command = "npx" args = ["-y", "benchfleet-mcp"] env = { BENCHFLEET_TOKEN = "<token>" }Claude Desktop, Cursor and other clients (
mcpServers){ "mcpServers": { "benchfleet": { "command": "npx", "args": ["-y", "benchfleet-mcp"], "env": { "BENCHFLEET_TOKEN": "<token>" } } } }
The app must be running. Disconnect in BenchFleet stops the token at once.
Tools
list_devices, get_device, get_screen, get_ui_tree, find_element, read_text, wait_for, tap_element,
long_press_element, type_text, type_secret (a password from BenchFleet's vault, never its value), swipe,
scroll_to, press_key, launch_app, stop_app, take_screenshot, get_device_logs, list_workflows,
run_workflow, queue_task (a workflow, or a goal in plain words for the phones' AI agents), get_task_status,
pause_device, resume_device, request_manual_control. A client sees only the tools its access allows. There is
no shell, file transfer or install tool. A phone a person is controlling, a paused phone and a phone without
Automation allowed refuse every action; CAPTCHAs and other human-only checks stop the agent and ask a person.
Settings
| Variable | Meaning |
|---|---|
BENCHFLEET_TOKEN | Required: the client's token from the app (CONTROLHUB_TOKEN also works) |
BENCHFLEET_URL | Optional: the app's address, when it is not found in its data folder |
CONTROLHUB_HOME | Optional: the app's data folder, when it is not the default one |
Plans: AI clients need BenchFleet Pro or Team (https://benchfleet.com/pricing); the personal edition has no limits. Support: [email protected].
Use it in Claude Code as a plugin
/plugin marketplace add benchfleet/benchfleet-mcp
/plugin install benchfleet@benchfleet-plugins
Set BENCHFLEET_TOKEN in your environment first (the token from BenchFleet: Settings → AI clients).
Use it in Gemini CLI
gemini extensions install https://github.com/benchfleet/benchfleet-mcp
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.