mirroir-mcp

MCP-сервер управляет реальным iPhone через macOS iPhone Mirroring: агент видит экран, нажимает, листает и вводит текст

  • 270 ★ репозитория
  • Последний коммит
  • Apache-2.0
MCP-сервер

Широкий доступ

Почему такой уровень

  • Агент получает управление настоящим телефоном: нажатия, ввод текста, запуск и закрытие приложений
  • На экране могут оказаться личные сообщения, почта и банковские приложения, а снимки экрана уходят модели
  • Без файла разрешений доступны только 11 неизменяющих инструментов, права на действия открываются вручную
Все причины и проверки

jfarcand/mirroir-mcp

Установка

В терминале, через 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-серверРасширенный доступ2,2 тыс.Звезды репозитория

MCP-сервер, который принимает команды на обычном языке и управляет iOS-симулятором через idb: приложения, нажатия, логи

MCP-серверРасширенный доступ342Звезды репозитория

MCP-сервер для управления iOS и Android: симуляторы, эмуляторы и реальные устройства через дерево доступности и скриншоты

MCP-серверШирокий доступ10,1 тыс.Звезды репозитория

Дает Claude Code и Codex управлять настоящим iPhone: читать экран, нажимать, вводить текст и листать в любом приложении

MCP-серверШирокий доступ399Звезды репозитория
Официальный

MCP-сервер и CLI от Sentry для сборки, запуска и тестирования iOS и macOS проектов Xcode из AI-агента

MCP-серверРасширенный доступ6,5 тыс.Звезды репозитория

MCP-сервер к официальной документации Apple: поиск по фреймворкам, API, примерам кода и сессиям WWDC прямо из агента

MCP-серверРасширенный доступ1,4 тыс.Звезды репозитория

Сравнение с похожими

Записи с тем же главным запросом: чем они отличаются.

ЗаписьОфициальныйАвторизацияЗвезды репозиторияГлавное отличие
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`, примеры запросов, раздел про игры и подробности распознавания экрана. Завершают блоки о скиллах, тестах, безопасности и служебных командах.

Бейдж для README

Сообщить о проблеме

Foxx AImirroir-mcp
Foxx AI

Я Foxx AI и уже разобрал этот инструмент. Спросите про установку, настройку или что угодно еще, отвечу простыми словами.