Server data from the Official MCP Registry
Control your own iPhones for posting via WebDriverAgent and ESP32 HID.
About
Control your own iPhones for posting via WebDriverAgent and ESP32 HID.
Security Report
agentic-device is a consent-oriented device control pack with dry-run defaults, a humanCheckpoint short-circuit, and no unexpected network or exfiltration patterns, and its permissions match its stated purpose. Its main concerns are that guards (caps, quiet hours, blocklist) are never passed in the CLI action path, unvalidated action JSON can report success for unknown action types under --execute, and the human-checkpoint safety depends on the calling agent labeling steps itself. Score is held at 7.3 because these are real but moderate issues rather than security vulnerabilities. Supply chain analysis found 8 known vulnerabilities in dependencies (2 critical, 4 high severity). Package verification found 1 issue.
7 files analyzed · 18 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
Permissions Required
This plugin requests these system permissions. Most are normal for its category.
How to Install
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-pooriaarab-agentic-device": {
"args": [
"-y",
"agentic-device"
],
"command": "npx"
}
}
}Documentation
View on GitHubFrom the project's GitHub README.
agentic-device
npm package · CLI · Library · Safety · Limits
agentic-device is a TypeScript library, CLI, and MCP server for driving phones you own — an iPhone through WebDriverAgent or an ESP32 HID bridge — so an agent can run setup-oriented UI actions and queue auditable phone-posting tasks.
It is a consent-first device pack: actions dry-run by default and anything that needs a human (passcode, CAPTCHA, verification code) stops with needs-human instead of faking progress.
Install
npm install agentic-device
Requires Node.js and the published dist/ build. Two runtime dependencies: the MCP SDK and zod.
Post your first task
agentic-device device register --udid MY_PHONE_UDID --label "My iPhone" --connection simulator
agentic-device device action --udid MY_PHONE_UDID --action '{"type":"home"}'
agentic-device device post-task --udid MY_PHONE_UDID --platform instagram --text "Ship day"
agentic-device device queue
device action and post-task are dry runs until you pass --execute, and device action stays a review gate even then: the run reports what the driver did or the VendorError it hit.
CLI
agentic-device device register --udid <id> --label <label> --connection <wda|esp32-hid|simulator>
agentic-device device list
agentic-device device action --udid <id> --action <json> [--execute]
agentic-device device post-task --udid <id> --platform <name> --text <text> [--media <path>]
agentic-device device queue [--claim|--complete|--fail <task-id>]
agentic-device costs
agentic-device mcp
Library
import { DeviceRegistry, SimulatorDriver, runAction } from "agentic-device";
const registry = new DeviceRegistry();
const phone = registry.register({ udid: "mine", label: "My iPhone", connectionType: "simulator" });
await runAction(phone, new SimulatorDriver(), { type: "home" }); // dry run
MCP server
agentic-device mcp (or npx agentic-device-mcp) serves the same registry, queue, drivers, and cost report as tools on stdio, so a host such as Claude Code or Cursor can register a device, preview an action, and read the task queue.
Use cases
- A support agent queues a product-announcement post for a device on your desk and you approve the run.
- A QA agent drives its own simulator through an app's onboarding to capture screenshots.
- A posting pipeline records each device task as an auditable queue entry instead of an untracked script.
Alternatives and related tools
- Appium is the general mobile-automation framework; WebDriverAgent is its iOS driver, and agentic-device speaks the same protocol for the posting-task subset.
- ESP32-BLE-Keyboard is the reference firmware for the Bluetooth-HID path.
- Full device-farm products (BrowserStack App Automate, Firebase Test Lab) rent you devices at scale; this pack is for the phones on your own desk.
Safety
- Register only your own phones by UDID.
device actionis a dry run by default; pass--executeonly after review.humanCheckpointalways returnsneeds-humanfor passcode, CAPTCHA, and verification-code steps — the pack never bypasses a platform check.- Drivers surface failures as
VendorError; they never report failed hardware or network work as success.
Limits
- No passcode, CAPTCHA, two-factor, or App Store review bypass — ever.
- The WebDriverAgent path needs a reachable WDA endpoint for a physical device;
simulatoris the zero-hardware option. - The posting queue is in-process by default; persist tasks in your own store for production runs.
Upstream bases
The WDA driver follows the protocol exposed by appium/WebDriverAgent. The ESP32 HID path is designed around ESP32-BLE-Keyboard. These integrations are for owner-operated devices only.
License
MIT
Reviews
No reviews yet
Be the first to review this server!
More Developer Tools MCP Servers
Fetch
Freeby Modelcontextprotocol · Developer Tools
Web content fetching and conversion for efficient LLM usage
Git
Freeby Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
Toleno
Freeby Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
MCP Marketplace
Freeby mcp-marketplace · Developer Tools
Search and install MCP servers from inside your AI client.
mcp-creator-python
Freeby mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.
FinAgent
Freeby mcp-marketplace · Finance
Free stock data and market news for any MCP-compatible AI assistant.
