用途:借助 XcodeBuildMCP 在已启动的 iOS 模拟器上构建并运行当前项目 scheme,与界面交互并捕获日志。模拟器控制、日志和视图检查优先使用 MCP 工具。
核心流程:1) 调用 mcp__XcodeBuildMCP__list_sims 选择状态为 Booted 的模拟器;若无已启动设备,请用户自行启动,除非被要求否则不自动启动。2) 调用 mcp__XcodeBuildMCP__session-set-defaults 设置 projectPath 或 workspacePath、当前应用的 scheme、已启动设备的 simulatorId,可选 configuration: "Debug"、useLatestOS: true。3) 需要时调用 mcp__XcodeBuildMCP__build_run_sim 构建并运行;构建失败先检查错误输出并重试(可选 preferXcodebuild: true),或先升级给用户再尝试 UI 交互。构建成功后,先调用 mcp__XcodeBuildMCP__describe_ui 或 mcp__XcodeBuildMCP__screenshot 确认应用已启动。若已构建仅需启动,用 mcp__XcodeBuildMCP__launch_app_sim;bundle id 未知时用 mcp__XcodeBuildMCP__get_sim_app_path 与 mcp__XcodeBuildMCP__get_app_bundle_id。
UI 交互与调试:点击或滑动前先 describe_ui;点击用 mcp__XcodeBuildMCP__tap(优先 id 或 label,必要时用坐标);聚焦字段后用 mcp__XcodeBuildMCP__type_text 输入;手势用 mcp__XcodeBuildMCP__gesture;截图用 mcp__XcodeBuildMCP__screenshot。
日志:用 mcp__XcodeBuildMCP__start_sim_log_cap 传入应用 bundle id 开始,mcp__XcodeBuildMCP__stop_sim_log_cap 停止并汇总关键行;控制台输出需设置 captureConsole: true 并在必要时重新启动。
排障:构建失败可询问是否以 preferXcodebuild: true 重试;启动错误应用时确认 scheme 与 bundle id;UI 元素不可点击时在布局变化后重新运行 describe_ui。
限制:依赖 XcodeBuildMCP 与已启动的模拟器;不自动启动模拟器;具体平台与收费信息暂未提供。