👻 幻影触摸
用于iOS模拟器自动化的MCP服务器,具有与React Native兼容的基于剪贴板的文本输入。
幻影触摸 让AI代理完全控制iOS模拟器:屏幕截图、元素检查、手势、应用程序管理,最重要的是-- React Native表单中的可靠文本输入.
快速开始
克劳德桌面/光标
添加到MCP配置中:
{
"mcpServers": {
"phantom-touch": {
"command": "npx",
"args": ["-y", "phantom-touch"]
}
}
}就是这样。没有克隆,没有建筑——只是 npx.
问题
每个现有的iOS MCP工具都无法填充React Native TextInput 组件是因为:
- HID键盘事件不会触发
onChangeText - WebDriver代理
setValue被React状态覆盖
解决方案
phantom-touch 使用a 剪贴板+粘贴 战略:
simctl pbcopy→ 设置模拟器剪贴板idb tap→ 集中精力Cmd+V→ 粘贴触发器onChangeText✅
16个MCP工具
| 模块 | 工具 |
|---|---|
| 模拟器 | pt_list_simulators, pt_boot_simulator, pt_shutdown_simulator |
| 应用 | pt_launch_app, pt_terminate_app, pt_list_apps, pt_open_url |
| 屏幕 | pt_screenshot, pt_list_elements, pt_get_screen_size |
| 手势 | pt_tap, pt_swipe |
| 输入 ⭐ | pt_type_text, pt_press_button, pt_set_clipboard, pt_get_clipboard |
先决条件
- 安装了Xcode的macOS
- iOS模拟器
- 国际开发银行 (iOS开发桥):
brew install idb-companion - Node.js 18+
用法示例
配置后,询问您的AI代理:
- *“截取模拟器的屏幕截图”*
- *“列出屏幕上的所有UI元素”*
- *点击(200,500)处的“创建帐户”按钮*
- *“类型”hello@example.com'进入电子邮件字段(200,450)”*
- *“打开深层链接myapp://login"*
文本输入策略
paste (默认,推荐)
使用剪贴板+Cmd+V。与React Native控制的TextInput配合使用。
pt_type_text(text: "Hello", x: 200, y: 400, strategy: "paste")keyboard
使用HID键盘事件。更快,但可能会在React Native中失败。
pt_type_text(text: "Hello", x: 200, y: 400, strategy: "keyboard")发展
git clone https://github.com/hieudtr8/phantom-touch.git
cd phantom-touch
npm install
npm run build
npm run dev # Run in dev mode with tsx许可证
麻省理工学院
