[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-joshuayoes--ios-simulator-mcp":3,"tool-joshuayoes--ios-simulator-mcp":61},[4,18,26,36,44,53],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",157379,2,"2026-04-15T23:32:42",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":32,"last_commit_at":42,"category_tags":43,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",108322,"2026-04-10T11:39:34",[14,15,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":32,"last_commit_at":50,"category_tags":51,"status":17},6121,"gemini-cli","google-gemini\u002Fgemini-cli","gemini-cli 是一款由谷歌推出的开源 AI 命令行工具，它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言，它提供了一条从输入提示词到获取模型响应的最短路径，无需切换窗口即可享受智能辅助。\n\n这款工具主要解决了开发过程中频繁上下文切换的痛点，让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用，还是执行复杂的 Git 操作，gemini-cli 都能通过自然语言指令高效处理。\n\n它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口，具备出色的逻辑推理能力；内置 Google 搜索、文件操作及 Shell 命令执行等实用工具；更独特的是，它支持 MCP（模型上下文协议），允许用户灵活扩展自定义集成，连接如图像生成等外部能力。此外，个人谷歌账号即可享受免费的额度支持，且项目基于 Apache 2.0 协议完全开源，是提升终端工作效率的理想助手。",100752,"2026-04-10T01:20:03",[52,13,15,14],"插件",{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":32,"last_commit_at":59,"category_tags":60,"status":17},4721,"markitdown","microsoft\u002Fmarkitdown","MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具，专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片（含 OCR）、音频（含语音转录）、HTML 乃至 YouTube 链接等多种格式的解析，能够精准提取文档中的标题、列表、表格和链接等关键结构信息。\n\n在人工智能应用日益普及的今天，大语言模型（LLM）虽擅长处理文本，却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点，它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式，成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外，它还提供了 MCP（模型上下文协议）服务器，可无缝集成到 Claude Desktop 等 LLM 应用中。\n\n这款工具特别适合开发者、数据科学家及 AI 研究人员使用，尤其是那些需要构建文档检索增强生成（RAG）系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性，但其核心优势在于为机器",93400,"2026-04-06T19:52:38",[52,14],{"id":62,"github_repo":63,"name":64,"description_en":65,"description_zh":66,"ai_summary_zh":66,"readme_en":67,"readme_zh":68,"quickstart_zh":69,"use_case_zh":70,"hero_image_url":71,"owner_login":72,"owner_name":73,"owner_avatar_url":74,"owner_bio":75,"owner_company":76,"owner_location":77,"owner_email":78,"owner_twitter":72,"owner_website":79,"owner_url":80,"languages":81,"stars":86,"forks":87,"last_commit_at":88,"license":89,"difficulty_score":90,"env_os":91,"env_gpu":92,"env_ram":92,"env_deps":93,"category_tags":99,"github_topics":78,"view_count":32,"oss_zip_url":78,"oss_zip_packed_at":78,"status":17,"created_at":100,"updated_at":101,"faqs":102,"releases":138},7893,"joshuayoes\u002Fios-simulator-mcp","ios-simulator-mcp","MCP server for interacting with the iOS simulator","ios-simulator-mcp 是一个基于模型上下文协议（MCP）构建的服务器工具，旨在让 AI 助手能够直接操控和交互 iOS 模拟器。它解决了传统开发中人工操作模拟器效率低、自动化测试脚本编写门槛高以及 AI 难以“看见”和“操作”手机界面的痛点。\n\n通过该工具，用户可以轻松获取当前运行的模拟器信息、启动模拟应用，并执行精细的界面操作，如点击指定坐标、输入文本、滑动屏幕，甚至读取整个界面的无障碍信息以理解 UI 结构。这意味着开发者可以让 AI 自动完成应用安装后的功能验证、回归测试或探索性测试，无需手动重复点击。\n\n这款工具特别适合 iOS 应用开发者、移动端测试工程师以及希望利用 AI 提升工作流的研发团队。对于正在探索 AI 辅助编程（如使用 Cursor 等编辑器）的用户来说，它能将自然语言指令直接转化为对模拟器的实际控制，极大提升了调试和测试的自动化程度。其技术亮点在于深度集成了 iOS 模拟器的底层控制能力，并通过标准化的 MCP 接口暴露给大模型，同时注重安全性，已修复了早期版本的命令注入漏洞，确保交互过程安全可靠。","# iOS Simulator MCP Server\n\n[![Install MCP Server](https:\u002F\u002Fcursor.com\u002Fdeeplink\u002Fmcp-install-dark.svg)](https:\u002F\u002Fcursor.com\u002Finstall-mcp?name=ios-simulator&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsImlvcy1zaW11bGF0b3ItbWNwIl19) [![NPM Version](https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fv\u002Fios-simulator-mcp)](https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002Fios-simulator-mcp)\n\nA Model Context Protocol (MCP) server for interacting with iOS simulators. This server allows you to interact with iOS simulators by getting information about them, controlling UI interactions, and inspecting UI elements.\n\n> **Security Notice**: Command injection vulnerabilities present in versions \u003C 1.3.3 have been fixed. Please update to v1.3.3 or later. See [SECURITY.md](SECURITY.md) for details.\n\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F453ebe7b-cc93-4ac2-b08d-0f8ac8339ad3\n\n## 🌟 Featured In\n\nThis project has been featured and mentioned in various publications and resources:\n\n- [Claude Code Best Practices article](https:\u002F\u002Fwww.anthropic.com\u002Fengineering\u002Fclaude-code-best-practices#:~:text=Write%20code%2C%20screenshot%20result%2C%20iterate) - Anthropic's engineering blog showcasing best practices\n- [React Native Newsletter Issue 187](https:\u002F\u002Fus3.campaign-archive.com\u002F?u=78d9e37a94fa0b522939163d4&id=656ed2c2cf#:~:text=iOS%20Simulator%20MCP%20Server) - Featured in the most popular React Native community newsletter\n- [Mobile Automation Newsletter - #56](https:\u002F\u002Ftestableapple.com\u002Fnewsletter\u002F56\u002F#:~:text=iOS-,iOS%20Simulator%20MCP,-%F0%9F%8E%99%EF%B8%8F%20Joshua%20Yoes) - Featured a long running newsletter about mobile testing and automation resources\n- [punkeye\u002Fawesome-mcp-server listing](https:\u002F\u002Fgithub.com\u002Fpunkpeye\u002Fawesome-mcp-servers) - Listed in one of the most popular curated awesome MCP servers collection\n\n## Tools\n\n### `get_booted_sim_id`\n\n**Description:** Get the ID of the currently booted iOS simulator\n\n**Parameters:** No Parameters\n\n### `open_simulator`\n\n**Description:** Opens the iOS Simulator application\n\n**Parameters:** No Parameters\n\n### `ui_describe_all`\n\n**Description:** Describes accessibility information for the entire screen in the iOS Simulator\n\n**Parameters:**\n\n```typescript\n{\n  \u002F**\n   * Udid of target, can also be set with the IDB_UDID env var\n   * Format: UUID (8-4-4-4-12 hexadecimal characters)\n   *\u002F\n  udid?: string;\n}\n```\n\n### `ui_tap`\n\n**Description:** Tap on the screen in the iOS Simulator\n\n**Parameters:**\n\n```typescript\n{\n  \u002F**\n   * Press duration in seconds (decimal numbers allowed)\n   *\u002F\n  duration?: string;\n  \u002F**\n   * Udid of target, can also be set with the IDB_UDID env var\n   * Format: UUID (8-4-4-4-12 hexadecimal characters)\n   *\u002F\n  udid?: string;\n  \u002F** The x-coordinate *\u002F\n  x: number;\n  \u002F** The y-coordinate *\u002F\n  y: number;\n}\n```\n\n### `ui_type`\n\n**Description:** Input text into the iOS Simulator\n\n**Parameters:**\n\n```typescript\n{\n  \u002F**\n   * Udid of target, can also be set with the IDB_UDID env var\n   * Format: UUID (8-4-4-4-12 hexadecimal characters)\n   *\u002F\n  udid?: string;\n  \u002F**\n   * Text to input\n   * Format: ASCII printable characters only\n   *\u002F\n  text: string;\n}\n```\n\n### `ui_swipe`\n\n**Description:** Swipe on the screen in the iOS Simulator\n\n**Parameters:**\n\n```typescript\n{\n  \u002F**\n   * Swipe duration in seconds (decimal numbers allowed)\n   *\u002F\n  duration?: string;\n  \u002F**\n   * Udid of target, can also be set with the IDB_UDID env var\n   * Format: UUID (8-4-4-4-12 hexadecimal characters)\n   *\u002F\n  udid?: string;\n  \u002F** The starting x-coordinate *\u002F\n  x_start: number;\n  \u002F** The starting y-coordinate *\u002F\n  y_start: number;\n  \u002F** The ending x-coordinate *\u002F\n  x_end: number;\n  \u002F** The ending y-coordinate *\u002F\n  y_end: number;\n  \u002F** The size of each step in the swipe (default is 1) *\u002F\n  delta?: number;\n}\n```\n\n### `ui_describe_point`\n\n**Description:** Returns the accessibility element at given co-ordinates on the iOS Simulator's screen\n\n**Parameters:**\n\n```typescript\n{\n  \u002F**\n   * Udid of target, can also be set with the IDB_UDID env var\n   * Format: UUID (8-4-4-4-12 hexadecimal characters)\n   *\u002F\n  udid?: string;\n  \u002F** The x-coordinate *\u002F\n  x: number;\n  \u002F** The y-coordinate *\u002F\n  y: number;\n}\n```\n\n### `ui_view`\n\n**Description:** Get the image content of a compressed screenshot of the current simulator view\n\n**Parameters:**\n\n```typescript\n{\n  \u002F**\n   * Udid of target, can also be set with the IDB_UDID env var\n   * Format: UUID (8-4-4-4-12 hexadecimal characters)\n   *\u002F\n  udid?: string;\n}\n```\n\n### `screenshot`\n\n**Description:** Takes a screenshot of the iOS Simulator\n\n**Parameters:**\n\n```typescript\n{\n  \u002F**\n   * Udid of target, can also be set with the IDB_UDID env var\n   * Format: UUID (8-4-4-4-12 hexadecimal characters)\n   *\u002F\n  udid?: string;\n  \u002F** File path where the screenshot will be saved. If relative, it uses the directory specified by the `IOS_SIMULATOR_MCP_DEFAULT_OUTPUT_DIR` env var, or `~\u002FDownloads` if not set. *\u002F\n  output_path: string;\n  \u002F** Image format (png, tiff, bmp, gif, or jpeg). Default is png. *\u002F\n  type?: \"png\" | \"tiff\" | \"bmp\" | \"gif\" | \"jpeg\";\n  \u002F** Display to capture (internal or external). Default depends on device type. *\u002F\n  display?: \"internal\" | \"external\";\n  \u002F** For non-rectangular displays, handle the mask by policy (ignored, alpha, or black) *\u002F\n  mask?: \"ignored\" | \"alpha\" | \"black\";\n}\n```\n\n### `record_video`\n\n**Description:** Records a video of the iOS Simulator using simctl directly\n\n**Parameters:**\n\n```typescript\n{\n  \u002F** Optional output path. If not provided, a default name will be used. The file will be saved in the directory specified by `IOS_SIMULATOR_MCP_DEFAULT_OUTPUT_DIR` or in `~\u002FDownloads` if the environment variable is not set. *\u002F\n  output_path?: string;\n  \u002F** Specifies the codec type: \"h264\" or \"hevc\". Default is \"hevc\". *\u002F\n  codec?: \"h264\" | \"hevc\";\n  \u002F** Display to capture: \"internal\" or \"external\". Default depends on device type. *\u002F\n  display?: \"internal\" | \"external\";\n  \u002F** For non-rectangular displays, handle the mask by policy: \"ignored\", \"alpha\", or \"black\". *\u002F\n  mask?: \"ignored\" | \"alpha\" | \"black\";\n  \u002F** Force the output file to be written to, even if the file already exists. *\u002F\n  force?: boolean;\n}\n```\n\n### `stop_recording`\n\n**Description:** Stops the simulator video recording using killall\n\n**Parameters:** No Parameters\n\n### `install_app`\n\n**Description:** Installs an app bundle (.app or .ipa) on the iOS Simulator\n\n**Parameters:**\n\n```typescript\n{\n  \u002F**\n   * Udid of target, can also be set with the IDB_UDID env var\n   * Format: UUID (8-4-4-4-12 hexadecimal characters)\n   *\u002F\n  udid?: string;\n  \u002F** Path to the app bundle (.app directory or .ipa file) to install *\u002F\n  app_path: string;\n}\n```\n\n### `launch_app`\n\n**Description:** Launches an app on the iOS Simulator by bundle identifier\n\n**Parameters:**\n\n```typescript\n{\n  \u002F**\n   * Udid of target, can also be set with the IDB_UDID env var\n   * Format: UUID (8-4-4-4-12 hexadecimal characters)\n   *\u002F\n  udid?: string;\n  \u002F** Bundle identifier of the app to launch (e.g., com.apple.mobilesafari) *\u002F\n  bundle_id: string;\n  \u002F** Terminate the app if it is already running before launching *\u002F\n  terminate_running?: boolean;\n}\n```\n\n## 💡 Use Case: QA Step via MCP Tool Calls\n\nThis MCP server allows AI assistants integrated with a Model Context Protocol (MCP) client to perform Quality Assurance tasks by making tool calls. This is useful immediately after implementing features to help ensure UI consistency and correct behavior.\n\n### How to Use\n\nAfter a feature implementation, instruct your AI assistant within its MCP client environment to use the available tools. For example, in Cursor's agent mode, you could use the prompts below to quickly validate and document UI interactions.\n\n### Example Prompts\n\n- **Verify UI Elements:**\n\n  ```\n  Verify all accessibility elements on the current screen\n  ```\n\n- **Confirm Text Input:**\n\n  ```\n  Enter \"QA Test\" into the text input field and confirm the input is correct\n  ```\n\n- **Check Tap Response:**\n\n  ```\n  Tap on coordinates x=250, y=400 and verify the expected element is triggered\n  ```\n\n- **Validate Swipe Action:**\n\n  ```\n  Swipe from x=150, y=600 to x=150, y=100 and confirm correct behavior\n  ```\n\n- **Detailed Element Check:**\n\n  ```\n  Describe the UI element at position x=300, y=350 to ensure proper labeling and functionality\n  ```\n\n- **Show Your AI Agent the Simulator Screen:**\n\n  ```\n  View the current simulator screen\n  ```\n\n- **Take Screenshot:**\n\n  ```\n  Take a screenshot of the current simulator screen and save it to my_screenshot.png\n  ```\n\n- **Record Video:**\n\n  ```\n  Start recording a video of the simulator screen (saves to the default output directory, which is `~\u002FDownloads` unless overridden by `IOS_SIMULATOR_MCP_DEFAULT_OUTPUT_DIR`)\n  ```\n\n- **Stop Recording:**\n\n  ```\n  Stop the current simulator screen recording\n  ```\n\n- **Install App:**\n\n  ```\n  Install the app at path\u002Fto\u002FMyApp.app on the simulator\n  ```\n\n- **Launch App:**\n  ```\n  Launch the Safari app (com.apple.mobilesafari) on the simulator\n  ```\n\n## Prerequisites\n\n- Node.js\n- macOS (as iOS simulators are only available on macOS)\n- [Xcode](https:\u002F\u002Fdeveloper.apple.com\u002Fxcode\u002Fresources\u002F) and iOS simulators installed\n- Facebook [IDB](https:\u002F\u002Ffbidb.io\u002F) tool [(see install guide)](https:\u002F\u002Ffbidb.io\u002Fdocs\u002Finstallation)\n\n## Installation\n\nThis section provides instructions for integrating the iOS Simulator MCP server with different Model Context Protocol (MCP) clients.\n\n### Installation with Cursor\n\nCursor manages MCP servers through its configuration file located at `~\u002F.cursor\u002Fmcp.json`.\n\n#### Option 1: Using NPX (Recommended)\n\n1.  Edit your Cursor MCP configuration file. You can often open it directly from Cursor or use a command like:\n    ```bash\n    # Open with your default editor (or use 'code', 'vim', etc.)\n    open ~\u002F.cursor\u002Fmcp.json\n    # Or use Cursor's command if available\n    # cursor ~\u002F.cursor\u002Fmcp.json\n    ```\n2.  Add or update the `mcpServers` section with the iOS simulator server configuration:\n    ```json\n    {\n      \"mcpServers\": {\n        \u002F\u002F ... other servers might be listed here ...\n        \"ios-simulator\": {\n          \"command\": \"npx\",\n          \"args\": [\"-y\", \"ios-simulator-mcp\"]\n        }\n      }\n    }\n    ```\n    Ensure the JSON structure is valid, especially if `mcpServers` already exists.\n3.  Restart Cursor for the changes to take effect.\n\n#### Option 2: Local Development\n\n1.  Clone this repository:\n    ```bash\n    git clone https:\u002F\u002Fgithub.com\u002Fjoshuayoes\u002Fios-simulator-mcp\n    cd ios-simulator-mcp\n    ```\n2.  Install dependencies:\n    ```bash\n    npm install\n    ```\n3.  Build the project:\n    ```bash\n    npm run build\n    ```\n4.  Edit your Cursor MCP configuration file (as shown in Option 1).\n5.  Add or update the `mcpServers` section, pointing to your local build:\n    ```json\n    {\n      \"mcpServers\": {\n        \u002F\u002F ... other servers might be listed here ...\n        \"ios-simulator\": {\n          \"command\": \"node\",\n          \"args\": [\"\u002Ffull\u002Fpath\u002Fto\u002Fyour\u002Fios-simulator-mcp\u002Fbuild\u002Findex.js\"]\n        }\n      }\n    }\n    ```\n    **Important:** Replace `\u002Ffull\u002Fpath\u002Fto\u002Fyour\u002F` with the absolute path to where you cloned the `ios-simulator-mcp` repository.\n6.  Restart Cursor for the changes to take effect.\n\n### Installation with Claude Code\n\nClaude Code CLI can manage MCP servers using the `claude mcp` commands or by editing its configuration files directly. For more details on Claude Code MCP configuration, refer to the [official documentation](https:\u002F\u002Fdocs.anthropic.com\u002Fen\u002Fdocs\u002Fagents-and-tools\u002Fclaude-code\u002Ftutorials#set-up-model-context-protocol-mcp).\n\n#### Option 1: Using NPX (Recommended)\n\n1.  Add the server using the `claude mcp add` command:\n    ```bash\n    claude mcp add ios-simulator npx ios-simulator-mcp\n    ```\n2.  Restart any running Claude Code sessions if necessary.\n\n#### Option 2: Local Development\n\n1.  Clone this repository, install dependencies, and build the project as described in the Cursor \"Local Development\" steps 1-3.\n2.  Add the server using the `claude mcp add` command, pointing to your local build:\n    ```bash\n    claude mcp add ios-simulator -- node \"\u002Ffull\u002Fpath\u002Fto\u002Fyour\u002Fios-simulator-mcp\u002Fbuild\u002Findex.js\"\n    ```\n    **Important:** Replace `\u002Ffull\u002Fpath\u002Fto\u002Fyour\u002F` with the absolute path to where you cloned the `ios-simulator-mcp` repository.\n3.  Restart any running Claude Code sessions if necessary.\n\n## Configuration\n\n### Environment Variables\n\n| Variable                               | Description                                                                                                                                                                                          | Example                                  |\n| -------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------- |\n| `IOS_SIMULATOR_MCP_FILTERED_TOOLS`     | A comma-separated list of tool names to filter out from being registered.                                                                                                                            | `screenshot,record_video,stop_recording` |\n| `IOS_SIMULATOR_MCP_DEFAULT_OUTPUT_DIR` | Specifies a default directory for output files like screenshots and video recordings. If not set, `~\u002FDownloads` will be used. This can be handy if your agent has limited access to the file system. | `~\u002FCode\u002Fawesome-project\u002Ftmp`             |\n| `IOS_SIMULATOR_MCP_IDB_PATH`           | Specifies a custom path to the IDB executable. If not set, `idb` will be used (assuming it's in your PATH). Useful if IDB is installed in a non-standard location.                                   | `~\u002Fbin\u002Fidb` or `\u002Fusr\u002Flocal\u002Fbin\u002Fidb`      |\n\n#### Configuration Example\n\n```json\n{\n  \"mcpServers\": {\n    \"ios-simulator\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"ios-simulator-mcp\"],\n      \"env\": {\n        \"IOS_SIMULATOR_MCP_FILTERED_TOOLS\": \"screenshot,record_video,stop_recording\",\n        \"IOS_SIMULATOR_MCP_DEFAULT_OUTPUT_DIR\": \"~\u002FCode\u002Fawesome-project\u002Ftmp\",\n        \"IOS_SIMULATOR_MCP_IDB_PATH\": \"~\u002Fbin\u002Fidb\"\n      }\n    }\n  }\n}\n```\n\n## MCP Registry Server Listings\n\n\u003Ca href=\"https:\u002F\u002Fglama.ai\u002Fmcp\u002Fservers\u002F@joshuayoes\u002Fios-simulator-mcp\">\n  \u003Cimg width=\"380\" height=\"200\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fjoshuayoes_ios-simulator-mcp_readme_366c5db22596.png\" alt=\"iOS Simulator MCP server\" \u002F>\n\u003C\u002Fa>\n\n[![MseeP.ai Security Assessment Badge](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fjoshuayoes_ios-simulator-mcp_readme_e0d0e4a291f1.png)](https:\u002F\u002Fmseep.ai\u002Fapp\u002Fjoshuayoes-ios-simulator-mcp)\n\n## License\n\nMIT\n","# iOS 模拟器 MCP 服务器\n\n[![安装 MCP 服务器](https:\u002F\u002Fcursor.com\u002Fdeeplink\u002Fmcp-install-dark.svg)](https:\u002F\u002Fcursor.com\u002Finstall-mcp?name=ios-simulator&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsImlvcy1zaW11bGF0b3ItbWNwIl19) [![NPM 版本](https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fv\u002Fios-simulator-mcp)](https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002Fios-simulator-mcp)\n\n这是一个用于与 iOS 模拟器交互的模型上下文协议 (MCP) 服务器。该服务器允许您获取模拟器信息、控制 UI 交互以及检查 UI 元素，从而实现对 iOS 模拟器的全面操作。\n\n> **安全提示**：低于 1.3.3 版本中存在命令注入漏洞，现已修复。请升级至 1.3.3 或更高版本。详情请参阅 [SECURITY.md](SECURITY.md)。\n\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F453ebe7b-cc93-4ac2-b08d-0f8ac8339ad3\n\n## 🌟 被推荐\n\n该项目已被多家媒体和资源收录并提及：\n\n- [Claude Code 最佳实践文章](https:\u002F\u002Fwww.anthropic.com\u002Fengineering\u002Fclaude-code-best-practices#:~:text=Write%20code%2C%20screenshot%20result%2C%20iterate) - Anthropic 工程博客中的最佳实践分享\n- [React Native Newsletter 第 187 期](https:\u002F\u002Fus3.campaign-archive.com\u002F?u=78d9e37a94fa0b522939163d4&id=656ed2c2cf#:~:text=iOS%20Simulator%20MCP%20Server) - 在最受欢迎的 React Native 社区简报中被重点介绍\n- [移动自动化简报 - 第 56 期](https:\u002F\u002Ftestableapple.com\u002Fnewsletter\u002F56\u002F#:~:text=iOS-,iOS%20Simulator%20MCP,-%F0%9F%8E%99%EF%B8%8F%20Joshua%20Yoes) - 长期关注移动测试与自动化资源的简报中有所提及\n- [punkeye\u002Fawesome-mcp-server 列表](https:\u002F\u002Fgithub.com\u002Fpunkpeye\u002Fawesome-mcp-servers) - 被收录于最受欢迎的精选 MCP 服务器合集之一\n\n## 工具\n\n### `get_booted_sim_id`\n\n**描述**：获取当前已启动的 iOS 模拟器的 ID\n\n**参数**：无参数\n\n### `open_simulator`\n\n**描述**：打开 iOS 模拟器应用程序\n\n**参数**：无参数\n\n### `ui_describe_all`\n\n**描述**：描述 iOS 模拟器中整个屏幕的可访问性信息\n\n**参数**：\n\n```typescript\n{\n  \u002F**\n   * 目标设备的 UDID，也可通过 IDB_UDID 环境变量设置\n   * 格式：UUID（8-4-4-4-12 个十六进制字符）\n   *\u002F\n  udid?: string;\n}\n```\n\n### `ui_tap`\n\n**描述**：在 iOS 模拟器屏幕上执行点击操作\n\n**参数**：\n\n```typescript\n{\n  \u002F**\n   * 按压持续时间，单位为秒（允许使用小数）\n   *\u002F\n  duration?: string;\n  \u002F**\n   * 目标设备的 UDID，也可通过 IDB_UDID 环境变量设置\n   * 格式：UUID（8-4-4-4-12 个十六进制字符）\n   *\u002F\n  udid?: string;\n  \u002F** X 坐标 *\u002F\n  x: number;\n  \u002F** Y 坐标 *\u002F\n  y: number;\n}\n```\n\n### `ui_type`\n\n**描述**：向 iOS 模拟器输入文本\n\n**参数**：\n\n```typescript\n{\n  \u002F**\n   * 目标设备的 UDID，也可通过 IDB_UDID 环境变量设置\n   * 格式：UUID（8-4-4-4-12 个十六进制字符）\n   *\u002F\n  udid?: string;\n  \u002F**\n   * 要输入的文本\n   * 格式：仅限 ASCII 可打印字符\n   *\u002F\n  text: string;\n}\n```\n\n### `ui_swipe`\n\n**描述**：在 iOS 模拟器屏幕上执行滑动操作\n\n**参数**：\n\n```typescript\n{\n  \u002F**\n   * 滑动持续时间，单位为秒（允许使用小数）\n   *\u002F\n  duration?: string;\n  \u002F**\n   * 目标设备的 UDID，也可通过 IDB_UDID 环境变量设置\n   * 格式：UUID（8-4-4-4-12 个十六进制字符）\n   *\u002F\n  udid?: string;\n  \u002F** 起始 X 坐标 *\u002F\n  x_start: number;\n  \u002F** 起始 Y 坐标 *\u002F\n  y_start: number;\n  \u002F** 结束 X 坐标 *\u002F\n  x_end: number;\n  \u002F** 结束 Y 坐标 *\u002F\n  y_end: number;\n  \u002F** 滑动过程中每一步的增量（默认为 1） *\u002F\n  delta?: number;\n}\n```\n\n### `ui_describe_point`\n\n**描述**：返回 iOS 模拟器屏幕上指定坐标处的可访问性元素\n\n**参数**：\n\n```typescript\n{\n  \u002F**\n   * 目标设备的 UDID，也可通过 IDB_UDID 环境变量设置\n   * 格式：UUID（8-4-4-4-12 个十六进制字符）\n   *\u002F\n  udid?: string;\n  \u002F** X 坐标 *\u002F\n  x: number;\n  \u002F** Y 坐标 *\u002F\n  y: number;\n}\n```\n\n### `ui_view`\n\n**描述**：获取当前模拟器视图的压缩截图图像内容\n\n**参数**：\n\n```typescript\n{\n  \u002F**\n   * 目标设备的 UDID，也可通过 IDB_UDID 环境变量设置\n   * 格式：UUID（8-4-4-4-12 个十六进制字符）\n   *\u002F\n  udid?: string;\n}\n```\n\n### `screenshot`\n\n**描述**：截取 iOS 模拟器的屏幕快照\n\n**参数**：\n\n```typescript\n{\n  \u002F**\n   * 目标设备的 UDID，也可通过 IDB_UDID 环境变量设置\n   * 格式：UUID（8-4-4-4-12 个十六进制字符）\n   *\u002F\n  udid?: string;\n  \u002F** 截图保存的文件路径。如果是相对路径，则使用 IOS_SIMULATOR_MCP_DEFAULT_OUTPUT_DIR 环境变量指定的目录；若未设置，则保存到 ~\u002FDownloads。 *\u002F\n  output_path: string;\n  \u002F** 图像格式（png、tiff、bmp、gif 或 jpeg）。默认为 png。 *\u002F\n  type?: \"png\" | \"tiff\" | \"bmp\" | \"gif\" | \"jpeg\";\n  \u002F** 要捕获的显示画面（内部或外部）。默认值取决于设备类型。 *\u002F\n  display?: \"internal\" | \"external\";\n  \u002F** 对于非矩形屏幕，按策略处理遮罩（忽略、透明或黑色）。 *\u002F\n  mask?: \"ignored\" | \"alpha\" | \"black\";\n}\n```\n\n### `record_video`\n\n**描述**：使用 simctl 直接录制 iOS 模拟器视频\n\n**参数**：\n\n```typescript\n{\n  \u002F** 可选的输出路径。若未提供，则会使用默认名称。文件将保存在 IOS_SIMULATOR_MCP_DEFAULT_OUTPUT_DIR 指定的目录中，或在环境变量未设置时保存到 ~\u002FDownloads。 *\u002F\n  output_path?: string;\n  \u002F** 指定编解码器类型：“h264”或“hevc”。默认为 “hevc”。 *\u002F\n  codec?: \"h264\" | \"hevc\";\n  \u002F** 要捕获的显示画面：“internal” 或 “external”。默认值取决于设备类型。 *\u002F\n  display?: \"internal\" | \"external\";\n  \u002F** 对于非矩形屏幕，按策略处理遮罩：“ignored”、“alpha” 或 “black”。 *\u002F\n  mask?: \"ignored\" | \"alpha\" | \"black\";\n  \u002F** 强制写入输出文件，即使文件已存在。 *\u002F\n  force?: boolean;\n}\n```\n\n### `stop_recording`\n\n**描述**：使用 killall 命令停止模拟器视频录制\n\n**参数**：无参数\n\n### `install_app`\n\n**描述**：在 iOS 模拟器上安装应用包（.app 或 .ipa 文件）\n\n**参数**：\n\n```typescript\n{\n  \u002F**\n   * 目标设备的 UDID，也可通过 IDB_UDID 环境变量设置\n   * 格式：UUID（8-4-4-4-12 个十六进制字符）\n   *\u002F\n  udid?: string;\n  \u002F** 要安装的应用包路径（.app 目录或 .ipa 文件） *\u002F\n  app_path: string;\n}\n```\n\n### `launch_app`\n\n**描述:** 通过捆绑标识符在 iOS 模拟器上启动应用\n\n**参数:**\n\n```typescript\n{\n  \u002F**\n   * 目标设备的 UDID，也可以通过 IDB_UDID 环境变量设置\n   * 格式：UUID（8-4-4-4-12 个十六进制字符）\n   *\u002F\n  udid?: string;\n  \u002F** 要启动的应用程序的捆绑标识符（例如 com.apple.mobilesafari） *\u002F\n  bundle_id: string;\n  \u002F** 如果应用程序已经在运行，则在启动前将其终止 *\u002F\n  terminate_running?: boolean;\n}\n```\n\n## 💡 使用场景：通过 MCP 工具调用进行 QA 测试\n\n该 MCP 服务器允许集成 Model Context Protocol (MCP) 客户端的 AI 助手通过工具调用来执行质量保证任务。这在功能实现后非常有用，可以帮助确保 UI 的一致性和正确的行为。\n\n### 使用方法\n\n在功能实现之后，指示您的 AI 助手在其 MCP 客户端环境中使用可用的工具。例如，在 Cursor 的代理模式下，您可以使用以下提示快速验证并记录 UI 交互。\n\n### 示例提示\n\n- **验证 UI 元素：**\n\n  ```\n  验证当前屏幕上的所有可访问性元素\n  ```\n\n- **确认文本输入：**\n\n  ```\n  在文本输入框中输入“QA Test”，并确认输入内容正确\n  ```\n\n- **检查点击响应：**\n\n  ```\n  点击坐标 x=250, y=400，并验证预期的元素是否被触发\n  ```\n\n- **验证滑动操作：**\n\n  ```\n  从 x=150, y=600 滑动到 x=150, y=100，并确认行为正确\n  ```\n\n- **详细检查元素：**\n\n  ```\n  描述位置 x=300, y=350 处的 UI 元素，以确保其标签和功能正常\n  ```\n\n- **向 AI 代理展示模拟器屏幕：**\n\n  ```\n  查看当前模拟器屏幕\n  ```\n\n- **截取屏幕截图：**\n\n  ```\n  截取当前模拟器屏幕的截图，并保存为 my_screenshot.png\n  ```\n\n- **录制视频：**\n\n  ```\n  开始录制模拟器屏幕的视频（保存到默认输出目录，默认为 ~\u002FDownloads，除非被 IOS_SIMULATOR_MCP_DEFAULT_OUTPUT_DIR 覆盖）\n  ```\n\n- **停止录制：**\n\n  ```\n  停止当前模拟器屏幕的录制\n  ```\n\n- **安装应用：**\n\n  ```\n  将位于 path\u002Fto\u002FMyApp.app 的应用安装到模拟器上\n  ```\n\n- **启动应用：**\n  ```\n  在模拟器上启动 Safari 应用程序（com.apple.mobilesafari）\n  ```\n\n## 先决条件\n\n- Node.js\n- macOS（因为 iOS 模拟器仅在 macOS 上可用）\n- 已安装 [Xcode](https:\u002F\u002Fdeveloper.apple.com\u002Fxcode\u002F) 和 iOS 模拟器\n- Facebook [IDB](https:\u002F\u002Ffbidb.io\u002F) 工具 [(参见安装指南)](https:\u002F\u002Ffbidb.io\u002Fdocs\u002Finstallation)\n\n## 安装\n\n本节提供了将 iOS 模拟器 MCP 服务器与不同 Model Context Protocol (MCP) 客户端集成的说明。\n\n### 使用 Cursor 安装\n\nCursor 通过位于 `~\u002F.cursor\u002Fmcp.json` 的配置文件管理 MCP 服务器。\n\n#### 方法一：使用 NPX（推荐）\n\n1. 编辑您的 Cursor MCP 配置文件。您通常可以直接从 Cursor 打开它，或者使用如下命令：\n    ```bash\n    # 使用默认编辑器打开（或使用 'code'、'vim' 等）\n    open ~\u002F.cursor\u002Fmcp.json\n    # 或者如果 Cursor 提供相关命令，可以使用\n    # cursor ~\u002F.cursor\u002Fmcp.json\n    ```\n2. 在 `mcpServers` 部分添加或更新 iOS 模拟器服务器配置：\n    ```json\n    {\n      \"mcpServers\": {\n        \u002F\u002F ... 可能还有其他服务器在此列出 ...\n        \"ios-simulator\": {\n          \"command\": \"npx\",\n          \"args\": [\"-y\", \"ios-simulator-mcp\"]\n        }\n      }\n    }\n    ```\n    请确保 JSON 结构有效，尤其是在 `mcpServers` 已经存在的情况下。\n3. 重启 Cursor 以使更改生效。\n\n#### 方法二：本地开发\n\n1. 克隆此仓库：\n    ```bash\n    git clone https:\u002F\u002Fgithub.com\u002Fjoshuayoes\u002Fios-simulator-mcp\n    cd ios-simulator-mcp\n    ```\n2. 安装依赖项：\n    ```bash\n    npm install\n    ```\n3. 构建项目：\n    ```bash\n    npm run build\n    ```\n4. 编辑您的 Cursor MCP 配置文件（如方法一所示）。\n5. 在 `mcpServers` 部分添加或更新条目，指向您的本地构建：\n    ```json\n    {\n      \"mcpServers\": {\n        \u002F\u002F ... 可能还有其他服务器在此列出 ...\n        \"ios-simulator\": {\n          \"command\": \"node\",\n          \"args\": [\"\u002Ffull\u002Fpath\u002Fto\u002Fyour\u002Fios-simulator-mcp\u002Fbuild\u002Findex.js\"]\n        }\n      }\n    }\n    ```\n    **重要提示：** 将 `\u002Ffull\u002Fpath\u002Fto\u002Fyour\u002F` 替换为您克隆 `ios-simulator-mcp` 仓库的绝对路径。\n6. 重启 Cursor 以使更改生效。\n\n### 使用 Claude Code 安装\n\nClaude Code CLI 可以通过 `claude mcp` 命令或直接编辑其配置文件来管理 MCP 服务器。有关 Claude Code MCP 配置的更多详细信息，请参阅[官方文档](https:\u002F\u002Fdocs.anthropic.com\u002Fen\u002Fdocs\u002Fagents-and-tools\u002Fclaude-code\u002Ftutorials#set-up-model-context-protocol-mcp)。\n\n#### 方法一：使用 NPX（推荐）\n\n1. 使用 `claude mcp add` 命令添加服务器：\n    ```bash\n    claude mcp add ios-simulator npx ios-simulator-mcp\n    ```\n2. 如有必要，重启任何正在运行的 Claude Code 会话。\n\n#### 方法二：本地开发\n\n1. 克隆此仓库，按照 Cursor “本地开发”步骤 1–3 安装依赖并构建项目。\n2. 使用 `claude mcp add` 命令添加服务器，指向您的本地构建：\n    ```bash\n    claude mcp add ios-simulator -- node \"\u002Ffull\u002Fpath\u002Fto\u002Fyour\u002Fios-simulator-mcp\u002Fbuild\u002Findex.js\"\n    ```\n    **重要提示：** 将 `\u002Ffull\u002Fpath\u002Fto\u002Fyour\u002F` 替换为您克隆 `ios-simulator-mcp` 仓库的绝对路径。\n3. 如有必要，重启任何正在运行的 Claude Code 会话。\n\n## 配置\n\n### 环境变量\n\n| 变量                               | 描述                                                                                                                                                                                          | 示例                                  |\n| -------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------- |\n| `IOS_SIMULATOR_MCP_FILTERED_TOOLS`     | 用于过滤掉不希望被注册的工具名称，以逗号分隔。                                                                                                                            | `screenshot,record_video,stop_recording` |\n| `IOS_SIMULATOR_MCP_DEFAULT_OUTPUT_DIR` | 指定截图和视频录制等输出文件的默认目录。如果未设置，则使用 `~\u002FDownloads`。这在代理对文件系统访问权限有限时非常有用。 | `~\u002FCode\u002Fawesome-project\u002Ftmp`             |\n| `IOS_SIMULATOR_MCP_IDB_PATH`           | 指定 IDB 可执行文件的自定义路径。如果未设置，将使用 `idb`（假设它已在您的 PATH 中）。当 IDB 安装在非标准位置时非常有用。                                   | `~\u002Fbin\u002Fidb` 或 `\u002Fusr\u002Flocal\u002Fbin\u002Fidb`      |\n\n#### 配置示例\n\n```json\n{\n  \"mcpServers\": {\n    \"ios-simulator\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"ios-simulator-mcp\"],\n      \"env\": {\n        \"IOS_SIMULATOR_MCP_FILTERED_TOOLS\": \"screenshot,record_video,stop_recording\",\n        \"IOS_SIMULATOR_MCP_DEFAULT_OUTPUT_DIR\": \"~\u002FCode\u002Fawesome-project\u002Ftmp\",\n        \"IOS_SIMULATOR_MCP_IDB_PATH\": \"~\u002Fbin\u002Fidb\"\n      }\n    }\n  }\n}\n```\n\n## MCP 注册服务器列表\n\n\u003Ca href=\"https:\u002F\u002Fglama.ai\u002Fmcp\u002Fservers\u002F@joshuayoes\u002Fios-simulator-mcp\">\n  \u003Cimg width=\"380\" height=\"200\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fjoshuayoes_ios-simulator-mcp_readme_366c5db22596.png\" alt=\"iOS 模拟器 MCP 服务器\" \u002F>\n\u003C\u002Fa>\n\n[![MseeP.ai 安全评估徽章](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fjoshuayoes_ios-simulator-mcp_readme_e0d0e4a291f1.png)](https:\u002F\u002Fmseep.ai\u002Fapp\u002Fjoshuayoes-ios-simulator-mcp)\n\n## 许可证\n\nMIT","# ios-simulator-mcp 快速上手指南\n\n`ios-simulator-mcp` 是一个基于模型上下文协议（MCP）的服务器工具，允许 AI 助手直接与 macOS 上的 iOS 模拟器进行交互。你可以用它来检查 UI 元素、执行点击\u002F滑动\u002F输入操作、截屏录屏以及安装启动应用，非常适合自动化测试和 QA 流程。\n\n## 环境准备\n\n在开始之前，请确保你的开发环境满足以下要求：\n\n*   **操作系统**：macOS（iOS 模拟器仅支持 macOS）。\n*   **运行时环境**：已安装 [Node.js](https:\u002F\u002Fnodejs.org\u002F)。\n*   **开发工具**：已安装 [Xcode](https:\u002F\u002Fdeveloper.apple.com\u002Fxcode\u002F) 并配置好 iOS Simulators。\n*   **核心依赖**：必须安装 Facebook 的 [IDB](https:\u002F\u002Ffbidb.io\u002F) 工具。\n    *   推荐使用 Homebrew 安装：\n        ```bash\n        brew tap facebook\u002Ffb\n        brew install idb-companion\n        ```\n\n## 安装步骤\n\n你可以根据使用的 MCP 客户端选择以下一种安装方式。\n\n### 方式一：Cursor 编辑器（推荐）\n\nCursor 通过 `~\u002F.cursor\u002Fmcp.json` 配置文件管理 MCP 服务。\n\n1.  打开配置文件：\n    ```bash\n    open ~\u002F.cursor\u002Fmcp.json\n    ```\n2.  在 `mcpServers` 对象中添加以下配置（使用 `npx` 无需本地构建）：\n    ```json\n    {\n      \"mcpServers\": {\n        \"ios-simulator\": {\n          \"command\": \"npx\",\n          \"args\": [\"-y\", \"ios-simulator-mcp\"]\n        }\n      }\n    }\n    ```\n3.  重启 Cursor 使配置生效。\n\n### 方式二：Claude Code CLI\n\n如果你使用 Claude Code 命令行工具：\n\n1.  运行以下命令添加服务：\n    ```bash\n    claude mcp add ios-simulator npx ios-simulator-mcp\n    ```\n2.  重启当前的 Claude Code 会话。\n\n### 方式三：本地开发模式\n\n如果你需要修改源码或调试：\n\n1.  克隆仓库并安装依赖：\n    ```bash\n    git clone https:\u002F\u002Fgithub.com\u002Fjoshuayoes\u002Fios-simulator-mcp\n    cd ios-simulator-mcp\n    npm install\n    npm run build\n    ```\n2.  在 MCP 配置文件中指向本地构建文件（以 Cursor 为例）：\n    ```json\n    {\n      \"mcpServers\": {\n        \"ios-simulator\": {\n          \"command\": \"node\",\n          \"args\": [\"\u002F绝对路径\u002Fto\u002Fios-simulator-mcp\u002Fbuild\u002Findex.js\"]\n        }\n      }\n    }\n    ```\n    *注意：请将 `\u002F绝对路径\u002Fto\u002F` 替换为你本地的实际路径。*\n\n## 基本使用\n\n安装完成后，在支持 MCP 的 AI 助手（如 Cursor Agent 或 Claude Code）中，直接通过自然语言指令调用工具即可。AI 会自动识别并调用相应的 MCP 工具。\n\n### 1. 查看模拟器屏幕\n让 AI 获取当前模拟器的界面截图或描述：\n> \"View the current simulator screen\"\n> \"Verify all accessibility elements on the current screen\"\n\n### 2. 执行 UI 交互\n让 AI 执行点击、输入或滑动手势：\n> \"Tap on coordinates x=250, y=400\"\n> \"Enter 'QA Test' into the text input field\"\n> \"Swipe from x=150, y=600 to x=150, y=100\"\n\n### 3. 应用管理\n安装或启动特定的 App：\n> \"Install the app at path\u002Fto\u002FMyApp.app on the simulator\"\n> \"Launch the Safari app (com.apple.mobilesafari) on the simulator\"\n\n### 4. 记录与截图\n保存测试证据：\n> \"Take a screenshot of the current simulator screen and save it to my_screenshot.png\"\n> \"Start recording a video of the simulator screen\"\n> \"Stop the current simulator screen recording\"\n\n---\n**安全提示**：请确保使用 v1.3.3 或更高版本，以修复早期版本中存在的命令注入漏洞。","某移动端开发团队正在为一款电商 App 进行回归测试，需要快速验证新上线的“搜索并加入购物车”流程在 iOS 环境下的可用性。\n\n### 没有 ios-simulator-mcp 时\n- 测试人员必须手动启动模拟器，肉眼查找元素坐标，再编写硬编码的自动化脚本，效率极低且难以维护。\n- 当界面布局微调导致按钮位置偏移时，原有的点击坐标失效，脚本频繁报错，排查问题需反复截图对比。\n- 无法直接获取屏幕元素的无障碍属性（Accessibility Label），只能依赖猜测或临时添加调试代码来定位特定组件。\n- 每次迭代都需要人工重复执行“打开应用 - 输入关键词 - 滑动列表 - 点击购买”的操作，占用大量人力时间。\n\n### 使用 ios-simulator-mcp 后\n- 开发者通过自然语言指令让 AI 调用 `ui_describe_all` 自动分析全屏元素，直接生成基于语义的交互逻辑，无需手动计算坐标。\n- 利用 `ui_tap` 和 `ui_type` 工具，AI 可根据实时反馈动态调整操作，即使按钮位置变化也能精准识别并点击，大幅提升脚本鲁棒性。\n- 通过 `ui_describe_point` 即时查询任意坐标的元素信息，快速确认“加入购物车”按钮是否可访问，彻底消除定位盲区。\n- 将整个测试流程转化为自动化工作流，AI 自主控制模拟器完成从启动到下单的全链路操作，将单次验证时间从 10 分钟缩短至 30 秒。\n\nios-simulator-mcp 将繁琐的手动模拟操作转化为智能、自适应的自动化流程，让移动端测试像对话一样简单高效。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fjoshuayoes_ios-simulator-mcp_1789c5aa.png","joshuayoes","Joshua Yoes","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fjoshuayoes_87d0941e.jpg","Staff Software Engineer @infinitered. React Native wizard. Open source contributor and codebase explorer. ","Infinite Red","Vancouver, Washington",null,"joshuayoes.com","https:\u002F\u002Fgithub.com\u002Fjoshuayoes",[82],{"name":83,"color":84,"percentage":85},"JavaScript","#f1e05a",100,1873,79,"2026-04-15T07:26:41","MIT",4,"macOS","未说明",{"notes":94,"python":92,"dependencies":95},"该工具仅支持 macOS 系统，因为 iOS 模拟器仅在 macOS 上可用。必须安装 Xcode 及 iOS 模拟器，并需额外安装 Facebook IDB 工具。运行环境依赖 Node.js，而非 Python。",[96,97,98],"Node.js","Xcode","Facebook IDB",[13,52],"2026-03-27T02:49:30.150509","2026-04-16T08:15:24.130301",[103,108,113,118,123,128,133],{"id":104,"question_zh":105,"answer_zh":106,"source_url":107},35363,"调用 ui_tap 或 ui_swipe 工具时出现 'Error calling tool: undefined' 错误怎么办？","这通常是因为系统中未安装 `idb` (Facebook IDB) 工具。请按照官方文档安装：https:\u002F\u002Ffbidb.io\u002Fdocs\u002Finstallation\n\n可以通过调试模式确认错误，日志中通常会显示 `\u002Fbin\u002Fsh: idb: command not found`。安装完成后即可正常使用点击和滑动工具。","https:\u002F\u002Fgithub.com\u002Fjoshuayoes\u002Fios-simulator-mcp\u002Fissues\u002F15",{"id":109,"question_zh":110,"answer_zh":111,"source_url":112},35364,"运行 'claude mcp add' 命令时报 'unknown option --command' 错误如何解决？","这是因为命令格式已过时。请使用以下更新后的命令格式：\n\n`claude mcp add ios-simulator npx ios-simulator-mcp`\n\n此外，请确保在执行命令前已经启动了一个 iOS 模拟器，否则即使配置成功也无法正常工作。","https:\u002F\u002Fgithub.com\u002Fjoshuayoes\u002Fios-simulator-mcp\u002Fissues\u002F14",{"id":114,"question_zh":115,"answer_zh":116,"source_url":117},35365,"截图文件默认保存到 Downloads 目录，如何更改保存路径或保存到工作目录？","目前可以在调用截图工具时，直接在参数中指定绝对路径来改变保存位置。例如，在提示词中让 Agent 使用 `$PWD\u002F\u003Cdescription>.png` 这样的路径。\n\n另外，如果只是为了让 AI 查看屏幕内容而不需要保存文件，建议使用 `ui_view` 工具，它会自动压缩图片以适应传输限制，且不会生成大文件。","https:\u002F\u002Fgithub.com\u002Fjoshuayoes\u002Fios-simulator-mcp\u002Fissues\u002F25",{"id":119,"question_zh":120,"answer_zh":121,"source_url":122},35366,"遇到 'idb: command not found' 错误时，有哪些推荐的安装方式？","项目已优化了错误提示，建议通过以下方式之一安装 `idb`：\n1. 使用 Homebrew: `brew install idb-companion`\n2. 使用 pipx (推荐用于隔离环境)\n3. 使用 asdf 管理 Python 环境后安装\n\n安装完成后请确保该命令可在终端中直接运行。","https:\u002F\u002Fgithub.com\u002Fjoshuayoes\u002Fios-simulator-mcp\u002Fissues\u002F3",{"id":124,"question_zh":125,"answer_zh":126,"source_url":127},35367,"如何在虚拟环境中自定义 idb 二进制文件的路径？","从 v1.5.1 版本开始，支持通过环境变量自定义 idb 路径。您可以设置 `IOS_SIMULATOR_MCP_IDB_PATH` 环境变量指向 idb 的具体位置，这样就不需要修改系统的 PATH 变量了。\n\n配置示例（在 MCP 配置中）：\n```json\n\"env\": {\n  \"IOS_SIMULATOR_MCP_IDB_PATH\": \"\u002Fyour\u002Fcustom\u002Fpath\u002Fto\u002Fidb\"\n}\n```","https:\u002F\u002Fgithub.com\u002Fjoshuayoes\u002Fios-simulator-mcp\u002Fissues\u002F36",{"id":129,"question_zh":130,"answer_zh":131,"source_url":132},35368,"截图文件超过 5MB 导致 Claude API 报错怎么办？","这是由于原始截图文件过大。解决方案有两种：\n1. 优先使用 `ui_view` 工具代替 `screenshot` 工具，前者内置了图片压缩功能，专为 AI 视觉设计。\n2. 如果不需要保存截图文件，可以在配置中过滤掉 `screenshot` 工具，强制 AI 使用 `ui_view`。配置如下：\n```json\n{\n  \"mcpServers\": {\n    \"ios-simulator\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"ios-simulator-mcp\"],\n      \"env\": {\n        \"IOS_SIMULATOR_MCP_FILTERED_TOOLS\": \"screenshot\"\n      }\n    }\n  }\n}\n```","https:\u002F\u002Fgithub.com\u002Fjoshuayoes\u002Fios-simulator-mcp\u002Fissues\u002F32",{"id":134,"question_zh":135,"answer_zh":136,"source_url":137},35369,"项目报告了依赖包的安全漏洞，是否影响生产环境使用？","部分被报告的漏洞（如 `@modelcontextprotocol\u002Finspector`）仅存在于开发依赖中，并未包含在最终发布的服务器包内，因此对普通用户没有安全风险。维护者会定期更新生产依赖（如 `@modelcontextprotocol\u002Fsdk` 和 `zod`）以修复实际存在的漏洞，建议保持更新至最新版本（如 v1.5.0+）。","https:\u002F\u002Fgithub.com\u002Fjoshuayoes\u002Fios-simulator-mcp\u002Fissues\u002F37",[139,144,149,154,159,164,169,174,179,184,189,194,199,204],{"id":140,"version":141,"summary_zh":142,"released_at":143},280426,"1.5.2","# iOS 模拟器 MCP 1.5.2\n\n## 改进\n\n- **工具注释：** 为所有工具添加了 MCP 工具注释（`title`、`readOnlyHint`、`openWorldHint`），以更好地支持客户端集成和功能发现。\n- **简化 npm 发布：** 更新了 GitHub 工作流，使用 npm 受信任的发布者，不再需要 `NPM_TOKEN` 秘密和证明标志。\n- **Node.js 版本更新：** 将工作流升级至使用 Node.js 24.x 进行发布。\n\n## 文档\n\n- **故障排除更新：** 改进了 idb 安装说明，提供了更清晰的 asdf 设置步骤，并修正了验证命令（使用 `idb -h` 而不是 `idb --version`）。\n- **Cursor 命令：** 将发布自动化从 `.cursor\u002Frules` 格式迁移到 `.cursor\u002Fcommands` 格式。\n\n## 构建\n\n- **package.json 修复：** 修正了 bin 路径格式和仓库 URL 格式。\n- **版本号更新：** 将项目版本更新至 1.5.2。\n\n","2025-12-31T19:28:17",{"id":145,"version":146,"summary_zh":147,"released_at":148},280427,"v1.5.1","# iOS 模拟器 MCP v1.5.1\n\n## ✨ 功能\n\n- **自定义 IDB 路径配置：** 通过 `IOS_SIMULATOR_MCP_IDB_PATH` 环境变量新增对自定义 IDB 可执行文件路径的支持，允许用户指定非标准的 IDB 安装位置。解决了 #36 问题。\n\n## 📈 改进\n\n- **增强的 IDB 命令处理：** 使用新的 `idb()` 包装函数集中管理 IDB 命令的执行。\n- **路径验证：** 新增验证逻辑，确保在使用自定义 IDB 路径之前该路径确实存在。\n- **波浪号展开：** 在自定义 IDB 路径中新增对 `~\u002F` 的展开支持。\n\n## 📚 文档\n\n- **环境变量：** 新增了对 `IOS_SIMULATOR_MCP_IDB_PATH` 环境变量的文档说明，并提供了使用示例。\n\n## 📝 内部变更\n\n- 将所有 `idb` 命令调用重构为使用统一的 `idb()` 函数。\n- 添加了 `getIdbPath()` 辅助函数，用于获取并验证 IDB 可执行文件的路径。\n\n## 🔧 构建\n\n- **版本号更新：** 将项目版本从 1.5.0 更新至 1.5.1。","2025-10-07T18:10:33",{"id":150,"version":151,"summary_zh":152,"released_at":153},280428,"v1.5.0","# iOS 模拟器 MCP v1.5.0\n\n## ✨ 功能\n\n- **应用管理工具**：新增了三个用于在模拟器上管理 iOS 应用的工具：\n  - `open_simulator` - 打开 iOS 模拟器应用程序\n  \n     https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Fb344e981-8a54-47aa-829b-9228b7ac9d51\n     \n  - `install_app` - 在模拟器上安装应用包（.app 或 .ipa 文件）\n  \n     https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F09d991f6-0457-4c1b-b367-9075ae84c2a5\n\n  - `launch_app` - 通过应用的 Bundle Identifier 启动应用，并支持强制终止当前正在运行的应用。\n  \n    https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F18d9b341-915d-444f-bec6-0eb56c4871b1\n\n\n感谢 @webcoyote 在 #39 中做出的贡献！\n\n## 🔒 安全性\n\n- **依赖项更新**：更新了项目依赖项：\n  - `@modelcontextprotocol\u002Fsdk` 从 1.6.0 升级到 1.18.2\n  - `zod` 从 3.24.2 升级到 3.25.76\n  - `@modelcontextprotocol\u002Finspector` 从 0.4.1 升级到 0.16.8\n\n## 📚 文档\n\n- **贡献指南**：在 `CONTRIBUTING.md` 中添加了详细的依赖项管理指南，以确保在升级过程中与 MCP SDK 的兼容性。\n- **质量保证文档**：更新了照片应用的测试用例，加入了针对不同 iOS 版本的兼容性说明。\n\n## 🔧 构建\n\n- **版本号更新**：将项目版本从 1.4.3 更新为 1.5.0，修改了 `package.json` 和 `package-lock.json` 文件。","2025-10-01T21:19:41",{"id":155,"version":156,"summary_zh":157,"released_at":158},280429,"v1.4.3","# iOS 模拟器 MCP v1.4.3\n\n## 🌟 功能特性\n\n- **滑动持续时间参数：** 为 `ui_swipe` 工具新增了可选的 `duration` 参数，支持使用小数秒值（例如 0.1 表示快速滑动）来更精确地控制滑动手势。感谢 @dennislysenko 的贡献！\n\n![滑动持续时间参数](https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F1fb630ed-208f-4521-a893-baa1f7ec7c6c)\n\n## 📚 文档\n\n- **精选发表专栏：** 在 README 中新增了一个专栏，重点介绍了项目在多个平台上的报道，包括 Anthropic 的工程博客、React Native 新闻简报、移动自动化新闻简报以及 awesome-mcp-servers 收录列表。\n- **贡献指南：** 引入了全面的 `CONTRIBUTING.md` 文件，详细说明了贡献流程、项目理念、测试要求及开发环境搭建等内容。\n- **拉取请求模板：** 添加了标准化的 PR 模板，以确保贡献内容的一致性和规范化的测试流程。\n\n## 🔧 构建\n\n- **版本号更新：** 将项目版本更新至 v1.4.3。","2025-09-25T18:34:37",{"id":160,"version":161,"summary_zh":162,"released_at":163},280430,"v1.4.2","# iOS 模拟器 MCP v1.4.2\n\n## 功能特性\n\n- **增强的默认输出目录：** 新增对 `IOS_SIMULATOR_MCP_DEFAULT_OUTPUT_DIR` 环境变量的支持，用于自定义截图和视频录制的默认目录。若未设置，则继续以 `~\u002FDownloads` 作为备用目录。\n\n## 文档说明\n\n- **工具部分重构：** 重新组织了 README 文件，为每个工具（`get_booted_sim_id`、`ui_describe_all`、`ui_tap`、`ui_type`、`ui_swipe`、`ui_describe_point`、`ui_view`、`screenshot`、`record_video`、`stop_recording`）提供了详细的描述及 TypeScript 参数定义。\n- **环境变量文档优化：** 增加了一张全面的表格，详细解释了所有可用的环境变量，并附有示例。\n\n## 构建\n\n- **版本号更新：** 将项目版本更新至 v1.4.2。","2025-08-16T17:13:05",{"id":165,"version":166,"summary_zh":167,"released_at":168},280431,"v1.4.1","# iOS 模拟器 MCP v1.4.1\n\n## 🐛 错误修复\n\n- **截图缩放修复：** 修复了截图缩放问题，使其与点坐标匹配，从而实现精准的点击定位。这解决了由于截图与实际模拟器尺寸之间的坐标系统不一致而导致的 UI 交互目标错位问题。感谢 @riwsky 的贡献！\n\n\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Ffd59ad81-1b4c-42db-8a9e-919aa3ba53d9\n\n\n\n## 📚 文档更新\n\n- **新增“添加到 Cursor”按钮：** 在 README 中为 Cursor IDE 用户添加了一个便捷的安装按钮。\n- **MCP 注册服务器列表：** 新增专门章节，展示服务器列表和安全徽章。\n- **优化故障排除指南：** 增加了关于模拟器屏幕尺寸及 AI 代理坐标调整的说明。\n- **更新 QA 文档：** 将测试用例中的 `stop_recording` 替换为 `ui_view`，以更清晰地说明页面查看功能。\n- **功能文档更新：** 更新 README，重点介绍了 AI 代理现在可以查看模拟器屏幕的新功能。\n\n## 🔧 构建\n\n- **版本号升级：** 将项目版本更新至 v1.4.1。","2025-08-14T19:16:06",{"id":170,"version":171,"summary_zh":172,"released_at":173},280432,"v1.4.0","# iOS 模拟器 MCP v1.4.0\n\n## 功能\n\n- **UI 视图工具:** 新增 `ui_view` 工具，用于捕获并压缩 iOS 模拟器视图的截图。该工具会自动截取 PNG 格式的屏幕截图，并将其压缩为 JPEG 格式以提高传输效率，同时具备完善的错误处理和临时文件管理机制。\n\n## 改进\n\n- **增强的文件管理:** 优化了临时文件的处理方式，新增专用的临时目录，并在服务器关闭时进行清理。\n- **更好的错误处理:** 为截图捕获操作添加了全面的错误处理机制。\n\n## 文档\n\n- **新增上下文文档:** 引入了 `CONTEXT.md` 文件，其中包含项目开发的相关参考资料，包括 MCP 文档、iOS 模拟器命令行参考、idb 命令、图像压缩工具以及安全注意事项等。\n\n## 构建\n\n- **版本号更新:** 将项目版本更新至 1.4.0。\n\n\n\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F323e62b4-0b54-4e37-bd26-7f0a373a432d\n\n","2025-07-07T17:16:11",{"id":175,"version":176,"summary_zh":177,"released_at":178},280433,"v1.3.3","# iOS 模拟器 MCP v1.3.3\n\n> [!WARNING]  \n> **安全公告**: 本版本修复了低于 1.3.3 版本中存在的命令注入漏洞（中等严重性）。请升级至 `v1.3.3` 或更高版本。该漏洞在 Snyk 的文章 [利用易受命令注入攻击的 MCP 服务器](https:\u002F\u002Fsnyk.io\u002Farticles\u002Fexploiting-mcp-servers-vulnerable-to-command-injection\u002F) 中有详细描述。\n\n## 安全修复\n\n- **修复命令注入漏洞**: 将 `child_process.exec` 替换为更安全的 `child_process.execFile`。此更改遵循 Node.js 社区的最佳实践，通过将用户提供的输入视为独立参数而非由 Shell 解释，从而有效缓解命令注入风险。\n- **严格的输入验证**: 使用 `zod` 对所有用户提供的参数实施健壮的输入验证，包括对 UDID 的正则表达式检查以及对路径和文本长度的限制。\n- **安全的参数处理**: 在命令中添加 `--` 分隔符，以明确区分选项和位置参数，防止 Shell 错误解析。\n\n### 受影响的工具\n\n以下工具已得到加固：\n- `ui_tap`\n- `ui_type`\n- `ui_swipe`\n- `ui_describe_point`\n- `ui_describe_all`\n- `screenshot`\n- `record_video`\n- `stop_recording`\n\n## 文档更新\n\n- **更新 `SECURITY.md`**: 更新了安全策略，详细说明了该漏洞、其影响及修复措施。\n- **新增 `QA.md`**: 添加了新的质量保证指南 (`QA.md`)，包含手动测试用例。\n- **更新 `README.md`**: README 现在包含醒目的安全提示以及更新后的安装说明。\n\n## 构建\n\n- **版本号提升**: 项目版本已提升至 `1.3.3`。","2025-06-20T17:13:26",{"id":180,"version":181,"summary_zh":182,"released_at":183},280434,"v1.3.2","# iOS 模拟器 MCP v1.3.2\n\n## 新功能与改进\n\n- **新增故障排除指南：** 引入了 `TROUBLESHOOTING.md` 文件，并在主入口处添加了链接，以便更轻松地进行调试。（9d0720f）\n- **改进错误处理：** 使用专门的 `toError` 函数实现了统一的错误信息提示。（e2d5889）\n- **增强故障排除链接：** 更新了 `index.ts` 中的故障排除链接，添加了适合大语言模型使用的纯文本指南。（31638f2）\n- **增加发布自动化：** 集成了 Cursor 工作流，以简化 GitHub 发布流程的创建。（a75d2e1、01c0e33）\n\n## 文档\n\n- **优化 QA 使用场景：** 更新了 `README.md` 中关于 QA 使用场景的描述。（354942e）\n- **更新安装说明：** 修订了 `README.md` 中的服务器安装步骤。（6fec54a）\n\n## 构建\n\n- **版本号升级：** 将项目版本更新至 1.3.2。（9f562d8）","2025-04-21T03:11:08",{"id":185,"version":186,"summary_zh":187,"released_at":188},280435,"v1.3.1","# iOS 模拟器 MCP v1.3.1\n\n## 改进\n\n- **改进工具调用错误识别：** 优化了系统，以便更准确地定位工具调用时的错误。\n  \n## 文档\n\n- **添加 MCP 服务器徽章：** 在 README 中添加了一个徽章，用于指示服务器状态。\n- **添加安全策略：** 引入了 `SECURITY.md` 文件，概述了安全策略及漏洞报告指南。\n- **添加许可证文件：** 将 MIT 许可证文件纳入项目仓库。\n\n## 构建\n\n- **版本号更新：** 将项目版本更新为 1.3.1。","2025-04-18T15:50:06",{"id":190,"version":191,"summary_zh":192,"released_at":193},280436,"v1.3.0","# iOS Simulator MCP v1.3.0\r\n\r\n## New Features\r\n\r\n- **Tool Filtering via Environment Variables**\r\n  - Filter specific tools using the new `IOS_SIMULATOR_MCP_FILTERED_TOOLS` environment variable\r\n  - Customizable filtering options:\r\n    - Comma-separated list of tool names to disable\r\n    - Supports all available tool types\r\n    - No impact on non-filtered tools\r\n  - Use Case: prevent Cursor Agent mode from selecting tools it cannot use for context as of writing this like `screenshot` by removing it from the available tools that are available.\r\n    ```json\r\n    {\r\n      \"env\": {\r\n        \"IOS_SIMULATOR_MCP_FILTERED_TOOLS\": \"screenshot\"\r\n      }\r\n    }\r\n    ```\r\n  - Use Case: Disable resource-intensive tools like video recording:\r\n    ```json\r\n    {\r\n      \"env\": {\r\n        \"IOS_SIMULATOR_MCP_FILTERED_TOOLS\": \"record_video,stop_recording\"\r\n      }\r\n    }\r\n    ```\r\n\r\n### With Filtering\r\n\r\n| Config | Cursor Settings |\r\n|--------|----------------|\r\n| \u003Cimg width=\"583\" alt=\"Screenshot 2025-04-05 at 9 31 27 AM\" src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F5624f4a7-2ea2-4269-b032-fe7efca9f443\" \u002F> | \u003Cimg width=\"539\" alt=\"Screenshot 2025-04-05 at 9 31 34 AM\" src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F2307b819-e696-41bd-854d-50f84013ebb1\" \u002F> |\r\n\r\n### Without Filtering\r\n\r\n| Config | Cursor Settings |\r\n|--------|----------------|\r\n| \u003Cimg width=\"511\" alt=\"Screenshot 2025-04-05 at 9 31 45 AM\" src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Ff3f0a044-d7f4-4e23-a400-d4377f0dc85e\" \u002F> | \u003Cimg width=\"541\" alt=\"Screenshot 2025-04-05 at 9 31 53 AM\" src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Ff5c751c0-0238-4d5a-9b19-e9cf55c24cf3\" \u002F> |\r\n\r\n\r\n## Documentation Updates\r\n\r\n- Added new Configuration section in README\r\n- Added environment variable documentation\r\n- Included examples of tool filtering usage\r\n","2025-04-05T16:42:09",{"id":195,"version":196,"summary_zh":197,"released_at":198},280437,"v1.2.0","# iOS Simulator MCP v1.2.0\r\n\r\n## New Features\r\n\r\n- **Video Recording Functionality**\r\n  - Record iOS Simulator screen activity with the new `record_video` command\r\n  - Customizable recording options:\r\n    - Output path (defaults to `~\u002FDownloads\u002Fsimulator_recording_$DATE.mp4`)\r\n    - Codec selection (`h264` or `hevc`)\r\n    - Display selection (`internal` or `external`)\r\n    - Mask handling for non-rectangular displays\r\n    - Force option to overwrite existing files\r\n  - Stop recordings with the new `stop_recording` command\r\n\r\n## Documentation Updates\r\n\r\n- Updated README with examples for the new video recording capabilities\r\n- Changed terminology from \"tool\" to \"server\" throughout documentation\r\n- Updated demo video in README\r\n\r\n\r\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F7added80-58c8-46ff-a518-c972998be9b5\r\n\r\n","2025-03-23T03:40:07",{"id":200,"version":201,"summary_zh":202,"released_at":203},280438,"v1.1.0","# iOS Simulator MCP v1.1.0\r\n\r\n## New Features\r\n\r\n- **Screenshot Support**: Added ability to capture screenshots of the iOS simulator screen\r\n  - Supports multiple image formats (png, tiff, bmp, gif, jpeg)\r\n  - Save screenshots to any location with automatic path resolution\r\n  - Option to specify display type and mask handling for non-rectangular displays\r\n\r\n## Documentation\r\n\r\n- Updated README with screenshot feature documentation\r\n- Added example prompt for taking screenshots\r\n\r\n\r\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F30346abf-d24d-4a30-8f7a-d22a252975a3\r\n\r\n","2025-03-21T21:10:55",{"id":205,"version":206,"summary_zh":207,"released_at":208},280439,"v1.0.0","# iOS Simulator MCP v1.0.0\r\n\r\nI'm excited to announce the first stable release of iOS Simulator MCP, a Model Context Protocol (MCP) tool that enables seamless interaction with iOS simulators directly through MCP clients like Cursor.\r\n\r\n## 🌟 Features\r\n\r\n- **Simulator Identification**: Easily get the ID of the currently booted iOS simulator\r\n- **Comprehensive UI Interaction**:\r\n  - Full screen accessibility element inspection\r\n  - Precise tap interactions with coordinate support\r\n  - Text input capabilities\r\n  - Swipe gesture support with customizable parameters\r\n  - Point-specific UI element inspection\r\n\r\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Ff126ccf3-f16c-4759-8b42-b78a443c3a1f\r\n","2025-03-20T03:47:10"]