Skip to main content
AllMCPs
BrowseBestCategoriesStackCompareToolsGuidesBlog
Log in Submit MCP

Stay in the loop

Get new MCP servers and top picks in your inbox.

AllMCPs

The open directory for discovering and installing Model Context Protocol servers.

AllMCPs on GitHub (opens in a new tab)
Launched onTiny Startupstinystartups.com
Explore
  • Browse servers
  • Best MCP servers
  • Categories
  • MCP clients
  • Agent prompts
  • Stack Builder
  • Compare servers
  • Random discovery New
  • Submit a server
  • Pricing & Boost Boost
Learn
  • Guides hub
  • What is MCP?
  • Install guide
  • Build an MCP server
  • Deploy an MCP server
  • Security guide
  • Troubleshooting
  • MCP for SEO & AEO
  • Protocol versioning
  • Blog & updates
Tools
  • All developer tools
  • Config generator
  • Config validator
  • Config auditor
  • MCP playground
  • Token calculator
  • OpenAPI β†’ MCP
  • Badge generator
For agents
  • REST API docs
  • Trust & traffic Live
  • Remote MCP server SSE β†— (opens in a new tab)
  • llms.txt β†— (opens in a new tab)
  • Catalog JSON β†— (opens in a new tab)
Company
  • About
  • Advertise Sponsor
  • Contact
  • GitHub β†— (opens in a new tab)
  • Terms
  • Privacy
AllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZoneAllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZone
Β© 2026 Jackalope Digital LLC. All rights reserved.
  1. Home
  2. πŸ’» Developer Tools
  3. Ios Sim MCP
I
Health: ActiveRecent health check succeeded.Last checked 9/8/2026, 11:46:54 AM

Ios Sim MCP

User RatingsBe the first to rate and review this MCP server! Enrichment pendingWe haven’t run our AI enrichment pass on this listing yet, so the overview, use cases, and FAQ below may be sparse or missing. We work through the catalog over time β€” check back soon.
View Repository

Drive the iOS Simulator via semantic accessibility-tree snapshots. Sub-200ms, no WebDriverAgent.

Quick Install

Automated & IDE Setup

Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β€” or use 1-click editor setup below.

Add to CursorAdd to VS Code
Not yet automatically verified

We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag β€” we're steadily working through the catalog.

Manual Client & Custom JSON ConfigExpand JSON β–Ύ

Client Config & Setup

Choose your client or environment
Target File:~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "ios-sim-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "ios-sim-mcp"
      ]
    }
  }
}

πŸ’‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.

Install Tool Schemas (26) Directory Badge Claim listing AlternativesπŸ’» More in Developer Tools

Capabilities & Tool Schemas (26) ~912 tokensApproximate context cost of this server’s tool schemas (~4 chars/token), before any tool is called. Actual usage depends on your client and model.Self-reported Self-reportedParsed from the repository README, not verified against a live server β€” may be incomplete or out of date.

Inspect callable tools, capabilities, and parameters exposed to AI agents by Ios Sim MCP.

list_simulators

List simulators with UDID, state, OS version

use_simulator

Pick a specific UDID (auto-selected if only one is booted)

snapshot

Capture the AX tree, assign refs `e1..eN`, return compact text rendering. Filters: `interactive` (default), `actionable`, `all

find

Search the snapshot by `id` (AXUniqueId), `label`, `labelContains`, `role`, `actionable

tap

Tap by `{ref}`, `{id}`, or `{x,y}`. Optional `duration` makes it a long-press

type_text

Type into the focused field. Optional `{ref}` or `{id}` taps-then-types. Auto-routes through paste when the dylib is loaded for byte-perfect input β€” no iOS autocorrect, no first-letter capitalization. `via: "keystroke"` forces the typing path; `via: "paste"` forces the paste path

Documentation Overview

ios-sim-mcp

An MCP server that drives the iOS Simulator the way Chrome's DevTools MCP drives a browser: semantic accessibility-tree snapshots with stable element refs, sub-200ms operations, and no screenshot-and-eyeball-coordinates loops.

