Data as of
iOS Simulator MCP Server for Claude Desktop: Setup & Config
Claude Desktop: Let an MCP assistant inspect and operate an iOS simulator on macOS.
What you can do with iOS Simulator in Claude Desktop
Choose it for assistant-led simulator QA using accessibility data, gestures, and visual captures.
- Check accessibility labels after an interface change.
- Exercise tap, typing, and swipe flows in an app.
Before you start: iOS Simulator in Claude Desktop
- Node.js
- macOS
- Xcode and installed iOS simulators
- Facebook IDB
Use release 1.3.3 or later according to the README security notice. The default capture directory is ~/Downloads when no output directory is configured.
iOS Simulator Claude Desktop configuration
Choose Claude Desktop configuration scope
For iOS Simulator MCP Server, open macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json. Merge under mcpServers via Settings → Developer → Edit Config when available.
Add iOS Simulator MCP Server to Claude Desktop
Use the ios-simulator-mcp entry below in mcpServers. Keep iOS Simulator MCP Server's documented stdio connection fields and your other Claude Desktop entries.
Check iOS Simulator MCP Server in Claude Desktop
iOS Simulator MCP Server: Fully quit and reopen Claude Desktop; check developer diagnostics.
Config file · macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"ios-simulator-mcp": {
"command": "npx",
"args": [
"-y",
"ios-simulator-mcp"
],
"env": {
"IDB_UDID": "<optional target simulator UUID>",
"IOS_SIMULATOR_MCP_FILTERED_TOOLS": "<optional comma-separated tool names to exclude>",
"IOS_SIMULATOR_MCP_DEFAULT_OUTPUT_DIR": "<optional directory for screenshots and recordings>"
}
}
}
}iOS Simulator tools available to Claude Desktop
iOS Simulator's stored tool list documents 17 tools; compare it with Claude Desktop's connected tool list, because the stored list is not a live check.
- get_booted_sim_id
When Claude Desktop requests get_booted_sim_id from iOS Simulator, review the action before approving it.
Identify the simulator that is currently running.
- open_simulator
When Claude Desktop requests open_simulator from iOS Simulator, review the action before approving it.
Start the Simulator application.
- ui_describe_all
When Claude Desktop requests ui_describe_all from iOS Simulator, review the action before approving it.
Read accessibility details for the visible simulator screen.
- ui_tap
When Claude Desktop requests ui_tap from iOS Simulator, review the action before approving it.
Send a touch at specified screen coordinates.
- ui_type
When Claude Desktop requests ui_type from iOS Simulator, review the action before approving it.
Enter printable ASCII text into the simulator.
- ui_swipe
When Claude Desktop requests ui_swipe from iOS Simulator, review the action before approving it.
Perform a swipe between two screen positions.
- ui_describe_point
When Claude Desktop requests ui_describe_point from iOS Simulator, review the action before approving it.
Inspect the accessibility element at a screen position.
- ui_find_element
When Claude Desktop requests ui_find_element from iOS Simulator, review the action before approving it.
Find accessibility elements matching labels, identifiers, or type filters.
- ui_view
When Claude Desktop requests ui_view from iOS Simulator, review the action before approving it.
Return a compressed image of the current simulator display.
- screenshot
When Claude Desktop requests screenshot from iOS Simulator, review the action before approving it.
- record_video
When Claude Desktop requests record_video from iOS Simulator, review the action before approving it.
- stop_recording
When Claude Desktop requests stop_recording from iOS Simulator, review the action before approving it.
- install_app
When Claude Desktop requests install_app from iOS Simulator, review the action before approving it.
- launch_app
When Claude Desktop requests launch_app from iOS Simulator, review the action before approving it.
- terminate_app
When Claude Desktop requests terminate_app from iOS Simulator, review the action before approving it.
- open_url
When Claude Desktop requests open_url from iOS Simulator, review the action before approving it.
- list_apps
When Claude Desktop requests list_apps from iOS Simulator, review the action before approving it.
Troubleshooting iOS Simulator in Claude Desktop
- Fully quit and reopen Claude Desktop for iOS Simulator MCP Server. If npx ios-simulator-mcp (Node.js/npm) is missing, check the desktop process's PATH, which may differ from your terminal.
- In Claude Desktop's iOS Simulator MCP Server entry, check IDB_UDID, IOS_SIMULATOR_MCP_DEFAULT_OUTPUT_DIR, IOS_SIMULATOR_MCP_FILTERED_TOOLS. Keep secrets out of shared screenshots and repositories.
- iOS Simulator MCP Server uses stdio here: Claude Desktop must keep the configured process running; protocol output belongs on stdout and diagnostics on stderr.
- Known limitation: Requires macOS, Xcode simulators, and IDB.
- Known limitation: The typing tool accepts printable ASCII only.
- Known limitation: Versions before 1.3.3 have a documented command injection issue.
- General Claude Desktop troubleshooting lives in the /clients/claude-desktop guide.
iOS Simulator MCP Server — details. Claude Desktop guide