Canlah Skills Radar
网页抓取 · 截图 · 性能

iPhone Control

blitzdotdev/iphone-mcp
✓ I/O · 10认领这个员工

Provides direct control over iOS simulators and physical iPhones through a unified interface that combines Facebook's idb for simulators and WebDriverAgent for physical devices. Features automated device discovery, real-time screen streaming via WebSocket for physical devices, and comprehensive interaction tools including tap, swipe, text input, button presses, screenshot capture, app launching, and UI element scanning. Supports both global and project-scoped setup with auto-configuration for Claude Code, Cursor, Codex, and OpenCode.

真实 I/O · 已连通 ✓

启动 server · tools/list · 10 个工具 · @blitzdev/iphone-mcp

下面每个工具的字段、类型、必填项,都是我们真的把 server 启动、tools/list 拉回来的原始 JSON Schema —— 真实的工具契约。注意:下方「示例调用」是按 schema 自动生成的演示,不是真实调用的返回。

describe_screen

Get the full UI element hierarchy of the current screen. Returns ALL element types (buttons, text, images, containers, etc.) that are currently visible on screen. Filters applied automatically: - Off-screen elements are excluded - Generic unlabeled container nodes are excluded For finding tappable elements specifically, prefer scan_ui instead.

Input(真实 schema)
udidstring
Device identifier (default: "booted" for current simulator)
nestedboolean
Include nested element hierarchy
示例调用
{
  "tool": "describe_screen",
  "arguments": {
    "udid": "…",
    "nested": true
  }
}
device_action

Execute a single device action on the iPhone. Actions available: - tap: Tap at coordinates { x, y, duration? } - swipe: Swipe gesture { fromX, fromY, toX, toY, duration?, delta? } - button: Press button { button: 'HOME'|'LOCK'|'SIDE_BUTTON'|'APPLE_PAY'|'SIRI', duration? } - input-text: Type text { text } - key: Press key { key: number (HID keycode) | string (character), duration? } - key-sequence

Input(真实 schema)
actionstringrequired
Type of action
paramsobjectrequired
Action parameters (depends on action type)
udidstring
Device identifier (default: "booted")
describe_afterobject
Optional: describe screen after action
示例调用
{
  "tool": "device_action",
  "arguments": {
    "action": "tap",
    "params": {}
  }
}
device_actions

Execute multiple device actions in sequence on the iPhone. Each action in the array should have: - action: 'tap' | 'swipe' | 'button' | 'input-text' | 'key' | 'key-sequence' - params: Action-specific parameters Use describe_after to see the screen state after all actions complete.

Input(真实 schema)
actionsarrayrequired
Array of actions to execute in sequence
udidstring
Device identifier (default: "booted")
describe_afterobject
Optional: describe screen after all actions
示例调用
{
  "tool": "device_actions",
  "arguments": {
    "actions": []
  }
}
get_screenshot

Capture a screenshot of the current iPhone screen. Returns the file path to a PNG image.

Input(真实 schema)
udidstring
Device identifier (default: "booted")
示例调用
{
  "tool": "get_screenshot",
  "arguments": {
    "udid": "…"
  }
}
scan_ui

Find interactive UI elements (buttons, links, text fields, switches, icons, etc.) on the current screen. Returns only tappable/interactive elements with their coordinates. Use the "query" parameter to search for a specific element by label (e.g. "Add to Cart", "Settings"). When a query is provided: - First searches visible interactive elements matching the query - If not found on-screen, searches

Input(真实 schema)
regionstringrequired
Screen region to scan
querystring
Search for elements matching this text (case-insensitive)
udidstring
Device identifier (default: "booted")
示例调用
{
  "tool": "scan_ui",
  "arguments": {
    "region": "full"
  }
}
list_devices

List all available iPhones and simulators.

Input(真实 schema)
无参数
示例调用
{
  "tool": "list_devices",
  "arguments": {}
}
get_execution_context

Get the current execution context — which iPhone(s) or simulators are available. Call this first to discover available devices. Returns: - target: 'simulator' — one simulator booted, use the returned udid - target: 'device' — one physical device connected, use the returned udid. Inform user about viewer_url for screen viewing. - target: 'ambiguous' — multiple devices found. Ask the user which one

Input(真实 schema)
无参数
示例调用
{
  "tool": "get_execution_context",
  "arguments": {}
}
setup_device

Build, install, and launch WebDriverAgent on a physical iPhone. This is required before any other tool can interact with a physical device. Call this when get_execution_context shows a physical device with wdaRunning: false. The process takes 1-3 minutes (building WDA, installing on device, establishing connection). Prerequisites: - iPhone connected via USB and trusted - Developer Mode enabled o

Input(真实 schema)
udidstringrequired
Physical device UDID from list_devices or get_execution_context
示例调用
{
  "tool": "setup_device",
  "arguments": {
    "udid": "…"
  }
}
launch_app

Launch an app on the iPhone by bundle ID.

Input(真实 schema)
bundleIdstringrequired
The bundle identifier of the app to launch (e.g. "com.apple.mobilesafari")
udidstring
Device identifier (default: "booted")
示例调用
{
  "tool": "launch_app",
  "arguments": {
    "bundleId": "…"
  }
}
list_apps

List installed apps on the iPhone.

Input(真实 schema)
udidstring
Device identifier (default: "booted")
示例调用
{
  "tool": "list_apps",
  "arguments": {
    "udid": "…"
  }
}

综合分

Canlah Score35
能力域网页抓取 · 截图 · 性能
★ Stars83
↓ 下载量216
工具数(实测)10
npm 包@blitzdev/iphone-mcp
✓ 已连通:字段来自真实的 tools/list(工具清单)。工具本身尚未真实调用。

效果测评卡

进行中 · 待运行
任务成功率
输出质量 (LLM 评审)
延迟
成本 / token
稳定性

真实 I/O 已解决「输入输出是什么」;下一步接 agent 真跑,量化「效果好不好」。

取用 / 安装

npx -y @blitzdev/iphone-mcp
同能力域的其他 skill
Claude Mobile
alexgladkov/claude-in-mobile
✓ I/O · 14

Enables automation of Android devices and iOS simulators through a unified API. Supports device listing, screenshots with automatic compression for LLM processing, tap and swipe gestures by coordinates or element text, text input, app launching and installation, UI hierarchy inspection, device logs retrieval, and shell command execution. Provides cross-platform device control for mobile testing and debugging workflows.

网页抓取 · 截图 · 性能3095.9k
50
WeChat Mini-Program Agent
chaixueyuan/weapp-agent-mcp
✓ I/O · 44

WeChat Mini-Program Agent enables AI-driven automation and testing of WeChat Mini Programs through a wrapper around miniprogram-automator's WebSocket interface to WeChat DevTools. Supported operations include page navigation, screenshot capture, UI element interaction, DOM inspection, and scenario testing. A serial execution model ensures predictable test flows for agent-first development workflows.

网页抓取 · 截图 · 性能72.2k
32
BrowserGenie
browsergenie/mcp
✓ I/O · 112

MCP server for Chrome browser automation via a companion Chrome extension. Provides 50+ tools covering navigation, element clicking, text input, screenshot capture, touch gesture simulation, macro recording and replay, DevTools inspection, and accessibility auditing. Communicates with the extension via a local WebSocket bridge at localhost:7890. Written in TypeScript, Apache 2.0 licensed.

网页抓取 · 截图 · 性能2476
24