কনফিগারেশন

ব্রাউজারের সাথে এর মিথস্ক্রিয়া, কোন টুলগুলো সক্রিয় থাকবে এবং এটি কীভাবে ডেটা পরিচালনা করবে, তা কাস্টমাইজ করতে আপনি এজেন্টদের জন্য ক্রোম ডেভটুলস কনফিগার করতে পারেন।

আপনার মডেল কনটেক্সট প্রোটোকল (MCP) ক্লায়েন্ট কনফিগারেশন ফাইলের args অ্যারেতে কমান্ড-লাইন ফ্ল্যাগগুলো পাস করে সার্ভারটি কনফিগার করুন। এটি সাধারণত config.json ফাইল হয়ে থাকে।

উদাহরণস্বরূপ, ক্রোমকে হেডলেস মোডে চালাতে এবং ক্যানারি চ্যানেল ব্যবহার করতে, নিম্নলিখিত কনফিগারেশনটি ব্যবহার করুন:

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

সাধারণ কনফিগারেশন পরিস্থিতি

নিম্নলিখিত দৃশ্যকল্পগুলিতে এজেন্টদের জন্য ক্রোম ডেভটুলস কনফিগার করার প্রচলিত উপায়গুলি বর্ণনা করা হয়েছে।

হেডলেস মোডে চালান

দৃশ্যমান ব্রাউজার উইন্ডো ছাড়া ব্যাকগ্রাউন্ড টাস্ক সম্পাদন করতে, ক্রোমকে হেডলেস (কোনো UI ছাড়া) মোডে চালান। আপনার সার্ভার আর্গুমেন্টে --headless ফ্ল্যাগটি যোগ করুন।

বিদ্যমান ব্রাউজার সেশনে সংযোগ করুন

ডিফল্টরূপে, এজেন্টদের জন্য ডেভটুলস একটি নতুন ক্রোম ইনস্ট্যান্স চালু করে। তবে, আপনি আপনার এজেন্টকে একটি বিদ্যমান ব্রাউজার সেশনের সাথে সংযুক্ত করতে পারেন। এটি তখন কাজে আসে যখন আপনার এজেন্টকে এমন একটি সেশনের সমস্যা তদন্ত করার প্রয়োজন হয় যা আপনি ইতিমধ্যেই শুরু করেছেন (উদাহরণস্বরূপ, যদি আপনি আগে থেকেই সাইন ইন করে থাকেন)।

আপনি দুটি উপায়ে একটি বিদ্যমান সেশনে সংযোগ করতে পারেন:

স্বয়ংক্রিয় সংযোগ (ক্রোম ১৪৪+)

আপনি যদি --autoConnect ফ্ল্যাগটি ব্যবহার করেন, তাহলে MCP সার্ভার স্বয়ংক্রিয়ভাবে একটি সক্রিয় Chrome ইনস্ট্যান্সের সাথে সংযুক্ত হয়।

  1. আপনার চালু থাকা ক্রোম ব্রাউজারে, chrome://inspect/#remote-debugging এ যান এবং রিমোট ডিবাগিং চালু করুন।
  2. আপনার MCP কনফিগারেশনে --autoConnect যোগ করুন: json "args": ["chrome-devtools-mcp@latest", "--autoConnect"]
  3. এজেন্টটি সংযোগ করার চেষ্টা করলে, Chrome অনুমতি চেয়ে একটি ডায়ালগ বক্স দেখায়। Allow-এ ক্লিক করুন।

ম্যানুয়াল সংযোগ

যদি আপনি --autoConnect ব্যবহার করতে না পারেন (উদাহরণস্বরূপ, একটি স্যান্ডবক্সড পরিবেশে), তাহলে আপনি ম্যানুয়ালি একটি ডিবাগিং পোর্ট সহ ক্রোম চালু করতে পারেন এবং --browser-url ব্যবহার করে সংযোগ করতে পারেন।

  1. টার্মিনাল থেকে রিমোট ডিবাগিং সক্রিয় করে এবং একটি কাস্টম ইউজার ডেটা ডিরেক্টরি সহ ক্রোম চালু করুন।
    • ম্যাকওএস : 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
    • লিনাক্স : 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 রিপোজিটরি দেখুন।

