منصوبے کے بارے میں
MCP انسپکٹر ایک ڈویلپر فوکسڈ ٹول ہے جو ماڈل کانٹیکسٹ پروٹوکول (MCP) سرورز کے معائنہ اور جانچ کے لیے استعمال ہوتا ہے۔ یہ ایک واحد npm پیکج، `@modelcontextprotocol/inspector` کے طور پر فراہم کیا جاتا ہے، اور ایک عالمی بائنری، `mcp-inspector`، پیش کرتا ہے جو تین طریقوں میں چلتا ہے:
- **ویب** — ایک Vite + React + Mantine سنگل پیج ایپلیکیشن جس میں Node.js بیک اینڈ ہے، جو سرور معائنہ کے لیے ایک بصری انٹرفیس پیش کرتا ہے۔
- **CLI** — ایک اسکرپٹ ایبل کمانڈ لائن کلائنٹ جو آٹومیشن، CI پائپ لائنز، اور تیز ایجنٹ فیڈ بیک لوپس کے لیے ڈیزائن کیا گیا ہے۔
- **TUI** — ایک انٹرایکٹو ٹرمینل UI جو Ink کے ساتھ بنایا گیا ہے، ان صارفین کے لیے جو ٹرمینل پر مبنی ورک فلو کو ترجیح دیتے ہیں۔
تینوں طریقوں کو ایک ہی بائنری کے ذریعے جھنڈوں کے ساتھ بلایا جاتا ہے:
```bash
npx @modelcontextprotocol/inspector # ویب UI (ڈیفالٹ)
npx @modelcontextprotocol/inspector --cli # CLI موڈ
npx @modelcontextprotocol/inspector --tui # TUI موڈ
```
## آرکیٹیکچر
یہ پروجیکٹ npm ورک اسپیس نہیں ہے۔ `clients/` کے تحت ہر کلائنٹ اپنا `package.json` اور `node_modules` برقرار رکھتا ہے۔ مشترکہ کوڈ `core/` میں رہتا ہے اور `@inspector/core` بلڈ ٹائم ایلیاس کے ذریعے استعمال کیا جاتا ہے۔ `core/` کے ذریعے درآمد کردہ رن ٹائم ڈیپنڈنسیز کو ریپو روٹ پر ایک بار اعلان کیا جاتا ہے، جبکہ ہر کلائنٹ صرف اپنا UI اسٹیک، بنڈلر ان لائنڈ پیکجز، اور ڈیو ٹولنگ کا اعلان کرتا ہے۔ `clients/cli` اور `clients/launcher` پیکجز کی اپنی کوئی رن ٹائم ڈیپنڈنسی نہیں ہے۔
## پروجیکٹ لے آؤٹ
- `clients/web/` — ویب کلائنٹ (Vite + React + Mantine)۔ `src/` ڈائریکٹری براؤزر ایپ پر مشتمل ہے؛ `server/` Node بیک اینڈ رکھتا ہے۔
- `clients/cli/` — CLI کلائنٹ، tsup کے ساتھ `@inspector/core` ایلیاس استعمال کرتے ہوئے بنڈل کیا گیا۔
- `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` چلانے کے بعد (پوسٹ انسٹال اسکرپٹ ہر کلائنٹ میں کیسکیڈ ہوتا ہے)، ویب، CLI، TUI، اور لانچر کو ترتیب سے کمپائل کرنے کے لیے `npm run build` چلائیں۔ تیز ویب ڈیولپمنٹ کے لیے، آپ لانچر کو دوبارہ بنائے بغیر تیز ہاٹ ماڈیول ریپلیسمنٹ کے لیے `clients/web` سے براہ راست Vite چلا سکتے ہیں۔
لازمی پری پش گیٹ `npm run local:gate` ہے، جو فارمیٹ چیکس، لنٹنگ، ٹائپ چیکنگ، بلڈز، یونٹ ٹیسٹ، کوریج تصدیق (فی فائل 90% کی حد)، سموک ٹیسٹ، اور Storybook ٹیسٹ کو زنجیر بناتا ہے۔ یہ مکمل GitHub CI چیک کو مقامی طور پر آئینہ دار بناتا ہے۔
## دستاویزات کی جھلکیاں
- **آرکیٹیکچر** — مشترکہ `@inspector/core` پیکج اور ویب کلائنٹ کمپوننٹ ماڈل کی تفصیلات۔
- **ٹیسٹنگ اور کوالٹی گیٹ** — ہر توثیقی اسکرپٹ کیا تصدیق کرتا ہے اور CI-بمقابلہ-مقامی گیٹ تقسیم کا احاطہ۔
- **سیکرٹ اسٹوریج** — OS کیچینز، پلین ٹیکسٹ فائلوں، اور ان میموری اسٹورز میں سیکرٹس کا انتظام کیسے کیا جاتا ہے، بشمول انکرپشن اور لاکنگ۔
- **MCP سرور کا سموک ٹیسٹنگ** — شیل یا CI جابز کے لیے کنیکٹ → لسٹ → کال → اسرٹ ورک فلو، JSON آؤٹ پٹ اور ایگزٹ کوڈ میپنگ کے ساتھ۔
- **v1 سے v2 میں مائیگریشن** — CLI جھنڈے کی تبدیلیاں، `--config` بمقابلہ `--catalog` تقسیم، Node انجن اپ گریڈ، اور env-var نام تبدیل۔
- **روڈ میپ** — شائع شدہ MCP روڈ میپ کے مطابق چھ ماہ کا منصوبہ، جس میں اسپیک کمپلائنس، آفیشل ایکسٹینشن سپورٹ، اور تجربے میں بہتری شامل ہے۔
## تعاون
تعاون ایک ایشو پر مبنی ورک فلو کی پیروی کرتا ہے۔ تمام کام v2 پروجیکٹ بورڈ پر ٹریک کیا جانا چاہیے، PRs `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.