本项目搭建了一个 MCP(模型上下文协议)服务器,专门用于控制和管理 iOS 模拟器。借助此服务器,能够轻松实现模拟器的启动、关闭,应用程序的安装与启动,还能进行截图以及坐标点击等操作。
# 安装项目依赖
npm install
# 编译 TypeScript 代码
npm run build
# 启动开发服务器
npm start
通过以下环境变量自定义服务器行为:
PORT:设置服务器监听端口,默认值为 3000。DEBUG:启用调试模式,可选值为 true 或 false,默认值为 false。支持通过配置文件或环境变量调整日志输出级别和格式。详细配置请参考 config/logger.ts 文件。
npm run list-simulators
npm run start-simulator -- --udid "5272EA61-5796-4372-86FE-3B33831D5CC1"
npm run stop-simulator -- --udid "5272EA61-5796-4372-86FE-3B33831D5CC1"
将本服务器作为 MCP 工具集成到 Claude Desktop 中:
{
"mcpServers": {
"simulator": {
"command": "node",
"args": [
"/path/to/your/mcp-server-ios-simulator/dist/index.js"
]
}
}
}
+-------------------+ +-------------------+
| 用户 | | 管理员 |
+-------------------+ +-------------------+
↑ ↓
+-------------------+ +-------------------+
| CLI 工具 |<----->| MCP 服务器 |
+-------------------+ +-------------------+
↓ ↑
+-------------------+ +-------------------+
| iOS 模拟器 | | 模拟器管理库 |
+-------------------+ +-------------------+
src/
├── simulator/ # 模拟器管理模块
├── app/ # 应用程序管理模块
├── logger/ # 日志管理模块
└── server/ # HTTP 服务器模块
npm test 进行单元测试。遇到任何问题或有改进建议,请在 GitHub 仓库中提 ISSUE。
本项目遵循 MIT 协议,详细内容请查看 LICENSE 文件。