প্রকল্প সম্পর্কে
MCP Inspector হলো Model Context Protocol (MCP) সার্ভার পরীক্ষা ও নিরীক্ষণের জন্য ডেভেলপার-কেন্দ্রিক একটি টুল। এটি একটি একক npm প্যাকেজ, `@modelcontextprotocol/inspector` হিসেবে সরবরাহ করা হয় এবং একটি গ্লোবাল বাইনারি, `mcp-inspector` প্রকাশ করে, যা তিনটি মোডে চলে:
- **Web** — একটি Vite + React + Mantine সিঙ্গেল-পেজ অ্যাপ্লিকেশন, সাথে Node.js ব্যাকএন্ড, যা সার্ভার নিরীক্ষণের জন্য ভিজ্যুয়াল ইন্টারফেস দেয়।
- **CLI** — অটোমেশন, CI পাইপলাইন এবং দ্রুত এজেন্ট ফিডব্যাক লুপের জন্য ডিজাইন করা একটি স্ক্রিপ্টযোগ্য কমান্ড-লাইন ক্লায়েন্ট।
- **TUI** — Ink দিয়ে তৈরি একটি ইন্টারঅ্যাকটিভ টার্মিনাল UI, যারা টার্মিনাল-ভিত্তিক ওয়ার্কফ্লো পছন্দ করেন তাদের জন্য।
তিনটি মোডই একই বাইনারির মাধ্যমে ফ্ল্যাগ দিয়ে চালু করা হয়:
```bash
npx @modelcontextprotocol/inspector # web UI (default)
npx @modelcontextprotocol/inspector --cli # CLI mode
npx @modelcontextprotocol/inspector --tui # TUI mode
```
## আর্কিটেকচার
প্রকল্পটি একটি npm ওয়ার্কস্পেস নয়। `clients/`-এর অধীনে প্রতিটি ক্লায়েন্ট নিজস্ব `package.json` এবং `node_modules` বজায় রাখে। শেয়ার্ড কোড `core/`-এ থাকে এবং `@inspector/core` বিল্ড-টাইম অ্যালিয়াসের মাধ্যমে ব্যবহৃত হয়। `core/` দ্বারা ইমপোর্ট করা রানটাইম ডিপেন্ডেন্সিগুলো রেপো রুটে একবার ঘোষণা করা হয়, অন্যদিকে প্রতিটি ক্লায়েন্ট শুধু নিজস্ব UI স্ট্যাক, বান্ডলার-ইনলাইনড প্যাকেজ এবং ডেভ টুলিং ঘোষণা করে। `clients/cli` এবং `clients/launcher` প্যাকেজগুলোর নিজস্ব কোনো রানটাইম ডিপেন্ডেন্সি নেই।
## প্রকল্প লেআউট
- `clients/web/` — Web ক্লায়েন্ট (Vite + React + Mantine)। `src/` ডিরেক্টরিতে ব্রাউজার অ্যাপ থাকে; `server/`-এ Node ব্যাকএন্ড থাকে।
- `clients/cli/` — CLI ক্লায়েন্ট, `@inspector/core` অ্যালিয়াস ব্যবহার করে tsup দিয়ে বান্ডল করা।
- `clients/tui/` — TUI ক্লায়েন্ট, Ink + React দিয়ে তৈরি এবং tsup দিয়ে বান্ডল করা।
- `clients/launcher/` — শেয়ার্ড লঞ্চার, যা `mcp-inspector` বাইনারি সরবরাহ করে এবং উপযুক্ত ক্লায়েন্টে ডিসপ্যাচ করে।
- `core/` — `@inspector/core` অ্যালিয়াসের মাধ্যমে ব্যবহৃত শেয়ার্ড কোড; এর কোনো `package.json` নেই।
- `test-servers/` — ইন্টিগ্রেশন ও স্মোক টেস্টে ব্যবহৃত কম্পোজেবল MCP টেস্ট সার্ভার এবং ফিক্সচার।
- `scripts/` — রুট বিল্ড ও ভেরিফিকেশন টুলিং, যার মধ্যে ইনস্টল ক্যাসকেড, স্মোক টেস্ট এবং CI অটোমেশন রয়েছে।
- `docs/` — আর্কিটেকচার, টেস্টিং, কোয়ালিটি গেট, সিক্রেট স্টোরেজ, মাইগ্রেশন, Docker ব্যবহার ইত্যাদি কভার করা টাস্ক-ভিত্তিক গাইড।
- `specification/` — ডিজাইন ও বিল্ড স্পেসিফিকেশন।
- `.claude/skills/` — এজেন্ট স্কিল, প্রতিটি নিজস্ব ডিরেক্টরিতে, প্রসিডিউর নাম অনুযায়ী অন-ডিমান্ড লোড করা হয়।
## ডেভেলপমেন্ট ওয়ার্কফ্লো
Node `>=22.19.0` প্রয়োজন। রেপোজিটরি রুটে `npm install` চালানোর পর (postinstall স্ক্রিপ্ট প্রতিটি ক্লায়েন্টে ক্যাসকেড করে), web, CLI, TUI এবং লঞ্চার ক্রমানুসারে কম্পাইল করতে `npm run build` চালান। দ্রুত web ডেভেলপমেন্টের জন্য, লঞ্চার রিবিল্ড না করেই দ্রুত হট-মডিউল রিপ্লেসমেন্টের জন্য `clients/web` থেকে সরাসরি Vite চালাতে পারেন।
বাধ্যতামূলক প্রি-পুশ গেট হলো `npm run local:gate`, যা ফরম্যাট চেক, লিন্টিং, টাইপ-চেকিং, বিল্ড, ইউনিট টেস্ট, কভারেজ ভেরিফিকেশন (প্রতি-ফাইলে 90% থ্রেশহোল্ড), স্মোক টেস্ট এবং Storybook টেস্ট একসাথে চালায়। এটি স্থানীয়ভাবে সম্পূর্ণ GitHub CI চেকের প্রতিচ্ছবি।
## ডকুমেন্টেশন হাইলাইটস
- **আর্কিটেকচার** — শেয়ার্ড `@inspector/core` প্যাকেজ এবং web ক্লায়েন্ট কম্পোনেন্ট মডেলের বিস্তারিত।
- **টেস্টিং ও কোয়ালিটি গেট** — প্রতিটি ভ্যালিডেশন স্ক্রিপ্ট কী যাচাই করে এবং CI-বনাম-লোকাল গেট বিভাজন কভার করে।
- **সিক্রেট স্টোরেজ** — OS কীচেইন, প্লেইনটেক্সট ফাইল এবং ইন-মেমরি স্টোরে সিক্রেট কীভাবে ব্যবস্থাপনা করা হয়, এনক্রিপশন ও লকিংসহ।
- **একটি MCP সার্ভার স্মোক-টেস্টিং** — শেল বা CI জবের জন্য connect → list → call → assert ওয়ার্কফ্লো, JSON আউটপুট এবং exit-code ম্যাপিংসহ।
- **v1 থেকে v2-তে মাইগ্রেশন** — CLI ফ্ল্যাগ পরিবর্তন, `--config` বনাম `--catalog` বিভাজন, Node ইঞ্জিন বৃদ্ধি এবং env-var নাম পরিবর্তন।
- **রোডম্যাপ** — প্রকাশিত MCP রোডম্যাপের সাথে সামঞ্জস্যপূর্ণ ছয় মাসের পরিকল্পনা, যা স্পেক কমপ্লায়েন্স, অফিসিয়াল এক্সটেনশন সাপোর্ট এবং অভিজ্ঞতার উন্নতি কভার করে।
## অবদান রাখা
অবদানগুলো ইস্যু-চালিত ওয়ার্কফ্লো অনুসরণ করে। সমস্ত কাজ v2 প্রকল্প বোর্ডে ট্র্যাক করা উচিত, PR `v2/main`-এর বিরুদ্ধে খোলা এবং `Closes #<issue>`-এর মাধ্যমে লিংক করা। বাহ্যিক অবদান পুল রিকোয়েস্টের বদলে ইস্যু হিসেবে গ্রহণ করা হয়। `AGENTS.md` ফাইলটি মানব ও AI অবদানকারী উভয়ের জন্য প্রকল্পের নিয়মাবলী নির্ধারণ করে, যা ভার্সনিং, TypeScript স্ট্যান্ডার্ড, Mantine/React কনভেনশন এবং টেস্টিং প্রয়োজনীয়তা কভার করে। `CLAUDE.md` ফাইলটি Claude Code-এর এন্ট্রি পয়েন্ট হিসেবে কাজ করে, স্বয়ংক্রিয়ভাবে `AGENTS.md` লোড করে যাতে এজেন্ট ও মানুষ একই সত্যের উৎস থেকে কাজ করে।
## লাইসেন্স
MCP প্রকল্পটি MIT থেকে Apache-2.0-তে রূপান্তরিত হচ্ছে। নতুন অবদান Apache-2.0-এর অধীনে লাইসেন্সকৃত, ডকুমেন্টেশন (স্পেসিফিকেশন বাদে) CC-BY-4.0-এর অধীনে, এবং রিলাইসেন্সিং সম্মতি না দেওয়া লিগ্যাসি অবদান MIT-এর অধীনে থাকবে।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.