कॉन्फ़िगरेशन

एजेंट के लिए Chrome DevTools को कॉन्फ़िगर किया जा सकता है. इससे यह तय किया जा सकता है कि यह ब्राउज़र के साथ कैसे इंटरैक्ट करेगा, कौनसे टूल चालू होंगे, और यह डेटा को कैसे मैनेज करेगा.

अपने मॉडल कॉन्टेक्स्ट प्रोटोकॉल (एमसीपी) क्लाइंट कॉन्फ़िगरेशन फ़ाइल की args ऐरे में कमांड-लाइन फ़्लैग पास करके, सर्वर को कॉन्फ़िगर करें. आम तौर पर, यह config.json फ़ाइल होती है.

उदाहरण के लिए, Chrome को बिना डिसप्ले वाले ब्राउज़र के मोड में चलाने और Canary चैनल का इस्तेमाल करने के लिए, यहां दिया गया कॉन्फ़िगरेशन इस्तेमाल करें:

{
  "mcpServers": {
    "chrome-devtools": {
      "command": "npx",
      "args": [
        "-y",
        "chrome-devtools-mcp@latest",
        "--headless",
        "--channel=canary"
      ]
    }
  }
}

कॉन्फ़िगरेशन से जुड़ी सामान्य स्थितियां

यहां कुछ सामान्य स्थितियां दी गई हैं, जिनमें एजेंट के लिए Chrome DevTools को कॉन्फ़िगर करने के तरीके बताए गए हैं.

बिना ग्राफ़िक यूज़र इंटरफ़ेस वाले मोड में चलाना

ब्राउज़र विंडो को दिखाए बिना बैकग्राउंड में टास्क पूरे करने के लिए, Chrome को बिना डिसप्ले वाले ब्राउज़र (कोई यूज़र इंटरफ़ेस (यूआई) नहीं) मोड में चलाएं. अपने सर्वर के तर्कों में --headless फ़्लैग जोड़ें.

किसी मौजूदा ब्राउज़र सेशन से कनेक्ट करना

डिफ़ॉल्ट रूप से, एजेंट के लिए DevTools, Chrome का नया इंस्टेंस शुरू करता है. हालांकि, एजेंट को किसी मौजूदा ब्राउज़र सेशन से कनेक्ट किया जा सकता है. यह तब काम आता है, जब आपके एजेंट को पहले से शुरू किए गए किसी सेशन में समस्या की जांच करनी हो. उदाहरण के लिए, अगर आपने पहले से साइन इन किया हुआ है.

किसी मौजूदा सेशन से दो तरीकों से कनेक्ट किया जा सकता है:

अपने-आप कनेक्ट होने की सुविधा (Chrome 144+)

--autoConnect फ़्लैग का इस्तेमाल करने पर, एमसीपी सर्वर अपने-आप चालू Chrome इंस्टेंस से कनेक्ट हो जाता है.

  1. Chrome ब्राउज़र में, chrome://inspect/#remote-debugging पर जाएं और रिमोट डीबगिंग चालू करें.
  2. अपने एमसीपी कॉन्फ़िगरेशन में --autoConnect जोड़ें: json "args": ["chrome-devtools-mcp@latest", "--autoConnect"]
  3. जब एजेंट कनेक्ट करने की कोशिश करता है, तो Chrome एक डायलॉग बॉक्स दिखाता है. इसमें अनुमति मांगी जाती है. अनुमति दें पर क्लिक करें.

मैन्युअल तरीके से कनेक्ट करना

अगर --autoConnect का इस्तेमाल नहीं किया जा सकता (उदाहरण के लिए, सैंडबॉक्स वाले एनवायरमेंट में), तो डिबगिंग पोर्ट के साथ Chrome को मैन्युअल तरीके से शुरू किया जा सकता है. इसके बाद, --browser-url का इस्तेमाल करके कनेक्ट किया जा सकता है.

  1. रिमोट डिबगिंग की सुविधा चालू करके और उपयोगकर्ता के डेटा की कस्टम डायरेक्ट्री के साथ, टर्मिनल से Chrome शुरू करें.
    • macOS: shell /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222 --user-data-dir=/tmp/chrome-profile-stable
    • Windows: shell start chrome --remote-debugging-port=9222 --user-data-dir=%TEMP%\chrome-profile-stable
    • Linux: shell google-chrome --remote-debugging-port=9222 --user-data-dir=/tmp/chrome-profile-stable
  2. अपने एजेंट को इस पोर्ट से कनेक्ट करने के लिए कॉन्फ़िगर करें: json "args": ["chrome-devtools-mcp@latest", "--browser-url=http://127.0.0.1:9222"]

