Перейти до змісту

Збіг проксі-серверів за 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.