MCP Appium-сервер
Реализация сервера Model Context Protocol (MCP) для автоматизации мобильных приложений с использованием Appium.
Предпосылки
- Node.js (v14 или выше)
- Комплект разработчика Java (JDK)
- Android SDK (для тестирования Android)
- Xcode (для тестирования iOS, только macOS)
- Сервер Appium
- Устройство Android или эмулятор / Устройство iOS или симулятор
Настройка среды
Перед выполнением любых команд убедитесь, что переменные среды настроены правильно:
- Убедитесь, что ваш
.bash_profile
,.zshrc
или другой файл конфигурации оболочки содержит необходимые переменные среды:
- Перед запуском MCP-Appium создайте файл среды:
Примечание : система попытается автоматически получить ваш
.bash_profile
при инициализации драйвера, но рекомендуется вручную убедиться в правильности настройки среды перед запуском тестов в новом сеансе терминала.
Конфигурация инструментов командной строки Xcode
Для тестирования iOS необходима правильная настройка инструментов командной строки Xcode:
- Установите инструменты командной строки Xcode, если они еще не установлены:
- Проверьте установку и текущий путь Xcode:
- При необходимости укажите правильный путь Xcode (особенно если у вас несколько версий Xcode):
- Примите лицензионные соглашения Xcode:
- Для тестирования на реальном устройстве iOS убедитесь, что ваша учетная запись разработчика Apple правильно настроена в Xcode:
- Открыть X-код
- Перейдите в Настройки > Учетные записи.
- Добавьте свой Apple ID, если вы еще этого не сделали.
- Загрузите необходимые профили обеспечения
- Настройте переменные среды для разработки iOS:
- Источник вашей обновленной конфигурации:
Настраивать
- Установить зависимости:
- Установите и запустите сервер Appium:
- Настройте Android-устройство/эмулятор:
- Включите параметры разработчика на вашем Android-устройстве
- Включить отладку по USB
- Подключите устройство через USB или запустите эмулятор
- Проверьте, подключено ли устройство с помощью
adb devices
- Для тестирования iOS (только macOS):
- Убедитесь, что установлены инструменты командной строки Xcode:
xcode-select --install
- Настройте симулятор iOS или подключите реальное устройство
- Доверяйте компьютеру разработчика на устройстве iOS, если используете реальное устройство
- Убедитесь, что установлены инструменты командной строки Xcode:
Проведение тестов
- Создайте проект:
- Запустите MCP-сервер:
- В новом терминале запустите тест:
Тестовая конфигурация
Конфигурация Android
В примере теста в качестве демо используется приложение Android Settings. Чтобы протестировать собственное приложение:
- Отредактируйте
examples/appium-test.ts
:- Обновите
deviceName
, чтобы он соответствовал вашему устройству. - Укажите путь
app
в вашем APK-файле или - Обновление
appPackage
иappActivity
для установленного приложения
- Обновите
- Конфигурация общих возможностей:
Конфигурация iOS
Для тестирования iOS с использованием новой поддержки командной строки Xcode:
- Пример конфигурации в
examples/xcode-appium-example.ts
:
Доступные действия
Сервер MCP поддерживает различные действия Appium:
- Взаимодействие элементов:
- Найти элементы
- Элементы касания/щелчка с API действий W3C (см. раздел «Стандартные жесты W3C»)
- Введите текст
- Прокрутите до элемента с помощью W3C Actions API
- Длительное нажатие
- Управление приложениями:
- Запустить/закрыть приложение
- Сбросить приложение
- Получить текущий пакет/активность
- Элементы управления устройством:
- Ориентация экрана
- Управление клавиатурой
- Блокировка/разблокировка устройства
- Скриншоты
- Информация о батарее
- Расширенные возможности:
- Переключение контекста (Native/WebView)
- Операции с файлами
- Уведомления
- Пользовательские жесты
- Инструменты командной строки Xcode (только для iOS):
- Управление симуляторами iOS (загрузка, выключение)
- Установка/удаление приложений на симуляторах
- Запуск/завершение работы приложений
- Делайте скриншоты
- Запись видео
- Создать/удалить симуляторы
- Получить типы устройств и время выполнения
Стандартные жесты W3C
Библиотека MCP-Appium теперь реализует API W3C WebDriver Actions для сенсорных жестов, что является современным стандартом мобильной автоматизации.
Действия W3C для элементов Tap
Метод tapElement
теперь использует API действий W3C с интеллектуальными резервными вариантами:
Действия W3C для прокрутки
Метод scrollToElement
теперь использует API действий W3C:
Пользовательские жесты W3C
Вы можете создать свои собственные жесты W3C, используя метод executeMobileCommand
:
Дополнительные примеры реализации жестов стандарта W3C см. в examples/w3c-actions-swipe-demo.ts
Использование инструментов командной строки Xcode
Новый класс XcodeCommands
предоставляет мощные инструменты для тестирования iOS:
Использование функции щелчка
Метод click()
представляет собой более интуитивно понятную альтернативу tapElement()
:
Поиск неисправностей
- Устройство не найдено:
- Проверьте вывод
adb devices
- Убедитесь, что отладка по USB включена.
- Попробуйте переподключить устройство.
- Проверьте вывод
- Приложение не устанавливается:
- Проверьте правильность пути APK
- Проверьте, достаточно ли на устройстве памяти.
- Убедитесь, что приложение подписано для отладки
- Элементы не найдены:
- Используйте Appium Inspector для проверки селекторов
- Проверьте, видны ли элементы на экране.
- Попробуйте разные стратегии поиска
- Проблемы с подключением:
- Убедитесь, что сервер Appium запущен
- Проверьте конфликты портов
- Убедитесь, что установлены правильные возможности
- Проблемы с симулятором iOS:
- Проверьте, установлены ли инструменты командной строки Xcode:
xcode-select -p
- Проверьте правильность UDID симулятора с помощью
xcrun simctl list devices
- Закройте и перезапустите симулятор, если он перестанет отвечать.
- Проверьте, установлены ли инструменты командной строки Xcode:
Внося вклад
Не стесняйтесь сообщать о проблемах и отправлять запросы на дополнительные функции или исправления ошибок.
Лицензия
Массачусетский технологический институт
You must be authenticated.
local-only server
The server can only run on the client's local machine because it depends on local resources.
Tools
Сервер Model Context Protocol (MCP), который обеспечивает автоматизацию мобильных приложений с помощью Appium, поддерживая различные взаимодействия устройств, операции с элементами и управление приложениями через стандартизированный протокол.
- Предпосылки
- Настройка среды
- Настраивать
- Проведение тестов
- Тестовая конфигурация
- Доступные действия
- Стандартные жесты W3C
- Использование инструментов командной строки Xcode
- Использование функции щелчка
- Поиск неисправностей
- Внося вклад
- Лицензия
Related Resources
Related MCP Servers
- -securityFlicense-qualityA Model Context Protocol (MCP) server implementation for interacting with Phabricator API. This server allows LLMs to interact with Phabricator through a standardized interface.Last updated -5Python
- AsecurityAlicenseAqualityA beginner-friendly Model Context Protocol (MCP) server that helps users understand MCP concepts, provides interactive examples, and lists available MCP servers. This server is designed to be a helpful companion for developers working with MCP. Also comes with a huge list of servers you can install.Last updated -3936JavaScriptApache 2.0
- -securityFlicense-qualityThis MCP server implementation allows users to manage and expose actions as tools from their Integration App workspace through the Model Context Protocol.Last updated -1019TypeScript
- -security-license-qualityA Model Context Protocol (MCP) server that interacts with system APIs, allowing users to check connections, search employees, register breakfast, and update chemical information by shifts.Last updated -2