mirroir-mcp
MCP-сервер управляет реальным iPhone через macOS iPhone Mirroring: агент видит экран, нажимает, листает и вводит текст
- 270 ★ репозитория
- Последний коммит
- Apache-2.0
Широкий доступ
Почему такой уровень
- Агент получает управление настоящим телефоном: нажатия, ввод текста, запуск и закрытие приложений
- На экране могут оказаться личные сообщения, почта и банковские приложения, а снимки экрана уходят модели
- Без файла разрешений доступны только 11 неизменяющих инструментов, права на действия открываются вручную
Установка
- Работает в
В терминале, через SkillFoxx CLI
npx skillfoxx add mcp/mirroir-mcpОпределит агенты на машине, покажет уровень доступа и зафиксирует версию.
Другие способы установки
Доступ и проверки
Как мы проверяемШирокий доступИнструмент может менять данные, выполнять команды или работать с секретами.
- Агент получает управление настоящим телефоном: нажатия, ввод текста, запуск и закрытие приложений
- На экране могут оказаться личные сообщения, почта и банковские приложения, а снимки экрана уходят модели
- Без файла разрешений доступны только 11 неизменяющих инструментов, права на действия открываются вручную
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
mirroir-mcp подключает агента к настоящему iPhone через функцию macOS iPhone Mirroring. Сервер на Swift отдает 38 инструментов: `screenshot`, `describe_screen`, `tap`, `swipe`, `type_text`, `press_home`, `scroll_to`, `reset_app` и другие. Работа идет по циклу «посмотреть, подумать, действовать»: `describe_screen` возвращает все текстовые элементы с координатами касания, модель решает, что нажать, и действие выполняется. Текст на экране распознает Apple Vision прямо на вашем Mac, ключи API для этого не нужны. Если положить в `~/.mirroir-mcp/models/` модель YOLO в формате CoreML, сервер добавит к тексту значки и переключатели. Есть и режим «AI vision», где снимок экрана уходит модели, понимающей интерфейс по смыслу. Экспериментально поддерживаются окна других приложений macOS. Повторяющиеся сценарии оформляются как скиллы в файлах SKILL.md: нумерованные шаги вроде `Tap "Email"`, без жестких координат. Файл `APP.md` описывает приложение (вкладки, диалоги разрешений, что пропускать), и исследование идет с учетом этих подсказок. Команда `mirroir test` прогоняет скиллы как тесты, `mirroir record` записывает действия в YAML, `mirroir doctor` проверяет настройку. Особое внимание уделено играм: тесты оболочки (меню, магазин, настройки) работают уже сейчас, а проход самой сцены ограничен единственным указателем iPhone Mirroring.
Для кого. Для мобильных разработчиков и тестировщиков, у которых есть Mac с macOS 15 и iPhone, и которые хотят поручить Claude Code, Cursor или Codex прогон сценариев на реальном устройстве.
Подходит, если
- Нужно проверить приложение на настоящем iPhone вместо симулятора: вход, оформление заказа, системные диалоги
- Сценарий проверки повторяется, и его удобно записать скиллом, чтобы гонять через `mirroir test` в CI
- Нужен разбор незнакомого приложения: исследователь обходит экраны, листает и собирает карту переходов
- Требуется быстрый смоук-тест мобильной игры: меню, магазин, экраны победы и поражения
- Хочется поручить агенту рутину на телефоне: отправить сообщение, создать событие в календаре, поменять настройку
Не подходит, если
- У вас нет Mac с macOS 15 и iPhone, подключенного через iPhone Mirroring: без них сервер не запустится
- Нужны игры реального времени с двумя пальцами: у iPhone Mirroring один указатель
- Требуется доступ к Wallet, банковским приложениям или другим чувствительным экранам: их безопаснее закрыть через `blockedApps`
- Тестируется Android: сервер работает только с iPhone и окнами macOS
Пример запроса к агенту
Открой Календарь на iPhone, создай событие «Стоматолог» на следующий вторник в 14:00 и пришли скриншот результата.MCP
- Транспорт
- stdio
- Авторизация
- не нужна
Ограничения
- Нужны macOS 15 или новее и iPhone, подключенный через iPhone Mirroring. При первом снимке экрана macOS запросит разрешения Screen Recording и Accessibility.
- Без файла настроек сервер показывает клиенту только 11 инструментов, которые ничего не меняют. Нажатия, ввод текста и запуск приложений открываются через `~/.mirroir-mcp/permissions.json`.
- iPhone Mirroring передает приложениям одно касание, поэтому жесты двумя пальцами и игры с двумя джойстиками недоступны.
- Поддержка окон macOS и режим «AI vision» отмечены в документации как экспериментальные.
- Каждый снимок экрана стоит модели несколько тысяч токенов, а распознавание текста через `describe_screen` снимает большую часть нагрузки.
Как отключить. Удалите запись `mirroir` из конфигурации MCP-клиента, например командой `claude mcp remove mirroir`. Чтобы убрать программу, выполните `brew uninstall mirroir-mcp` для установки через Homebrew. Закрытие окна iPhone Mirroring мгновенно прекращает любой ввод.
Частые вопросы
Как управлять iPhone из Claude Code?
Выполните `claude mcp add --transport stdio mirroir -- npx -y mirroir-mcp` на Mac с macOS 15, включите iPhone Mirroring и выдайте права Screen Recording и Accessibility. После этого агент видит экран через `describe_screen` и действует инструментами `tap`, `swipe` и `type_text`.
Почему агент не может нажимать на экран?
Без `~/.mirroir-mcp/permissions.json` сервер скрывает от клиента все изменяющие инструменты и оставляет 11 безопасных. Добавьте нужные имена в список `allow`, например `tap` и `type_text`.
Нужны ли ключи API для распознавания экрана?
Нет. По умолчанию текст распознает Apple Vision на самом Mac. Режим «AI vision» опционален, и в нем снимок экрана обрабатывает модель.
Как запретить агенту трогать банковские приложения?
Перечислите их в массиве `blockedApps` файла `permissions.json`, например Wallet и Banking. Запрет действует, даже если изменяющие инструменты разрешены.
Можно ли превратить сценарий в тест для CI?
Да. Сценарий оформляется скиллом SKILL.md, а `mirroir test` прогоняет его и может сохранить отчет в JSON. Скомпилированные скиллы проигрываются без распознавания текста и идут заметно быстрее.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
MCP-серверыMCP-сервер для iOS Simulator: тапы, свайпы, ввод текста, дерево доступности, скриншоты, видео и управление приложениями
MCP-сервер, который принимает команды на обычном языке и управляет iOS-симулятором через idb: приложения, нажатия, логи
MCP-сервер для управления iOS и Android: симуляторы, эмуляторы и реальные устройства через дерево доступности и скриншоты
Дает Claude Code и Codex управлять настоящим iPhone: читать экран, нажимать, вводить текст и листать в любом приложении
XcodeBuildMCP (теперь MobileBuildMCP)
XcodeBuildMCP
MCP-сервер и CLI от Sentry для сборки, запуска и тестирования iOS и macOS проектов Xcode из AI-агента
MCP-сервер к официальной документации Apple: поиск по фреймворкам, API, примерам кода и сессиям WWDC прямо из агента
Сравнение с похожими
Записи с тем же главным запросом: чем они отличаются.
| Запись | Официальный | Авторизация | Звезды репозитория | Главное отличие |
|---|---|---|---|---|
| mirroir-mcp (эта запись) | нет | не нужна | 270 | |
| MCP Server for iOS Simulator | нет | не нужна | 342 | работает с симулятором iOS, а здесь управляется настоящий iPhone через iPhone Mirroring |
| iOS Simulator Skill | нет | 1 303 | скилл для симулятора на Mac, без доступа к физическому телефону |
Коротко о README
Страница открывается способами установки и настройкой для Claude Code, GitHub Copilot, Cursor и Codex. Дальше идут описание цикла наблюдения и действия, файл `APP.md`, примеры запросов, раздел про игры и подробности распознавания экрана. Завершают блоки о скиллах, тестах, безопасности и служебных командах.