ব্রাউজারের সাথে এর মিথস্ক্রিয়া, কোন টুলগুলো সক্রিয় থাকবে এবং এটি কীভাবে ডেটা পরিচালনা করবে, তা কাস্টমাইজ করতে আপনি এজেন্টদের জন্য ক্রোম ডেভটুলস কনফিগার করতে পারেন।
আপনার মডেল কনটেক্সট প্রোটোকল (MCP) ক্লায়েন্ট কনফিগারেশন ফাইলের args অ্যারেতে কমান্ড-লাইন ফ্ল্যাগগুলো পাস করে সার্ভারটি কনফিগার করুন। এটি সাধারণত config.json ফাইল হয়ে থাকে।
উদাহরণস্বরূপ, ক্রোমকে হেডলেস মোডে চালাতে এবং ক্যানারি চ্যানেল ব্যবহার করতে, নিম্নলিখিত কনফিগারেশনটি ব্যবহার করুন:
{
"mcpServers": {
"chrome-devtools": {
"command": "npx",
"args": [
"-y",
"chrome-devtools-mcp@latest",
"--headless",
"--channel=canary"
]
}
}
}
সাধারণ কনফিগারেশন পরিস্থিতি
নিম্নলিখিত দৃশ্যকল্পগুলিতে এজেন্টদের জন্য ক্রোম ডেভটুলস কনফিগার করার প্রচলিত উপায়গুলি বর্ণনা করা হয়েছে।
হেডলেস মোডে চালান
দৃশ্যমান ব্রাউজার উইন্ডো ছাড়া ব্যাকগ্রাউন্ড টাস্ক সম্পাদন করতে, ক্রোমকে হেডলেস (কোনো UI ছাড়া) মোডে চালান। আপনার সার্ভার আর্গুমেন্টে --headless ফ্ল্যাগটি যোগ করুন।
বিদ্যমান ব্রাউজার সেশনে সংযোগ করুন
ডিফল্টরূপে, এজেন্টদের জন্য ডেভটুলস একটি নতুন ক্রোম ইনস্ট্যান্স চালু করে। তবে, আপনি আপনার এজেন্টকে একটি বিদ্যমান ব্রাউজার সেশনের সাথে সংযুক্ত করতে পারেন। এটি তখন কাজে আসে যখন আপনার এজেন্টকে এমন একটি সেশনের সমস্যা তদন্ত করার প্রয়োজন হয় যা আপনি ইতিমধ্যেই শুরু করেছেন (উদাহরণস্বরূপ, যদি আপনি আগে থেকেই সাইন ইন করে থাকেন)।
আপনি দুটি উপায়ে একটি বিদ্যমান সেশনে সংযোগ করতে পারেন:
স্বয়ংক্রিয় সংযোগ (ক্রোম ১৪৪+)
আপনি যদি --autoConnect ফ্ল্যাগটি ব্যবহার করেন, তাহলে MCP সার্ভার স্বয়ংক্রিয়ভাবে একটি সক্রিয় Chrome ইনস্ট্যান্সের সাথে সংযুক্ত হয়।
- আপনার চালু থাকা ক্রোম ব্রাউজারে,
chrome://inspect/#remote-debuggingএ যান এবং রিমোট ডিবাগিং চালু করুন। - আপনার MCP কনফিগারেশনে
--autoConnectযোগ করুন:json "args": ["chrome-devtools-mcp@latest", "--autoConnect"] - এজেন্টটি সংযোগ করার চেষ্টা করলে, Chrome অনুমতি চেয়ে একটি ডায়ালগ বক্স দেখায়। Allow-এ ক্লিক করুন।
ম্যানুয়াল সংযোগ
যদি আপনি --autoConnect ব্যবহার করতে না পারেন (উদাহরণস্বরূপ, একটি স্যান্ডবক্সড পরিবেশে), তাহলে আপনি ম্যানুয়ালি একটি ডিবাগিং পোর্ট সহ ক্রোম চালু করতে পারেন এবং --browser-url ব্যবহার করে সংযোগ করতে পারেন।
- টার্মিনাল থেকে রিমোট ডিবাগিং সক্রিয় করে এবং একটি কাস্টম ইউজার ডেটা ডিরেক্টরি সহ ক্রোম চালু করুন।
- ম্যাকওএস :
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
- ম্যাকওএস :
- এই পোর্টে সংযোগ করার জন্য আপনার এজেন্টকে কনফিগার করুন:
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 , এবং webp । jpeg এবং 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সাথে একত্রে কাজ করে)।