Built because every existing iOS-simulator automation tool either crawls (Appium, screenshot-based agents) or requires pre-written scripts. This one lets an LLM drive a simulator interactively β€” find an element by label or ID, tap it by ref, wait for the UI to settle, repeat β€” at roughly the speed a human would.

Why this exists

Most existing iOS-sim MCPs work by taking a screenshot, asking the model to identify coordinates, then tapping pixels. That's slow (image bytes in context), expensive (vision tokens), and fragile (any layout shift breaks it).

iOS apps already expose a structured accessibility tree β€” the same one VoiceOver uses. If you query that tree, you get every interactive element with its label, role, AX identifier, frame, and enabled state. You can find what you want semantically, refer to it by a stable ref, and act on it directly. That's what Chrome MCP does for the DOM, and it's what this does for UIView hierarchies in the iOS Simulator.

How it works

Three layers, two shipping today:

LayerStatusTechWhat it gives you
1 β€” AX tree + actionsβœ… shippingidb (Facebook's CoreSimulator bridge)snapshot, find, tap, type, swipe, scroll, launch, screenshot β€” all ~100ms
2a β€” Dylib proof-of-lifeβœ… shippingDYLD_INSERT_LIBRARIES via SIMCTL_CHILD_*constructor runs in the target app before main(); logs lifecycle via os_log
2b β€” In-process RPCβœ… shippingUnix socket + JSON-Linesround-trip into a running app at ~1ms per call
2c β€” View introspectionβœ… shippingMain-thread UIView walkview_tree, view_hit_test β€” class hierarchy, frames, responder chains, VC annotations
2d β€” Network interceptionβœ… shippingURLProtocol + URLSessionConfiguration swizzlecapture every HTTP request/response (headers, bodies, timing) inside the app β€” no cert install, no mitmproxy
2e β€” JS evalβœ… shippingJSContext + JSExport bridgeseval_js({code}) with app / key_window() / defaults / pasteboard / bundle / process / view-finder helpers β€” Chrome's Runtime.evaluate equivalent
2f β€” Network stubbingβœ… shippingSame URLProtocol, synthesized responseregister canned responses by URL substring + optional method; supports custom status/headers/body + delay_ms for slow-network simulation
3 β€” System logsβœ… shippingxcrun simctl spawn log streamstreaming os_log into a 5000-line ring buffer

idb talks directly to CoreSimulator's private framework β€” no WebDriverAgent, no HTTP hop into the simulator process β€” which is why the per-call latency is closer to a local subprocess than to a network round trip.

Requirements

  • macOS with Xcode + iOS Simulator
  • idb (brew tap facebook/fb && brew install idb-companion && pipx install fb-idb)
  • Bun (curl -fsSL https://bun.sh/install | bash)
  • A booted simulator (xcrun simctl boot <udid> or open it in Xcode)

Install

Quickest path (npm + npx)

bash
# Register with Claude Code, one line:
claude mcp add -s user ios-sim -- npx -y ios-sim-mcp

npx will fetch the package on first run. Verify:

Terminal
claude mcp list | grep ios-sim     # ios-sim: ... βœ“ Connected

Layer 2 dylib ships prebuilt as a universal binary (arm64 + x86_64) β€” works on both Apple Silicon and Intel Macs out of the box.

From source

bash
git clone https://github.com/rmathew1973/ios-sim-mcp.git
cd ios-sim-mcp
bun install
./dylib/build.sh         # builds the Layer 2 dylib (only needed if you'll use inject:true)

Then register:

bash
# Prefer the absolute bun path β€” clients with a minimal PATH fail on bare `bun`:
claude mcp add -s user ios-sim -- "$HOME/.bun/bin/bun" run "$(pwd)/src/server.ts"

Register with Grok (CLI / Desktop)

Grok MCP spawn PATH is often just /usr/bin:/bin. Bare bun fails with:

Failed to spawn MCP server 'ios-sim': No such file or directory (os error 2)

Use the absolute bun binary in ~/.grok/config.toml:

toml
[mcp_servers.ios-sim]
command = "/Users/YOU/.bun/bin/bun"
args = ["run", "/Users/YOU/Projects/ios-sim-mcp/src/server.ts"]
enabled = true
startup_timeout_sec = 60

Or:

bash
grok mcp add ios-sim -- "$HOME/.bun/bin/bun" run "$HOME/Projects/ios-sim-mcp/src/server.ts"

Restart the Grok session after changing MCP config. Verify: grok mcp list should show ios-sim connected (not failed).

Register with Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

config.json
{
  "mcpServers": {
    "ios-sim": {
      "command": "npx",
      "args": ["-y", "ios-sim-mcp"]
    }
  }
}

Or, if installed from source, point at the local path:

config.json
{
  "mcpServers": {
    "ios-sim": {
      "command": "/Users/YOU/.bun/bin/bun",
      "args": ["run", "/absolute/path/to/ios-sim-mcp/src/server.ts"]
    }
  }
}

Quit and reopen Claude Desktop.

Register with anything else (generic MCP client)

It's a standard stdio MCP server. Run bun run src/server.ts and pipe JSON-RPC. See test/smoke.ts for a working client example.

Tools

ToolWhat it does
list_simulatorsList simulators with UDID, state, OS version
use_simulatorPick a specific UDID (auto-selected if only one is booted)
snapshotCapture the AX tree, assign refs e1..eN, return compact text rendering. Filters: interactive (default), actionable, all
findSearch the snapshot by id (AXUniqueId), label, labelContains, role, actionable
tapTap by {ref}, {id}, or {x,y}. Optional duration makes it a long-press
type_textType into the focused field. Optional {ref} or {id} taps-then-types. Auto-routes through paste when the dylib is loaded for byte-perfect input β€” no iOS autocorrect, no first-letter capitalization. via: "keystroke" forces the typing path; via: "paste" forces the paste path
paste_textByte-perfect text via UIPasteboard + first-responder paste:. Requires the dylib injected. The right answer for emails, passwords, OAuth tokens, anything case-sensitive
view_treeWalk the running app's UIView hierarchy on the main thread. Reports class names, frames in window coords, alpha/hidden/interactive, text content, and annotates view-controller boundaries. Strictly richer than snapshot β€” sees custom-drawn views, transient overlays, SwiftUI internals. Filter by class_filter / ax_id_contains / text_contains. Requires dylib injected
view_hit_test"What view actually receives a tap at (x,y)?" Returns the topmost view plus the full responder chain up to UIApplication. The right debugging tool when a tap isn't doing what you expect. Requires dylib injected
network_start / network_stop / network_statusInstall/remove an URLProtocol interceptor + swizzle URLSessionConfiguration so every URLSession-based HTTP request flowing through the app is recorded. Options: max_records, max_body_bytes, filter_url_substring. Requires dylib injected
network_tailReturn the most recent N captured records. Default: one line per request (id, method, status, timing, sizes, URL). full=true includes headers + body previews inline. Page forward via since_id
network_get_bodyFetch the full request or response body (up to max_body_bytes, default 256KB) for a specific record id. Returns base64 + UTF-8 decode for text bodies
network_clearDrop the ring buffer and all retained bodies
network_self_testFire an HTTP request from inside the app to verify the capture path end-to-end
network_stub / network_stubs / network_unstub / network_unstub_allRegister canned HTTP responses by URL substring (+ optional method). Synthesizes status/headers/body without forwarding; delay_ms simulates slow networks. Stubbed requests still appear in network_tail with stubbed:true
eval_jsRun arbitrary JavaScript in a persistent JSContext inside the injected app. Bridged globals: app, key_window(), all_windows(), defaults, pasteboard, bundle, process, notif_center, first_responder(), find_view_by_ax_id, find_view_by_class, find_vc_by_class, post_notification, cls, log. State persists across calls. Requires dylib injected
eval_js_resetDrop the JSContext and rebuild bridges on next eval β€” forgets your defined vars/fns
keyPress a key by name (RETURN, ESC, DELETE, TAB, SPACE, F1–F12, arrows) or raw HID code
buttonHardware button: HOME, LOCK, SIDE_BUTTON, SIRI, APPLE_PAY
swipeSwipe between two refs/ids/points. Optional duration and delta
scrollReader-perspective scroll: down reveals content below. Optional anchor element
launch_appLaunch by bundle id. Optional foreground_if_running terminates first
terminate_appTerminate by bundle id
screenshotPNG to disk or inline. Use sparingly β€” the AX tree is faster and richer
await_quiescentBlock until the AX-tree hash is identical for stable_ms (default 250) or timeout_ms (default 5000). Use after launches and navigation instead of sleep
log_start / log_tail / log_stop / log_clearStream os_log into a 5000-line ring buffer. Filter by bundle_id substring, level, or NSPredicate

Example session

Read the full README β†’View source on GitHub β†’

Related MCP Servers

View all in Developer Tools View all alternatives
  • U
    Uimax MCP

    Frontend expert for Claude Code. Screenshots, Lighthouse, axe-core, code analysis, auto-fix.

    πŸ’» Developer Tools0 views
    Compare vs Uimax MCP β†’
  • Oswright logoOswright

    Windows desktop automation that re-reads only what changed: 7x fewer tokens per task.

    πŸ’» Developer Tools1 views
    Compare vs Oswright β†’
  • Dittu logoDittu

    Turns a phone into a camera+Bluetooth remote so AI assistants can see and control any PC.

    πŸ’» Developer Tools0 views
    Compare vs Dittu β†’
  • Vibe MCP β€” Real Chrome, Remotely logoVibe MCP β€” Real Chrome, Remotely

    Drive your real, logged-in Chrome from any MCP client β€” even from a remote machine, no inbound port.

    πŸ’» Developer Tools0 views
    Compare vs Vibe MCP β€” Real Chrome, Remotely β†’

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks β€” not a rating.

npm downloads
163
Package downloads in the last 30 days.
Last commit
1mo ago
Most recent push to the default branch.
Tools exposed
26
Callable tools this server registers over MCP.

Reviews

No reviews yet β€” be the first to share how this listing worked for you.

Frequently Asked Questions about Ios Sim MCP

Add the following block to your claude_desktop_config.json under mcpServers: "mcpServers": { "ios-sim-mcp": { "command": "npx", "args": ["-y", "ios-sim-mcp"] } }

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewIos Sim MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/ios-sim-mcp?style=directory)](https://allmcps.com/mcp/ios-sim-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/ios-sim-mcp"><img src="https://allmcps.com/api/badge/ios-sim-mcp?style=directory" alt="Ios Sim MCP on AllMCPs" /></a>

Technical Specs & Signals

CategoryπŸ’»Developer Tools
More technical detailsExpand β–Ύ
TransportSTDIO
RuntimeNode.js
Last updatedAug 3, 2026
Views0
Unique ViewsTotal visits recorded for this listing page on AllMCPs.
Installs0
Installs & Copy ActionsTotal times users copied install commands or configuration snippets for this server.
GitHub stars0
GitHub Star CountTotal stargazers on GitHub representing community popularity (0 stars).
Last commit1mo ago
Last Repository CommitThe most recent commit or push recorded for this server's GitHub repository.Last commit on Aug 3, 2026
npm downloads163/mo
Monthly npm DownloadsAverage monthly package installs recorded from npm registry statistics.
52Quality signal: Good Β· 52/100How this signal is calculated β–Ύ
Server availabilityNot measured

Not scored for repo-hosted servers β€” we can't reach the running server, only its GitHub page. Hosted MCP endpoints are health-checked live.

Verified ownership10/20
Documentation & tools25/30
Adoption & activity4/15
Community engagement0/10

A guidance signal from public completeness & health data β€” not a user rating. New listings start lower and rise as they add docs, get verified, and grow adoption. Signals we can't observe for a listing are skipped, not counted against it.

β˜… FeaturedMoxie Docs MCP logo

Moxie Docs MCP

MCP & Agent Skills for Automated Documentation, and codebase conventions + context

Explore Server β†’

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to unlock edit access and the Official badge and attach your website β€” proof is checked automatically, then reviewed by our team.

Free dofollow backlink: add your website and place the AllMCPs badge on it β€” no claim needed. We detect it automatically and keep it verified as long as the badge stays live.

Claim & get free dofollow

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.

Explore more

More in πŸ’» Developer Tools β†’Best MCP servers for Developers β†’Alternatives to Ios Sim MCP β†’Install in Claude DesktopInstall in CursorInstall in VS Code