कॉन्फ़िगरेशन के विकल्पों का रेफ़रंस

यहां दिए गए सेक्शन में, कॉन्फ़िगरेशन के लिए उपलब्ध फ़्लैग की सूची दी गई है. नए विकल्पों और अपडेट के लिए, Chrome DevTools MCP GitHub रिपॉज़िटरी देखें.

कनेक्शन के विकल्प

इन विकल्पों का इस्तेमाल करके, यह कॉन्फ़िगर करें कि सर्वर, Chrome से कैसे कनेक्ट होगा.

झंडा टाइप डिफ़ॉल्ट ब्यौरा
--autoConnect या --auto-connect बूलियन false यह कुकी, स्थानीय तौर पर चल रहे Chrome (144+) इंस्टेंस से अपने-आप कनेक्ट हो जाती है. इसके लिए, chrome://inspect/#remote-debugging का इस्तेमाल करके रिमोट डीबगिंग की सुविधा चालू करनी होगी.
--browserUrl या --browser-url
-u
स्ट्रिंग false चल रहे और डीबग किए जा सकने वाले Chrome इंस्टेंस (उदाहरण के लिए, http://127.0.0.1:9222) से कनेक्ट करें.
--wsEndpoint या --ws-endpoint
-w
स्ट्रिंग false WebSocket एंडपॉइंट, जो चालू Chrome इंस्टेंस से कनेक्ट होता है. उदाहरण के लिए, ws://127.0.0.1:9222/devtools/browser/<id>. यह --browserUrl का विकल्प है.
--wsHeaders या --ws-headers स्ट्रिंग false JSON फ़ॉर्मैट में WebSocket कनेक्शन के लिए कस्टम हेडर (उदाहरण के लिए, '{"Authorization":"Bearer token"}'). यह सिर्फ़ --wsEndpoint के साथ काम करता है.

ब्राउज़र लॉन्च करने के विकल्प

ये विकल्प तब लागू होते हैं, जब एमसीपी सर्वर Chrome को शुरू करता है.

झंडा टाइप डिफ़ॉल्ट ब्यौरा
--headless बूलियन false इस विकल्प से, Chrome को हेडलेस (बिना यूज़र इंटरफ़ेस) मोड में चलाया जाता है.
--channel स्ट्रिंग stable इससे यह तय होता है कि Chrome के किस चैनल का इस्तेमाल करना है. विकल्प: canary, dev, beta, और stable.
--executablePath या --executable-path
-e
स्ट्रिंग false Chrome की कस्टम एक्ज़िक्यूट की जा सकने वाली फ़ाइल का पाथ.
--userDataDir या --user-data-dir स्ट्रिंग ब्यौरा देखें उपयोगकर्ता डेटा डायरेक्ट्री का पाथ. डिफ़ॉल्ट वैल्यू $HOME/.cache/chrome-devtools-mcp/chrome-profile$CHANNEL_SUFFIX_IF_NON_STABLE है.
--isolated बूलियन false यह कुकी, उपयोगकर्ता के डेटा की एक ऐसी अस्थायी डायरेक्ट्री बनाती है जिसे ब्राउज़र बंद होने पर अपने-आप मिटा दिया जाता है.
--viewport स्ट्रिंग false शुरुआती व्यूपोर्ट का साइज़ (उदाहरण के लिए, 1280x720). बिना डिसप्ले वाले ब्राउज़र मोड में, ज़्यादा से ज़्यादा साइज़ 3840x2160 होता है.
--proxyServer या --proxy-server स्ट्रिंग false प्रॉक्सी सर्वर का कॉन्फ़िगरेशन, Chrome को पास किया जाता है.
--chromeArg या --chrome-arg ऐरे false Chrome को पास करने के लिए अतिरिक्त तर्क.
--ignoreDefaultChromeArg या --ignore-default-chrome-arg ऐरे false Chrome के लिए डिफ़ॉल्ट आर्ग्युमेंट को साफ़ तौर पर बंद करें.

सुरक्षा और निजता के विकल्प

सुरक्षा सेटिंग और डेटा की निजता को मैनेज करने के लिए, इन विकल्पों का इस्तेमाल करें.

झंडा टाइप डिफ़ॉल्ट ब्यौरा
--acceptInsecureCerts या --accept-insecure-certs बूलियन false यह खुद हस्ताक्षर किए गए और समयसीमा खत्म हो चुके सर्टिफ़िकेट से जुड़ी गड़बड़ियों को अनदेखा करता है. सावधानी से इस्तेमाल करें.
--blockedUrlPattern या --blocked-url-pattern ऐरे false यह सेटिंग, नेटवर्क ऐक्सेस को सीमित करती है. इसके लिए, यह कुछ यूआरएल पैटर्न को ब्लॉक करती है. यह URLPattern का इस्तेमाल करती है. यह कुकी, नेविगेशन और सब-रिसोर्स को ब्लॉक करती है.
--allowedUrlPattern या --allowed-url-pattern ऐरे false यह सेटिंग, नेटवर्क के ऐक्सेस को सीमित करती है. इसके लिए, सिर्फ़ तय किए गए यूआरएल पैटर्न को अनुमति दी जाती है. इसके लिए, Chrome 149 या उसके बाद का वर्शन होना ज़रूरी है.
--redactNetworkHeaders या --redact-network-headers बूलियन false यह कुकी, संवेदनशील नेटवर्क हेडर को क्लाइंट को वापस भेजने से पहले छिपा देती है.
--usageStatistics या --usage-statistics बूलियन true इस कुकी से, इस्तेमाल के आंकड़े इकट्ठा किए जाते हैं. इससे टूल को बेहतर बनाने में मदद मिलती है. CHROME_DEVTOOLS_MCP_NO_USAGE_STATISTICS या CI एनवायरमेंट वैरिएबल का इस्तेमाल करके भी इसे बंद किया जा सकता है.
--performanceCrux या --performance-crux बूलियन true यह कुकी, परफ़ॉर्मेंस ट्रेस से यूआरएल को Google CrUX API को भेजती है, ताकि असली उपयोगकर्ता के अनुभव का डेटा फ़ेच किया जा सके.

सुविधाओं की कैटगरी

इन फ़्लैग का इस्तेमाल करके, टूल के ग्रुप को चालू या बंद किया जा सकता है.

झंडा टाइप डिफ़ॉल्ट ब्यौरा
--categoryEmulation या --category-emulation बूलियन true यह कुकी, एम्यूलेशन से जुड़े टूल चालू करती है.
--categoryNetwork या --category-network बूलियन true नेटवर्क से जुड़े टूल चालू करता है.
--categoryPerformance या --category-performance बूलियन true यह कुकी, परफ़ॉर्मेंस से जुड़े टूल को चालू करती है.
--categoryExtensions या --category-extensions बूलियन false यह कुकी, एक्सटेंशन से जुड़े टूल चालू करती है. यह सुविधा सिर्फ़ पाइप कनेक्शन के साथ काम करती है.
--categoryExperimentalThirdParty या --category-experimental-third-party बूलियन false इस कुकी से, जांच किए गए पेज पर मौजूद तीसरे पक्ष के डेवलपर टूल चालू हो जाते हैं.
--categoryExperimentalWebmcp या --category-experimental-webmcp बूलियन false यह कुकी, WebMCP टूल को डीबग करने की सुविधा चालू करती है. इसके लिए, Chrome 149 या उसके बाद का वर्शन होना ज़रूरी है. साथ ही, WebMCP की सुविधाएं चालू होनी चाहिए.
--memoryDebugging या --memory-debugging बूलियन false यह कुकी, मेमोरी डीबग करने वाले टूल चालू करती है.

स्क्रीनशॉट के विकल्प

इन विकल्पों का इस्तेमाल करके, यह तय करें कि एजेंट स्क्रीनशॉट कैसे कैप्चर करेगा.

झंडा टाइप डिफ़ॉल्ट ब्यौरा
--screenshotFormat या --screenshot-format स्ट्रिंग false यह विकल्प, डिफ़ॉल्ट आउटपुट फ़ॉर्मैट (png) को बदल देता है. विकल्प: jpeg, png, और webp. jpeg और webp फ़ॉर्मैट छोटे होते हैं. इससे एआई से की जाने वाली बातचीत में कॉन्टेक्स्ट का साइज़ कम करने में मदद मिलती है.
--screenshotQuality या --screenshot-quality संख्या false यह कुकी, jpeg और webp के लिए कंप्रेस करने की क्वालिटी (0-100) को बदल देती है.
--screenshotMaxWidth या --screenshot-max-width संख्या false पिक्सल में ज़्यादा से ज़्यादा चौड़ाई. बड़े स्क्रीनशॉट को छोटा कर दिया जाता है.
--screenshotMaxHeight या --screenshot-max-height संख्या false पिक्सल में ज़्यादा से ज़्यादा ऊंचाई. बड़े स्क्रीनशॉट को छोटा कर दिया जाता है.

एक्सपेरिमेंट के तौर पर उपलब्ध विकल्प

इन विकल्पों का इस्तेमाल करके, डेवलपमेंट के दौरान मौजूद एक्सपेरिमेंटल सुविधाओं को चालू करें.

झंडा टाइप डिफ़ॉल्ट ब्यौरा
--experimentalPageIdRouting या --experimental-page-id-routing बूलियन false यह कुकी, पेज के स्कोप वाले टूल पर pageId को दिखाती है, ताकि एक साथ एजेंट सेशन में अनुरोधों को रूट किया जा सके.
--experimentalDevtools या --experimental-devtools बूलियन false यह कुकी, DevTools टारगेट पर ऑटोमेशन की सुविधा चालू करती है.
--experimentalVision या --experimental-vision बूलियन false इससे कोऑर्डिनेट के आधार पर काम करने वाले टूल इस्तेमाल किए जा सकते हैं. जैसे, click_at. आम तौर पर, इसके लिए कंप्यूटर के इस्तेमाल वाला ऐसा मॉडल ज़रूरी होता है जो स्क्रीनशॉट देखकर सटीक कोऑर्डिनेट जनरेट कर सके.
--experimentalStructuredContent या --experimental-structured-content बूलियन false स्ट्रक्चर में फ़ॉर्मैट किया गया कॉन्टेंट दिखाता है.
--experimentalIncludeAllPages या --experimental-include-all-pages बूलियन false इसमें सभी तरह के पेज शामिल होते हैं. जैसे, वेबव्यू और बैकग्राउंड पेज.
--experimentalScreencast या --experimental-screencast बूलियन false स्क्रीनकास्ट टूल दिखाता है (इसके लिए, PATH में ffmpeg होना ज़रूरी है).
--experimentalFfmpegPath या --experimental-ffmpeg-path स्ट्रिंग false ffmpeg एक्ज़ीक्यूटेबल का पाथ.

दूसरे विकल्प

लॉगिंग को कॉन्फ़िगर करने या टूल के आसान सेट को चालू करने के लिए, इन विकल्पों का इस्तेमाल करें.

झंडा टाइप डिफ़ॉल्ट ब्यौरा
--slim बूलियन false इसमें तीन टूल (नेविगेशन, स्क्रिप्ट एक्ज़ीक्यूट करना, और स्क्रीनशॉट) का छोटा सेट होता है. यह कुकी, ब्राउज़र के सामान्य टास्क के लिए काम की होती है.
--logFile या --log-file स्ट्रिंग false डीबग लॉग लिखने के लिए, फ़ाइल का पाथ.

एनवायरमेंट वैरिएबल

सर्वर को कॉन्फ़िगर करने के लिए, इन एनवायरमेंट वैरिएबल का भी इस्तेमाल किया जा सकता है:

  • CHROME_DEVTOOLS_MCP_NO_USAGE_STATISTICS: इस विकल्प को सेट करने पर, इस्तेमाल से जुड़े आँकड़ों को इकट्ठा करने की सुविधा बंद हो जाती है. यह --no-usage-statistics के बराबर है.
  • CHROME_DEVTOOLS_MCP_NO_UPDATE_CHECKS: इस विकल्प को सेट करने पर, अपडेट के लिए समय-समय पर होने वाली जांच बंद हो जाती है.
  • CI: अगर इसे सेट किया जाता है, तो इस्तेमाल से जुड़े आँकड़े इकट्ठा करने की सुविधा बंद हो जाती है.
  • DEBUG: वर्बोस डीबग लॉगिंग चालू करने के लिए, इसे * पर सेट करें. यह --logFile के साथ काम करता है.