mcpField
A
agentic-device

agentic-device

Local
github.com/pooriaarabSocial Media0Updated 2w ago

About agentic-device

agentic-device is a TypeScript library, CLI, and MCP server for automating setup-oriented actions and managing posting tasks on phones owned by the operator. Dry runs are the default, actions require review, and passcodes, CAPTCHAs, and verification steps stop for human input.

Key features

  1. 01Register and list devices by UDID
  2. 02Drive iPhones through WebDriverAgent or ESP32 HID
  3. 03Preview actions before execution
  4. 04Queue and manage auditable posting tasks
  5. 05Stop at human verification checkpoints

Use cases

  1. 01Queue a device post for review before execution
  2. 02Run simulator onboarding flows for QA screenshots
  3. 03Track phone tasks in an auditable queue
  4. 04Let an agent preview device actions

MCP support

The MCP server exposes the device registry, task queue, drivers, and cost report as tools over stdio, allowing compatible hosts to register devices, preview actions, and inspect queued tasks.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"pooriaarab-agentic-device": {
"command": "npx",
"args": [
"-y",
"agentic-device"
]
}
}
}
Run commandnpx -y agentic-device

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npmagentic-device0.1.0

Tools

8

Saved tool list · updated 2w ago

This tool takes no parameters.

Details

From the project README

agentic-device

npm version npm downloads per month license

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 action is a dry run by default; pass --execute only after review.
  • humanCheckpoint always returns needs-human for 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; simulator is 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

Comments

Markdown supported

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.