Збіг проксі-серверів за GeoIP¶
Функція узгодження проксі-серверів за GeoIP забезпечує відповідність налаштувань «відбитка» браузера місцю розташування проксі-сервера, який використовує верхній рівень Playwright MCP. Це корисно, коли регіональний контроль якості залежить від стабільних налаштувань проксі-сервера, часового поясу, мови та профілю локалізації.
Міст сам не створює та не маршрутизує проксі-трафік. Маршрутизація проксі-трафіку залишається у віданні верхнього рівня Playwright MCP через PLAYWRIGHT_MCP_PROXY_SERVER. Коли увімкнено функцію зіставлення, CloakBrowser MCP визначає налаштовану локацію проксі та додає відповідні прапори запуску CloakBrowser для часового поясу, мови браузера та локалі відбитка.
Що зміниться¶
Коли CLOAK_PLAYWRIGHT_MCP_GEOIP_PROXY_MATCH=true, міст може додати такі параметри запуску для CloakBrowser:
--fingerprint-timezone--lang--fingerprint-locale
Це сприяє тому, щоб профіль браузера виглядав внутрішньо узгодженим із регіоном проксі-сервера. Схеми інструменту Playwright MCP та інструменти браузера, що надходять з вищих рівнів, як і раніше, передаються без змін.
Загальні налаштування¶
Використовуйте змінні середовища на рівні процесу для клієнтів stdio та як значення за замовчуванням для сесій Streamable HTTP:
PLAYWRIGHT_MCP_PROXY_SERVER="http://user:pass@proxy.example:8080" \
CLOAK_PLAYWRIGHT_MCP_GEOIP_PROXY_MATCH=true \
npx -y cloakbrowser-mcp@latest
Додайте список обходу, якщо деякі хости повинні оминати проксі-сервер:
PLAYWRIGHT_MCP_PROXY_SERVER="http://user:pass@proxy.example:8080" \
PLAYWRIGHT_MCP_PROXY_BYPASS=".internal,localhost" \
CLOAK_PLAYWRIGHT_MCP_GEOIP_PROXY_MATCH=true \
npx -y cloakbrowser-mcp@latest
Підтримка проксі-серверів HTTP з автентифікацією здійснюється шляхом вбудовування облікових даних у PLAYWRIGHT_MCP_PROXY_SERVER. Спеціальні символи в облікових даних слід кодувати у форматі «процент», наприклад, використовуйте p%40ssword замість p@ssword.
Налаштування Docker¶
Передайте ті самі змінні до контейнера. За можливості зберігайте облікові дані проксі-сервера у вашому менеджері секретів або у середовищі клієнта MCP.
docker run --rm --init -i \
-e PLAYWRIGHT_MCP_PROXY_SERVER="http://user:pass@proxy.example:8080" \
-e CLOAK_PLAYWRIGHT_MCP_GEOIP_PROXY_MATCH=true \
-v "$PWD/artifacts:/data" \
swimmwatch/cloakbrowser-mcp:latest
Для Streamable HTTP у Docker опублікуйте HTTP-порт як зазвичай і залиште змінні проксі як стандартні параметри середовища контейнера:
docker run --rm --init -p 127.0.0.1:3000:3000 \
-e PLAYWRIGHT_MCP_PROXY_SERVER="http://user:pass@proxy.example:8080" \
-e CLOAK_PLAYWRIGHT_MCP_GEOIP_PROXY_MATCH=true \
-v "$PWD/artifacts:/data" \
swimmwatch/cloakbrowser-mcp:latest \
--transport streamable-http --http-host 0.0.0.0 --http-port 3000
HTTP-проксі з можливістю потокової передачі даних для окремих сеансів¶
HTTP-клієнти з підтримкою потокового передавання можуть обирати проксі-сервер під час ініціалізації сеансу MCP. Це дозволяє одному довготривалому серверу MCP обробляти різні регіональні сценарії без необхідності його перезапуску.
Надіслати метадані мосту у запиті initialize:
{
"params": {
"_meta": {
"io.github.swimmwatch/cloakbrowser-mcp": {
"proxyServer": "http://user:pass@proxy.example:8080",
"proxyBypass": ".internal,localhost",
"geoipProxyMatch": true
}
}
}
}
proxyServer замінює PLAYWRIGHT_MCP_PROXY_SERVER для цієї сесії HTTP. proxyBypass замінює PLAYWRIGHT_MCP_PROXY_BYPASS лише тоді, коли proxyServer присутній. Якщо proxyServer присутній, а proxyBypass пропущено, успадкована конфігурація обходу проксі-сервера для цієї сесії скидається.
geoipProxyMatch замінює налаштування GeoIP на рівні процесу для цього HTTP- сеансу. Використовуйте true, щоб увімкнути зіставлення для сеансу, або false, щоб вимкнути його, навіть якщо сервер було запущено з увімкненим зіставленням.
Існуючі сесії HTTP є незмінними. Створіть ще одну сесію HTTP типу Streamable, щоб перейти на інший проксі-сервер або інше місце розташування.
Якщо proxyServer містить облікові дані, слід зберегти їх у форматі URL-кодування та передавати значення через секрети або конфігурацію середовища виконання клієнта, а не вносити його до файлів проєкту.
Приклади використання¶
- QA локалізованої комерції
Перевіряйте оформлення замовлення, податки, повідомлення про доставку, валюту та регіональні правила каталогу з часовим поясом і локаллю браузера, узгодженими з розташуванням проксі.
- Регіональні лендинги
Перевіряйте мову, згоди, кампанії та варіанти контенту, які залежать від регіону відвідувача.
- Відтворення звернень підтримки
Відтворюйте звіт із регіону клієнта без перезапуску всього MCP-сервера для кожного розташування проксі.
- Сценарії, чутливі до часового поясу
Перевіряйте вибір дат, вікна бронювання, нагадування та сторінки планування, де часовий пояс і локаль мають відповідати мережевому регіону.
- Паралельні регіональні сеанси
Запускайте окремі сеанси Streamable HTTP з різними проксі, щоб агент міг порівнювати кілька регіонів в одному серверному процесі.
Пріоритет та обмеження¶
| Область | Поведінка |
|---|---|
| Stdio | Використовує лише змінні середовища та прапорці CLI рівня процесу. |
| Типове значення Streamable HTTP | Використовує змінні середовища та прапорці CLI рівня процесу, якщо метадані runtime не передано. |
| Метадані Streamable HTTP | initialize.params._meta["io.github.swimmwatch/cloakbrowser-mcp"] може перевизначити проксі й зіставлення GeoIP для одного сеансу. |
| Існуючі сеанси | Зберігають проксі та налаштування GeoIP, зафіксовані під час initialize. |
| Маршрутизація проксі | Залишається делегованою upstream Playwright MCP. |
| Browser geolocation API | Не налаштовується цією функцією; вона лише узгоджує часовий пояс, мову та locale fingerprint flags CloakBrowser. |
Дані про місцезнаходження за GeoIP є приблизними і залежать від IP-адреси проксі-сервера та бази даних GeoIP програми CloakBrowser. CloakBrowser завантажує та зберігає цю офлайн-базу даних у кеші під час першого використання, коли це необхідно.
Використовуйте цю функцію для проведення законних тестувань з контролю якості, локалізації та перевірки узгодженості середовищ. Її не слід розглядати як спосіб обійти засоби контролю доступу або перевірки дотримання регіональних політик.
Пов’язані налаштування¶
- Конфігурація містить перелік усіх змінних середовища для мостів та вищих рівнів.
- Docker пояснює стандартні налаштування середовища виконання контейнерів та публікацію Streamable HTTP.
- Інструменти пояснює, чому інструменти браузера Playwright MCP, що знаходяться вище за течією, пересилаються без змін.
Додаткові практичні сценарії¶
Щоб обрати між upstream Playwright MCP і цим пакетом, перегляньте порівняння. Для швидких задач використовуйте рецепти: постійний профіль, розширення, reverse proxy, регіональне QA, Claude Desktop, Codex CLI і smoke-тест CI.