Конфігурація
Ця сторінка документує всі параметри конфігурації для WebdriverIO MCP сервера.
Конфігурація MCP Сервера
MCP сервер налаштовується через конфігураційні файли Claude Desktop або Claude Code.
Базова конфігурація
macOS
Відредагуйте ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"wdio-mcp": {
"command": "npx",
"args": ["-y", "@wdio/mcp"]
}
}
}
Windows
Відредагуйте %APPDATA%\Claude\claude_desktop_config.json:
{
"mcpServers": {
"wdio-mcp": {
"command": "npx",
"args": ["-y", "@wdio/mcp"]
}
}
}
Claude Code
Відредагуйте файл .claude/settings.json вашого проєкту:
{
"mcpServers": {
"wdio-mcp": {
"command": "npx",
"args": ["-y", "@wdio/mcp"]
}
}
}
Змінні середовища
Налаштуйте з'єднання з сервером Appium та інші параметри через змінні середовища.
З'єднання з Appium
| Змінна | Тип | За замовчуванням | Опис |
|---|---|---|---|
APPIUM_URL | string | 127.0.0.1 | Хост Appium сервера |
APPIUM_URL_PORT | number | 4723 | Порт Appium сервера |
APPIUM_PATH | string | / | Шлях Appium сервера |
Приклад із змінними середовища
{
"mcpServers": {
"wdio-mcp": {
"command": "npx",
"args": ["-y", "@wdio/mcp"],
"env": {
"APPIUM_URL": "192.168.1.100",
"APPIUM_URL_PORT": "4724",
"APPIUM_PATH": "/wd/hub"
}
}
}
}
Параметри сесії браузера
Опції, доступні при запуску сесії браузера через інструмент start_browser.
headless
- Тип:
boolean - Обов'язково: Ні
- За замовчуванням:
false
Запускає Chrome у режимі без графічного інтерфейсу (без видимого вікна браузера). Корисно для CI/CD середовищ або коли не потрібно бачити браузер.
windowWidth
- Тип:
number - Обов'язково: Ні
- За замовчуванням:
1920 - Діапазон:
400-3840
Початкова ширина вікна браузера в пікселях.
windowHeight
- Тип:
number - Обов'язково: Ні
- За замовчуванням:
1080 - Діапазон:
400-2160
Початкова висота вікна браузера в пікселях.
navigationUrl
- Тип:
string - Обов'язково: Ні
URL для переходу одразу після запуску браузера. Це ефективніше, ніж викликати start_browser, а потім окремо navigate.
Приклад: Запустити браузер і перейти одним викликом:
Start Chrome and navigate to https://webdriver.io
Параметри мобільної сесії
Опції, доступні при запуску сесії мобільного додатк у через інструмент start_app_session.
Параметри платформи
platform
- Тип:
string - Обов'язково: Так
- Значення:
iOS|Android
Мобільна платформа для автоматизації.
platformVersion
- Тип:
string - Обов'язково: Ні
Версія ОС пристрою/симулятора/емулятора (наприклад, 17.0 для iOS, 14 для Android).
automationName
- Тип:
string - Обов'язково: Ні
- Значення:
XCUITest(iOS),UiAutomator2|Espresso(Android)
Драйвер автоматизації для використання. За замовчуванням XCUITest для iOS та UiAutomator2 для Android.
Параметри пристрою
deviceName
- Тип:
string - Обов'язково: Так
Назва пристрою, симулятора або емулятора для використання.
Приклади:
- iOS Simulator:
iPhone 15 Pro,iPad Air (5th generation) - Android Emulator:
Pixel 7,Nexus 5X - Реальний пристрій: Назва пристрою, як показано у вашій системі
udid
- Тип:
string - Обов'язково: Ні (Обов'язково для реальних пристроїв iOS)
Унікальний ідентифікатор пристрою. Обов'язковий для реальних пристроїв iOS (40-символьний ідентифікатор) і рекомендований для реальних пристроїв Android.
Як знайти UDID:
- iOS: Підключіть пристрій, відкрийте Finder/iTunes, натисніть на пристрій → Серійний номер (натисніть, щоб показати UDID)
- Android: Виконайте
adb devicesв терміналі
Параметри додатку
appPath
- Тип:
string - Обов'язково: Ні*
Шлях до файлу додатку для встановлення та запуску.
Підтримувані формати:
- iOS Simulator: директорія
.app - iOS Real Device: файл
.ipa - Android: файл
.apk
*Або має бути надано appPath, або noReset: true для підключення до вже запущеного додатку.
appWaitActivity
- Тип:
string - Обов'язково: Ні (тільки для Android)
Activity, яку слід очікувати при запуску додатку. Якщо не вказано, використовується основна/стартова activity додатку.
Приклад: com.example.app.MainActivity
Параметри стану сесії
noReset
- Тип:
boolean - Обов'язково: Ні
- За замовчуванням:
false
Зберігає стан додатку між сесіями. Коли true:
- Дані додатку зберігаються (стан входу, налаштування тощо)
- Сесія буде відʼєднана замість закриття (додаток продовжує працювати)
- Корисно для тестування сценаріїв користувача через кілька сесій
- Може використовуватися без
appPathдля підключення до вже запущеного додатку
fullReset
- Тип:
boolean - Обов'язково: Ні
- За замовчуванням:
true
Повністю скидає додаток перед сесією. Коли true:
- iOS: Видаляє та перевстановлює додаток
- Android: Очищує дані та кеш додатку
- Корисно для початку з чистого стану
Встановіть fullReset: false з noReset: true, щоб повністю зберегти стан додатку.
Таймаут сесії
newCommandTimeout
- Тип:
number - Обов'язково: Ні
- За замовчуванням:
60
Скільки часу (в секундах) Appium чекатиме на нову команду, перш ніж припустити, що клієнт вийшов, і завершити сесію. Збільште це значення для довших сесій налагодження.
Приклади:
60- За замовчуванням, підходить для більшості автоматизацій300- 5 хвилин, для налагодження або повільніших операцій600- 10 хвилин, для дуже довгих тестів
Параметри автоматичної обробки
autoGrantPermissions
- Тип:
boolean - Обов'язково: Ні
- За замовчуванням:
true
Автоматично надає дозволи додатку при встановленні/запуску. Коли true:
- Дозволи для камери, мікрофона, місцезнаходження тощо надаються автоматично
- Не потрібна ручна обробка діалогів дозволів
- Спрощує автоматизацію, уникаючи спливаючих вікон дозволів
Ця опція в основному впливає на Android. Дозволи iOS повинні оброблятися інакше через системні обмеження.
autoAcceptAlerts
- Тип:
boolean - Обов'язково: Ні
- За замовчуванням:
true
Автоматично приймає системні сповіщення (діалоги), що з'являються під час автоматизації.
Приклади автоматично прийнятих сповіщень:
- "Дозволити сповіщення?"
- "Додаток хоче отримати доступ до вашого місцезнаходження"
- "Дозволити додатку доступ до фотографій?"
autoDismissAlerts
- Тип:
boolean - Обов'язково: Ні
- За замовчуванням:
false
Відхиляє (скасовує) системні сповіщення замість прийняття. Має пріоритет над autoAcceptAlerts, якщо встановлено на true.
Перевизначення Appium сервера
Ви можете перевизначити з'єднання з Appium сервером окремо для кожної сесії:
appiumHost
- Тип:
string - Обов'язково: Ні
Хост Appium сервера. Перевизначає змінну середовища APPIUM_URL.
appiumPort
- Тип:
number - Обов'язково: Ні
Порт Appium сервера. Перевизначає змінну середовища APPIUM_URL_PORT.
appiumPath
- Тип:
string - Обов'язково: Ні
Шлях Appium сервера. Перевизначає змінну середовища APPIUM_PATH.
Параметри виявлення елементів
Опції для інструменту get_visible_elements.
elementType
- Тип:
string - Обов'язково: Ні
- За замовчуванням:
interactable - Значення:
interactable|visual|all
Тип елементів для повернення:
interactable: Кнопки, посилання, поля введення та інші клікабельні елементиvisual: Зображення, SVG та візуальні елементиall: Як інтерактивні, так і візуальні елементи
inViewportOnly
- Тип:
boolean - Обов'язково: Ні
- За замовчуванням:
true
Повертати лише елементи, видимі в поточному області перегляду. Коли false, повертає всі елементи в ієрархії перегляду (корисно для пошуку елементів за межами екрану).