← 返回目录
I

iOS Simulator MCP Server

社区
通过 MCP 操作和检查 iOS 模拟器。
GitHub 源仓库 ↗
★ 2.1k Stars 分类 · 开发工具 非常热门
56FMRS · C
可靠性
8/20
安全与权限
10/20
维护活跃度
10/20
文档质量
15/20
安装易用性
13/20

资料显示该服务器专注于 macOS 上的 iOS 模拟器交互、UI 自动化、可访问性检查、截图录像及应用安装启动。README 提供 Cursor 和 Claude Code 的 stdio 配置示例。未提供主题、服务器清单、认证机制或其他传输方式信息。

查看 FMRS 评分方法 →

iOS Simulator MCP Server 是一个用于与 iOS 模拟器交互的 MCP 服务器,支持获取模拟器信息、控制界面、检查可访问性元素、查看和保存屏幕内容、录制视频,以及安装和启动应用。服务器路径为仓库根目录,采用 MIT 许可证。

工具能力

get_booted_sim_id
获取当前已启动的 iOS 模拟器 ID。
open_simulator
打开 iOS 模拟器应用。
ui_describe_all
描述 iOS 模拟器整个屏幕的可访问性信息。
ui_tap
点击 iOS 模拟器屏幕上的指定坐标。
ui_type
向 iOS 模拟器输入文本。
ui_swipe
在 iOS 模拟器屏幕上执行滑动操作。
ui_describe_point
返回 iOS 模拟器屏幕指定坐标处的可访问性元素。
ui_find_element
在可访问性树中搜索符合条件的元素。
ui_view
获取当前模拟器视图的压缩截图图像内容。
screenshot
截取 iOS 模拟器屏幕并保存到指定路径。
record_video
使用 simctl 录制 iOS 模拟器视频。
stop_recording
停止当前的模拟器视频录制。
install_app
在 iOS 模拟器上安装 .app 或 .ipa 应用。
launch_app
通过 bundle identifier 启动 iOS 模拟器上的应用。

安装接入

需要 Node.js、macOS、已安装的 Xcode 和 iOS 模拟器,以及 Facebook IDB。使用 npx 配置:在 Cursor 的 ~/.cursor/mcp.json 中加入提供的 mcpServers 配置并重启 Cursor;或运行 claude mcp add ios-simulator npx ios-simulator-mcp。也可以克隆仓库、运行 npm install 和 npm run build,然后使用本地 build/index.js 配置。

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

选型与风险

适合谁

  • 使用 macOS、Xcode 和 iOS 模拟器进行开发或 QA 的团队
  • 需要通过 MCP 让 AI 助手执行移动端 UI 验证的用户
  • 需要检查 iOS 可访问性树和界面响应的开发者

不适合谁

  • 没有 macOS、Xcode 或 iOS 模拟器的环境
  • 需要真实 iOS 设备测试的场景
  • 不需要模拟器控制、检查或应用安装的任务

所需权限

  • 需要访问 macOS 上的 iOS 模拟器和 Xcode 工具。
  • 需要使用 Facebook IDB;默认从 PATH 中查找 idb,也可通过 IOS_SIMULATOR_MCP_IDB_PATH 指定路径。
  • 截图和视频功能需要写入输出目录;默认目录为 ~/Downloads,也可通过 IOS_SIMULATOR_MCP_DEFAULT_OUTPUT_DIR 配置。
  • 安装应用和启动应用需要目标应用路径或 bundle identifier。

风险与副作用

  • ui_tap、ui_type、ui_swipe、install_app 和 launch_app 会改变模拟器状态或应用状态。
  • 截图和视频可能保存模拟器屏幕内容到本地文件。
  • 版本低于 1.3.3 存在命令注入漏洞;README 声明该问题已修复,建议更新到 1.3.3 或更高版本。
  • 文本输入仅支持 ASCII 可打印字符。

常见排障

  1. 确认运行环境为 macOS,并已安装 Xcode 和所需的 iOS 模拟器。
  2. 确认 IDB 已安装并可执行;若不在 PATH 中,检查 IOS_SIMULATOR_MCP_IDB_PATH。
  3. 使用 get_booted_sim_id 确认当前已启动的模拟器,并在需要时通过 udid 指定目标。
  4. 检查 IOS_SIMULATOR_MCP_DEFAULT_OUTPUT_DIR 是否指向可写目录。
  5. 如果工具未注册,检查 IOS_SIMULATOR_MCP_FILTERED_TOOLS 是否过滤了相关工具,并重启 MCP 客户端。
  6. 确认使用的 npm 包版本至少为 1.3.3。

使用场景

功能实现后的 UI 一致性和行为验证
检查模拟器当前屏幕的可访问性元素
执行点击、文本输入和滑动操作
查看或保存模拟器截图
录制模拟器视频
在模拟器上安装并启动应用

支持客户端

Cursor完整支持
Claude Code完整支持