সংযোগ বিকল্পগুলি

সার্ভার কীভাবে ক্রোমের সাথে সংযোগ স্থাপন করবে তা কনফিগার করতে এই বিকল্পগুলি ব্যবহার করুন।

পতাকা প্রকার ডিফল্ট বর্ণনা
--autoConnect অথবা --auto-connect বুলিয়ান false স্বয়ংক্রিয়ভাবে স্থানীয়ভাবে চলমান একটি Chrome (144+) ইনস্ট্যান্সের সাথে সংযুক্ত হয়। এর জন্য chrome://inspect/#remote-debugging ব্যবহার করে রিমোট ডিবাগিং সক্রিয় করতে হবে।
--browserUrl অথবা --browser-url
-u
স্ট্রিং false একটি চালু ও ডিবাগযোগ্য ক্রোম ইনস্ট্যান্সের সাথে সংযোগ করুন (উদাহরণস্বরূপ, http://127.0.0.1:9222 )।
--wsEndpoint অথবা --ws-endpoint
-w
স্ট্রিং false চলমান ক্রোম ইনস্ট্যান্সের সাথে সংযোগ করার জন্য ওয়েবসকেট এন্ডপয়েন্ট (উদাহরণস্বরূপ, ws://127.0.0.1:9222/devtools/browser/<id> )। এটি --browserUrl এর বিকল্প।
--wsHeaders অথবা --ws-headers স্ট্রিং false JSON ফরম্যাটে WebSocket সংযোগের জন্য কাস্টম হেডার (উদাহরণস্বরূপ, '{"Authorization":"Bearer token"}' )। এটি শুধুমাত্র --wsEndpoint সাথে কাজ করে।

ব্রাউজার চালু করার বিকল্পগুলি

এমসিপি সার্ভার যখন ক্রোম চালু করে, তখন এই বিকল্পগুলো প্রযোজ্য হয়।

পতাকা প্রকার ডিফল্ট বর্ণনা
--headless বুলিয়ান false ক্রোমকে হেডলেস (কোনো UI ছাড়া) মোডে চালায়।
--channel স্ট্রিং stable ব্যবহার করার জন্য ক্রোম চ্যানেল নির্দিষ্ট করে। বিকল্পগুলো হলো: canary , dev , beta , এবং stable
--executablePath অথবা --executable-path
-e
স্ট্রিং false কাস্টম ক্রোম এক্সিকিউটেবলের পাথ।
--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 প্রক্সি সার্ভার কনফিগারেশন ক্রোমে পাঠানো হয়েছে।
--chromeArg অথবা --chrome-arg অ্যারে false ক্রোমে পাঠানোর জন্য অতিরিক্ত আর্গুমেন্ট।
--ignoreDefaultChromeArg অথবা --ignore-default-chrome-arg অ্যারে false ক্রোমের জন্য ডিফল্ট আর্গুমেন্টগুলো সুস্পষ্টভাবে নিষ্ক্রিয় করুন।

নিরাপত্তা এবং গোপনীয়তার বিকল্পগুলি

নিরাপত্তা সেটিংস ও ডেটা গোপনীয়তা পরিচালনা করতে এই বিকল্পগুলো ব্যবহার করুন।

পতাকা প্রকার ডিফল্ট বর্ণনা
--acceptInsecureCerts অথবা --accept-insecure-certs বুলিয়ান false সেলফ-সাইন্ড এবং মেয়াদোত্তীর্ণ সার্টিফিকেট সম্পর্কিত ত্রুটি উপেক্ষা করে। সতর্কতার সাথে ব্যবহার করুন।
--blockedUrlPattern অথবা --blocked-url-pattern অ্যারে false নির্দিষ্ট ইউআরএল প্যাটার্ন ( URLPattern ব্যবহার করে) ব্লক করার মাধ্যমে নেটওয়ার্ক অ্যাক্সেস সীমাবদ্ধ করে। নেভিগেশন এবং সাবরিসোর্স ব্লক করে।
--allowedUrlPattern অথবা --allowed-url-pattern অ্যারে false শুধুমাত্র নির্দিষ্ট ইউআরএল প্যাটার্ন অনুমোদনের মাধ্যমে নেটওয়ার্ক অ্যাক্সেস সীমাবদ্ধ করে। এর জন্য ক্রোম ১৪৯+ সংস্করণ প্রয়োজন।
--redactNetworkHeaders অথবা --redact-network-headers বুলিয়ান false ক্লায়েন্টের কাছে ফেরত পাঠানোর আগে সংবেদনশীল নেটওয়ার্ক হেডারগুলো গোপন করে।
--usageStatistics অথবা --usage-statistics বুলিয়ান true টুলটির উন্নতির জন্য ব্যবহারের পরিসংখ্যান সংগ্রহ সক্ষম করে। এটি CHROME_DEVTOOLS_MCP_NO_USAGE_STATISTICS অথবা CI এনভায়রনমেন্ট ভেরিয়েবল ব্যবহার করে নিষ্ক্রিয়ও করা যেতে পারে।
--performanceCrux অথবা --performance-crux বুলিয়ান true প্রকৃত ব্যবহারকারীর অভিজ্ঞতার ডেটা সংগ্রহের জন্য পারফরম্যান্স ট্রেস থেকে ইউআরএলগুলো গুগল ক্রাক্স এপিআই-তে পাঠানো হয়।

বৈশিষ্ট্য বিভাগ

এই ফ্ল্যাগগুলো ব্যবহার করে আপনি টুলগুলোর গ্রুপ চালু বা বন্ধ করতে পারেন।

পতাকা প্রকার ডিফল্ট বর্ণনা
--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 টুল ব্যবহার করে ডিবাগিং সক্ষম করে। এর জন্য WebMCP ফিচার সক্রিয় করা Chrome 149+ প্রয়োজন।
--memoryDebugging অথবা --memory-debugging বুলিয়ান false মেমরি ডিবাগিং টুলগুলো সক্রিয় করে।

স্ক্রিনশট বিকল্পগুলি

এজেন্ট কীভাবে স্ক্রিনশট নেবে, তা কাস্টমাইজ করতে এই অপশনগুলো ব্যবহার করুন।

পতাকা প্রকার ডিফল্ট বর্ণনা
--screenshotFormat অথবা --screenshot-format স্ট্রিং false ডিফল্ট আউটপুট ফরম্যাট ( png ) পরিবর্তন করে। বিকল্পগুলো হলো: jpeg , png , এবং webpjpeg এবং webp ফরম্যাটগুলো আকারে ছোট, যা AI কথোপকথনে কনটেক্সটের আকার কমাতে সাহায্য করে।
--screenshotQuality অথবা --screenshot-quality সংখ্যা false jpeg এবং webp এর জন্য কম্প্রেশন কোয়ালিটি (০-১০০) পরিবর্তন করে।
--screenshotMaxWidth অথবা --screenshot-max-width সংখ্যা false পিক্সেলে সর্বোচ্চ প্রস্থ। এর চেয়ে বড় স্ক্রিনশটগুলো ডাউনস্কেল করা হয়।
--screenshotMaxHeight অথবা --screenshot-max-height সংখ্যা false পিক্সেলে সর্বোচ্চ উচ্চতা। এর চেয়ে বড় স্ক্রিনশটগুলো ডাউনস্কেল করা হয়।

পরীক্ষামূলক বিকল্পগুলি

উন্নয়নাধীন পরীক্ষামূলক বৈশিষ্ট্যগুলো চালু করতে এই বিকল্পগুলো ব্যবহার করুন।

পতাকা প্রকার ডিফল্ট বর্ণনা
--experimentalPageIdRouting অথবা --experimental-page-id-routing বুলিয়ান false যুগপৎ এজেন্ট সেশনে অনুরোধ রাউট করার জন্য পেজ-স্কোপড টুলগুলিতে pageId প্রকাশ করে।
--experimentalDevtools অথবা --experimental-devtools বুলিয়ান false ডেভটুলস টার্গেটগুলোর উপর অটোমেশন সক্ষম করে।
--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 সাথে একত্রে কাজ করে)।