1. Conduid
  2. Developer Tools
  3. Idb MCP
MCP server · Developer Tools

Idb MCP

An open-source MCP server and Python library that wraps Facebook IDB to control iOS simulators for automation. Built by AskUI.

58Fair

Scored 7 hours ago · breakdown

About Idb MCP

Idb MCP is an MCP server published by askui in the Developer Tools category: an open-source MCP server and Python library that wraps Facebook IDB to control iOS simulators for automation. Built by AskUI.

The repository has 11 stars and 3 forks, with the last commit a month ago. Recent commit activity is the strongest signal that reported issues will get attention.

Install

From source
git clone https://github.com/askui/idb-mcp

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

✦

Ask AI about Idb MCP

Powered by Claude · Grounded in docs

I know everything about Idb MCP. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

Static checks derived from the repository 7 hours ago. Heuristics on the source, not an audit.

  • ✓README presentThe repository ships documentation.
  • ✓License declaredUsable under a stated license.
  • !Tests presentNo tests found. Behaviour changes may go unnoticed between versions.
  • ✓Dependencies pinnedA lockfile pins dependency versions.
  • ✓No dynamic code executionSource scan found no eval, dynamic Function, or shell execution.
  • !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.

Releases

0.1.2v0.1.2 · 18 Mar 2026Summary This release adds MCP tools for opening URLs, setting simulator location, managing apps (install, uninstall, launch, terminate, list), and approving permissions on the selected iOS device/simulator. What's new compared to 0.1.1 New…
0.1.1v0.1.1 · 17 Mar 2026Summary This release adds the ability to save iOS device screenshots directly to disk, so you can persist screenshots to a file path of your choice instead of only receiving them in memory. What's new compared to 0.1.0 New MCP tool: Save…
0.1.00.1.0 · 24 Dec 2025Release Notes: idb-mcp 0.1.0 Changes from 0.0.7 🗑️ Removed AskUI Chat integration: Removed the experimental AskUI Chat integration module (`askui_chat`), including: `add_to_caesr.py` `asst_avatar.py` `prompt.py` bson dependency:…
0.0.70.0.7 · 9 Oct 2025v0.0.7 — Initial Public Release `idb-mcp` enables full control of iOS Simulators via the Model Context Protocol (MCP) or directly through Python. Built on Meta’s FB-IDB, it makes simulator automation simple, scriptable, and reliable on…

README

IDB-MCP

PyPI Python Versions License

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).

What it is

  • MCP server: Exposes a set of iOS automation tools (list/select device, screenshot, tap, swipe, type, etc.) over MCP transports (HTTP, SSE or stdio) using fastmcp.
  • Python module: Import to manage and control iOS simulators programmatically.

Table of contents

Key features

  • Device management 🔧: list devices, select by UDID or name, boot/shutdown, kill IDB.
  • Input control 👆: tap, swipe, type text, tap keys, tap buttons.
  • Screen utilities 🖼️: capture screenshots, query screen size, get view description.
  • Image/coord scaling 📐: optional scaling to a target viewport for consistent coordinates.

Limitations

⚠️ 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 support@askui.com for more information.

Requirements

  • Runs on macOS only.

  • Python >= 3.10

  • Xcode with iOS Simulators installed and configured.

    • Verify simulators are visible:

      xcrun xctrace list devices
      
  • Facebook IDB companion (using brew):

    brew tap facebook/fb
    brew install idb-companion
    

Install

pip install idb-mcp

Quick start (CLI)

Why MCP?

Using 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. ✨

Start MCP server

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 --help

Programmatic usage (Python)

from 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()

Add to your favorite tools

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:

  • Open your client's MCP configuration file (location varies by client).
  • Add an entry named 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:

  • The --target-screen-size 1280 800 setting improves coordinate reliability, especially for models like Claude.

Configuration

  • Target screen size 📐: You can scale screenshots and coordinate inputs to a target viewport when starting the MCP server via CLI (--target-screen-size W H) or programmatically (target_screen_size=(W, H)).
  • Mode 📐: You can start the MCP server in stdio, http, or sse mode.
  • Port 📐: You can start the MCP server on a specific port via CLI (--port PORT) or programmatically (port=PORT).

Troubleshooting

  • Cannot see devices 🔍: Make sure you have an iOS simulator or device connected and running. Verify with:

    xcrun xctrace list devices
    

    Example 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)
    
  • High-resolution screenshots with some LLMs 🧠: Some LLM backends struggle to process very high-resolution images, resulting in poor coordinate detection or tapping errors. Use rescaling via --target-screen-size (or target_screen_size in Python) to downscale screenshots and coordinates. For Claude models, we recommend 1280 800.

Development

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-check

Contributing

Contributions are welcome! 🙌 Please open an issue or pull request on GitHub. Questions? Email us at support@askui.com.

License

MIT License

Links

README fetched from the repository 7 hours ago. The original is authoritative.

Questions

About Idb MCP

How do I install Idb MCP?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is Idb MCP safe to use with an AI agent?

Its trust score is 58 out of 100 (fair). It passes 4 of the 6 static security checks run so far; the failures are listed above. It has no ConduID identity yet, so agent calls to it are not receipted.

Is Idb MCP still maintained?

Yes — the last commit was a month ago. The repository has 11 stars and 3 forks.