Idb Mcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Idb Mcp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
An open-source MCP server and Python library that wraps Facebook IDB to control iOS simulators for automation. Built by AskUI.
This project is based on the Facebook IDB CLI (fb-idb). See the GitHub repository (facebook/idb) and the Python package (fb-idb on PyPI).
fastmcp.⚠️ Only iOS simulators are supported for UI control. Due to iOS security constraints, idb cannot interact with or automate the UI on real, physical devices. AskUI offers a solution for real-device UI automation—contact [email protected] for more information.
xcrun xctrace list devicesbrew): brew tap facebook/fb
brew install idb-companionpip install idb-mcpUsing MCP lets your favorite AI tools connect to idb-mcp seamlessly. The client handles launching and communicating with the server, so you can ask for screenshots, taps, swipes, and more—without leaving your workflow. ✨
The package installs an idb-mcp command.
# Start MCP server over HTTP (default host/port managed by fastmcp)
idb-mcp start http# Or start over SSE
idb-mcp start sse# Or start over stdio
idb-mcp start stdio# Optionally scale images/coordinates to a given target viewport (width height)
idb-mcp start http --target-screen-size 1280 800# Discover available options
idb-mcp --help
idb-mcp start --helpfrom idb_mcp import IDBController, IOSDevice
# Initialize the IDB controller
controller = IDBController()
# Select the device by name
selected_device: IOSDevice = controller.select_device_by_name("iPhone 17 Pro Max")
# Boot the selected device
selected_device.boot()
# Get the current view description of the selected device
current_view_description: str = selected_device.get_current_view_description()
print(current_view_description)
# Shutdown the selected device
selected_device.shutdown()You can use idb-mcp in any MCP-compatible client (e.g., Cursor, Claude Desktop) by adding a server entry to your client's MCP config. The client will launch the server on demand.
Steps:
askui-idb-mcp that starts the server over STDIO and sets a recommended target screen size.Example configuration:
using uv (Make sure you have uv installed):
{
"mcpServers": {
"askui-idb-mcp": {
"command": "uvx",
"args": [
"idb-mcp@latest",
"start",
"stdio",
"--target-screen-size",
"1280",
"800"
]
}
}
}Alternative (if idb-mcp is directly on your PATH without uv):
{
"mcpServers": {
"askui-idb-mcp": {
"command": "idb-mcp",
"args": [
"start",
"stdio",
"--target-screen-size",
"1280",
"800"
]
}
}
}Notes:
--target-screen-size 1280 800 setting improves coordinate reliability, especially for models like Claude.--target-screen-size W H) or programmatically (target_screen_size=(W, H)).stdio, http, or sse mode.--port PORT) or programmatically (port=PORT). xcrun xctrace list devicesExample output:
iPhone 17 Simulator (26.0) (32E2219C-ED40-452F-9A4D-XXXXXXX)
iPhone 17 Pro Simulator (26.0) (764CCCB7-D84D-46EC-B62D-XXXXXXX)
iPhone 17 Pro Max Simulator (26.0) (065382B5-56B4-4864-8174-XXXXXXX)--target-screen-size (or target_screen_size in Python) to downscale screenshots and coordinates. For Claude models, we recommend 1280 800.This repository uses PDM and Ruff for dev tooling.
# Install dev deps
pip install pdm
pdm install --with dev
# Lint / Format
pdm run lint-check
pdm run format-check
# Type check
pdm run type-checkContributions are welcome! 🙌 Please open an issue or pull request on GitHub. Questions? Email us at [email protected].
MIT License
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.