विषय पर बढ़ें

GeoIP प्रॉक्सी मिलान

GeoIP प्रॉक्सी मैचिंग, ब्राउज़र फिंगरप्रिंट सेटिंग्स को अपस्ट्रीम Playwright MCP द्वारा उपयोग की जाने वाली प्रॉक्सी के स्थान के साथ संरेखित रखती है। यह तब उपयोगी होता है जब क्षेत्रीय QA एक सुसंगत प्रॉक्सी, टाइमज़ोन, भाषा और लोकेल प्रोफ़ाइल पर निर्भर करता है।

ब्रिज स्वयं प्रॉक्सी ट्रैफ़िक नहीं बनाता है या उसका रूटिंग नहीं करता है। प्रॉक्सी रूटिंग PLAYWRIGHT_MCP_PROXY_SERVER के माध्यम से अपस्ट्रीम प्लेराइट MCP के स्वामित्व में बनी रहती है। जब मैचिंग सक्षम होती है, तो क्लोकरॉउज़र MCP कॉन्फ़िगर किए गए प्रॉक्सी स्थान को रिज़ॉल्व करता है और टाइमज़ोन, ब्राउज़र भाषा, और फ़िंगरप्रिंट लोकेल के लिए मैचिंग क्लोकरॉउज़र लॉन्च फ़्लैग जोड़ता है।

यह क्या बदलता है

जब CLOAK_PLAYWRIGHT_MCP_GEOIP_PROXY_MATCH=true, तो ब्रिज इन लॉन्च फ़्लैग्स को CloakBrowser के लिए जोड़ सकता है:

  • --fingerprint-timezone
  • --lang
  • --fingerprint-locale

यह ब्राउज़र प्रोफ़ाइल को प्रॉक्सी क्षेत्र के साथ आंतरिक रूप से सुसंगत बनाने में मदद करता है। अपस्ट्रीम Playwright MCP टूल स्कीमा और ब्राउज़र टूल अभी भी बिना बदले अग्रेषित किए जाते हैं।

वैश्विक सेटअप

stdio क्लाइंट्स और स्ट्रीमएबल 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 के लिए करें।

डॉकर सेटअप

कंटेनर को वही वेरिएबल पास करें। जहाँ संभव हो, प्रॉक्सी क्रेडेंशियल को अपने सीक्रेट मैनेजर या 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

Docker में स्ट्रीमएबल HTTP के लिए, 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 उस HTTP सत्र के लिए PLAYWRIGHT_MCP_PROXY_SERVER को ओवरराइड करता है। proxyBypass ओवरराइड करता है PLAYWRIGHT_MCP_PROXY_BYPASS केवल तभी ओवरराइड करता है जब proxyServer है उपस्थित। यदि proxyServer उपस्थित है और proxyBypass को छोड़ दिया गया है, तो विरासत में मिला हुआ उस सत्र के लिए प्रॉक्सी बाईपास कॉन्फ़िगरेशन साफ़ कर दिया गया है।

geoipProxyMatch उस HTTP के लिए प्रक्रिया-स्तर की GeoIP सेटिंग को ओवरराइड करता है सत्र। सत्र के मिलान को सक्षम करने के लिए true का उपयोग करें या इसे अक्षम करने के लिए false का उपयोग करें। यहाँ तक कि जब सर्वर को मैचिंग सक्षम के साथ शुरू किया गया था।

मौजूदा HTTP सत्र अपरिवर्तनीय हैं। किसी अलग प्रॉक्सी या स्थान पर स्विच करने के लिए एक और स्ट्रीमएबल HTTP सत्र बनाएँ।

यदि proxyServer में क्रेडेंशियल हैं, तो उन्हें URL-एनकोडेड रखें और प्रोजेक्ट फ़ाइलों में जमा करने के बजाय, वैल्यू को सीक्रेट्स या क्लाइंट रनटाइम कॉन्फ़िगरेशन के माध्यम से पास करें।

उपयोग के मामले

  • स्थानीयकृत commerce QA

Checkout, taxes, shipping messages, currency और regional catalog rules को ऐसे browser timezone और locale के साथ test करें जो proxy location से match करते हों।

  • क्षेत्रीय landing pages

Visitor region पर निर्भर language, consent, campaign और content variants verify करें।

  • Customer support reproduction

हर proxy location के लिए पूरा MCP server restart किए बिना customer region से report reproduce करें।

  • Timezone-sensitive flows

Date pickers, booking windows, reminders और scheduling pages validate करें जहां timezone और locale network region से match होने चाहिए।

  • Parallel regional sessions

अलग-अलग proxies के साथ अलग Streamable HTTP sessions चलाएं ताकि agent एक ही server process में कई regions compare कर सके।

प्राथमिकता और सीमाएँ

क्षेत्र व्यवहार
Stdio केवल process-level environment variables और CLI flags उपयोग करता है।
Streamable HTTP default Runtime metadata न दिए जाने पर process-level environment variables और CLI flags उपयोग करता है।
Streamable HTTP metadata initialize.params._meta["io.github.swimmwatch/cloakbrowser-mcp"] एक session के लिए proxy और GeoIP matching override कर सकता है।
Existing sessions initialize के दौरान capture किए गए proxy और GeoIP setting को रखते हैं।
Proxy routing Upstream Playwright MCP को delegated रहता है।
Browser geolocation API यह feature इसे configure नहीं करता; यह केवल CloakBrowser timezone, language और locale fingerprint flags align करता है।

GeoIP लोकेशन डेटा अनुमानित होता है और यह प्रॉक्सी आईपी और CloakBrowser के GeoIP डेटाबेस पर निर्भर करता है। CloakBrowser आवश्यकता पड़ने पर पहली बार उपयोग के समय उस ऑफ़लाइन डेटाबेस को डाउनलोड और कैश करता है।

इस सुविधा का उपयोग वैध QA, स्थानीयकरण, और पर्यावरण की स्थिरता परीक्षण के लिए करें। इसे एक्सेस नियंत्रण या क्षेत्रीय नीति जांचों को बाईपास करने के तरीके के रूप में नहीं माना जाना चाहिए।

संबंधित कॉन्फ़िगरेशन

  • कॉन्फ़िगरेशन सभी ब्रिज और अपस्ट्रीम एनवायरनमेंट वेरिएबल्स को सूचीबद्ध करता है।
  • Docker कंटेनर रनटाइम डिफ़ॉल्ट और Streamable HTTP पब्लिशिंग को समझाता है।
  • टूल्स यह समझाता है कि अपस्ट्रीम Playwright MCP ब्राउज़र टूल्स को बिना बदले क्यों फॉरवर्ड किया जाता है।

अतिरिक्त व्यावहारिक रास्ते

upstream Playwright MCP और इस package में चुनने के लिए तुलना देखें। तेज tasks के लिए रेसिपी उपयोग करें: persistent profile, extensions, reverse proxy, regional QA, Claude Desktop, Codex CLI और CI smoke test.