# MCP کنیکٹر

## Claude ڈائریکٹری کے ذریعے جوڑیں

[Claude ڈائریکٹری میں Nibomo](https://claude.ai/directory/nibomo) کھولیں، اسے جوڑیں، اپنے Nibomo اکاؤنٹ میں سائن اِن کریں اور رسائی کی اجازت دیں۔ Nibomo ایک کمیونٹی کنیکٹر کے طور پر درج ہے۔

Claude Code کے لیے وہی Claude سبسکرپشن اکاؤنٹ استعمال کریں اور جوڑنے کے بعد `/mcp` چیک کریں۔ API کلید اور فریق ثالث فراہم کنندہ کے ذریعے لاگ اِن آپ کے claude.ai کنیکٹرز خود بخود لوڈ نہیں کرتے۔

آپ Claude Code کو براہ راست بھی کنفیگر کر سکتے ہیں۔ نیچے دی گئی کمانڈ چلائیں، پھر Claude Code میں `/mcp` کھولیں اور براؤزر میں اجازت کا عمل مکمل کریں:

```bash
claude mcp add --transport http nibomo https://mcp.nibomo.com/mcp
```

[Claude Code MCP کی دستاویزات](https://code.claude.com/docs/en/mcp#use-mcp-servers-from-claudeai)۔

## جائزہ

Nibomo ایک ریموٹ MCP (Model Context Protocol) سرور چلاتا ہے تاکہ MCP کلائنٹس اور
AI ایجنٹس آپ کے وہ کارڈز پڑھ سکیں جن کی دہرائی باقی ہے، ایک ایک سوال کر کے آپ کے ساتھ ان کی دہرائی کر سکیں،
اور آپ کے لیے کارڈز اور ڈیکس بنا یا ان میں ترمیم کر سکیں۔

ایجنٹس دو طریقوں سے جڑ سکتے ہیں: اس MCP سرور کے ذریعے (Claude یا Cursor جیسے MCP کلائنٹس
کے لیے بہترین)، یا CLI ایجنٹس کے لیے [Agents API ڈسکوری URL](/ur/docs/api/) کے ذریعے۔
دونوں ایک ہی فی صارف ڈیٹا سطح تک پہنچتے ہیں؛ یہ صفحہ MCP سرور کے بارے میں ہے۔

اس سے اس پتے پر جڑیں:

```text
https://mcp.nibomo.com/mcp
```

ٹرانسپورٹ Streamable HTTP ہے۔ سرور ورک اسپیس کی دریافت، کارڈز اور ڈیکس کو پڑھنے اور لکھنے، حوالہ جاتی رہنماؤں، دہرائیوں اور اکاؤنٹ کے استعمال کے لیے آٹھ ٹولز فراہم کرتا ہے۔

## اسے اپنے کلائنٹ میں کیسے شامل کریں

زیادہ تر کلائنٹس ریموٹ MCP سرور کو کسٹم کنیکٹر کے طور پر شامل کرتے ہیں:

1. اپنے کلائنٹ کی کنیکٹر یا MCP سرور کی ترتیبات کھولیں۔
2. کسٹم کنیکٹر شامل کریں اور سرور URL `https://mcp.nibomo.com/mcp` پیسٹ کریں۔
3. انٹرایکٹو کلائنٹس میں، پوچھے جانے پر براؤزر میں اجازت دیں۔ سرور
   Dynamic Client Registration کے ساتھ OAuth 2.1 استعمال کرتا ہے، اس لیے نہ کوئی کلائنٹ سیکرٹ
   پیسٹ کرنا ہوتا ہے اور نہ پہلے کوئی ایپ رجسٹر کرنی ہوتی ہے۔
4. ہیڈلیس یا CLI استعمال کے لیے براؤزر فلو کے بجائے اپنی ایجنٹ API کلید کے ساتھ
   `Authorization: Bearer fca_…` ہیڈر سیٹ کریں۔

اجازت دینے کے بعد ورک اسپیس منتخب کرنے کے لیے ایک بار `list_workspaces` کال کریں، پھر
پڑھنے کے لیے `sql_query` اور کارڈز اور ڈیکس میں لکھنے کے لیے `sql_execute` استعمال کریں۔ دہرائی کے لیے
پہلے `next_review_card`، پھر `reveal_answer`، پھر `submit_review` کال کریں۔

## ٹولز

سرور آٹھ ٹولز فراہم کرتا ہے۔ پڑھنے اور لکھنے کو جان بوجھ کر الگ رکھا گیا ہے تاکہ کوئی ایک
ٹول محفوظ اور تباہ کن آپریشنز کو کبھی نہ ملائے۔

- `get_usage_limits` — اکاؤنٹ کا پلان، حدود اور موجودہ ماہانہ AI استعمال، سختی سے صرف پڑھنے کے لیے؛ یہ کارڈز کو نہ پڑھتا ہے نہ بدلتا ہے۔
- `sql_query` — آپ کے کارڈز اور ڈیکس تک سختی سے صرف پڑھنے کی رسائی (`SHOW TABLES`،
  `DESCRIBE`، `SHOW COLUMNS`، `SELECT`)۔
- `sql_execute` — آپ کے کارڈز اور ڈیکس تک لکھنے کی رسائی (`INSERT`، `UPDATE`،
  `DELETE`) ایک ایٹامک بیچ کے طور پر۔
- `list_workspaces` — ان ورک اسپیسز کی سختی سے صرف پڑھنے والی فہرست جن تک آپ کی رسائی ہے،
  ہر ایک کے ساتھ اس کا
  `workspaceId`، نام، فعال کارڈز کی تعداد، آخری سرگرمی، اور یہ کہ آیا وہ اس وقت آپ کا
  منتخب طے شدہ ورک اسپیس ہے۔ SQL اور دہرائی کے ٹولز کے اختیاری
  `workspaceId` آرگیومنٹ کے لیے لوٹایا گیا `workspaceId` استعمال کریں۔
- `get_guide` — ایک موضوع کے لیے سختی سے صرف پڑھنے والا حوالہ جاتی رہنما: `sql_dialect`،
  `card_authoring`، `bulk_authoring` یا `review_flow`۔ یہ ورک اسپیس کا کوئی ڈیٹا نہیں پڑھتا۔
- `next_review_card` — سختی سے صرف پڑھنے کے لیے: دہرائی کے لیے اگلا کارڈ لوٹاتا ہے، صرف
  سامنے والا رخ، اسی قطار کی ترتیب میں جو ایپس میں ہے۔ اختیاری `tags` یا `deckId`
  قطار کو محدود کرتا ہے۔
- `reveal_answer` — سختی سے صرف پڑھنے کے لیے: سیکھنے والے کے سامنے والے رخ کا جواب دینے کی کوشش کے بعد
  ایک کارڈ کا پچھلا رخ لوٹاتا ہے۔
- `submit_review` — ایک `Again`، `Hard`، `Good` یا `Easy` درجہ بندی درج کرتا ہے اور
  کارڈ کے FSRS شیڈیول کو آگے بڑھاتا ہے۔

SQL سطح جان بوجھ کر محدود ڈائلیکٹ ہے اور مکمل PostgreSQL نہیں ہے۔
یہ دستاویزات صرف تعاون یافتہ ڈائلیکٹ کا احاطہ کرتی ہیں، PostgreSQL مطابقت کا
حوالہ نہیں ہیں۔ بیانات صرف `workspace`، `cards`، `decks` اور
`review_events` وسائل تک پہنچ سکتے ہیں، ہر بیان آپ کے اپنے ورک اسپیس تک محدود ہوتا ہے، اور
پڑھنے اور لکھنے دونوں کی حد فی بیان `100` قطاریں ہے۔

## دہرائیاں

دہرائی کے ٹولز ایجنٹ کو سیکھنے والے سے ایک وقت میں ایک کارڈ پوچھنے اور ہر
درجہ بندی کو کارڈ کے FSRS شیڈیول میں محفوظ کرنے دیتے ہیں:

1. `next_review_card` ایک `cardId` اور `frontText` لوٹاتا ہے، یا جب کسی کارڈ کی
   دہرائی باقی نہ ہو تو `card: null`۔
2. سیکھنے والے کے جواب دینے کے بعد `reveal_answer` اس کارڈ کا `backText` لوٹاتا ہے۔
3. `submit_review` میں `cardId`، کلائنٹ کا بنایا ہوا `reviewId` UUID، ایک
   `rating` اور سیکھنے والے کا IANA `reviewedTimeZone` دیا جاتا ہے۔ سرور
   دہرائی کا وقت درج کرتا ہے اور کارڈ کا نیا شیڈیول لوٹاتا ہے۔

اگر جمع ہونے کے بارے میں یقین نہ ہو تو اسی `reviewId` کے ساتھ دوبارہ بھیجیں؛ اس سے کبھی دوسری
دہرائی درج نہیں ہوتی۔ جمع کرانے پر یہ جوابات بھی مل سکتے ہیں:

- `409 REVIEW_EVENT_CONFLICT` — دہرائی پہلے ہی درج ہو چکی ہے، اور غلطی کی
  تفصیلات میں کارڈ کا موجودہ شیڈیول ہوتا ہے۔
- `409 REVIEW_ID_CARD_MISMATCH` — یہ `reviewId` پہلے ہی کسی دوسرے کارڈ کی
  دہرائی کی شناخت ہے، اس لیے کچھ محفوظ نہیں ہوا؛ نئے `reviewId` کے ساتھ دوبارہ جمع کریں۔
- `409 REVIEW_STALE` — کارڈ کا محفوظ شدہ دہرائی کا وقت سرور کے موجودہ وقت کے
  برابر یا اس کے بعد کا ہے؛ کسی اور کارڈ کی دہرائی کریں۔

دہرائیاں صرف `submit_review` کے ذریعے درج ہوتی ہیں: SQL نہ
`review_events` لکھ سکتا ہے اور نہ FSRS شیڈیولنگ کی حالت۔ دہرائی اور درجہ بندی کے مکمل قواعد کے لیے
موضوع `review_flow` کے ساتھ `get_guide` کال کریں۔

## کارڈ کا معاہدہ

ہر کارڈ ایک ہی معاہدے کی پیروی کرتا ہے، اور ٹولز اسی پر انحصار کرتے ہیں:

- `front_text` صرف سوال یا دہرائی کا اشارہ ہوتا ہے اور اس میں جواب کبھی نہیں ہوتا۔
- `back_text` میں جواب ہوتا ہے، اختیاری طور پر کسی ٹھوس مثال کے ساتھ۔

جو ایجنٹس `sql_execute` کے ذریعے کارڈز بناتے ہیں وہ اسی معاہدے کی پیروی کرتے ہیں، اس لیے
ان کے بنائے ہوئے کارڈز کی وقفہ وار دہرائی فوراً کی جا سکتی ہے۔

## تصدیق

اجازت کے دو راستے ایک ہی فی صارف ڈیٹا سطح تک پہنچتے ہیں۔

### OAuth 2.1 (انٹرایکٹو کنیکٹر کلائنٹس)

سرور PKCE اور Dynamic Client Registration کے ساتھ اجازتی کوڈ والا فلو نافذ کرتا ہے۔
MCP URL کو کسٹم کنیکٹر کے طور پر شامل کریں اور براؤزر میں اجازت دیں؛
کوئی کلائنٹ سیکرٹ پہلے سے شیئر نہیں کیا جاتا۔ دریافت معیاری ہے:

- تحفظ یافتہ وسیلے کا میٹا ڈیٹا:
  `https://mcp.nibomo.com/.well-known/oauth-protected-resource`
- اجازت دینے والے سرور کا میٹا ڈیٹا:
  `https://auth.flashcards-open-source-app.com/.well-known/oauth-authorization-server`

### API کلید (ہیڈلیس اور CLI)

[API حوالہ](/ur/docs/api/) میں درج ای میل OTP لاگ اِن فلو کے ذریعے طویل مدتی `fca_` ایجنٹ API کلید
حاصل کریں، پھر اسے Bearer ٹوکن کے طور پر بھیجیں:

```text
Authorization: Bearer fca_ABCDEFGH_0123456789ABCDEFGHJKMNPQRS
```

یہ وہی کلید ہے جو REST ایجنٹ سطح قبول کرتی ہے، اور اسے براؤزر یا
OAuth کے کسی مرحلے کی ضرورت نہیں۔

دونوں راستوں کی باضابطہ، مشین کے پڑھنے کے قابل وضاحت
`https://api.nibomo.com/v1/` پر ڈسکوری پے لوڈ ہے (جس کی نقل `/v1/agent` پر بھی ہے)۔

## حفاظت اور دائرہ کار

SQL ٹولز کو منظوری دینا محفوظ ہے کیونکہ یہ سطح ڈیٹا بیس تک من مانی رسائی نہیں بلکہ ایک محدود
ڈائلیکٹ ہے جس کی پابندی پارسر کرواتا ہے:

- **بیانات کی بند اجازت فہرست**: `sql_query` صرف `SHOW TABLES`،
  `DESCRIBE`، `SHOW COLUMNS` اور `SELECT` قبول کرتا ہے؛ `sql_execute` صرف `INSERT`،
  `UPDATE` اور `DELETE` قبول کرتا ہے۔ اس کے علاوہ ہر چیز پارس کرتے وقت ہی مسترد ہو جاتی ہے۔
- **محدود وسائل**: بیانات صرف `workspace`، `cards`، `decks`
  اور `review_events` تک پہنچ سکتے ہیں۔
- **فی ورک اسپیس دائرہ**: ہر SQL بیان اور دہرائی ایک ایسے
  ورک اسپیس تک محدود ہوتی ہے جس تک آپ کی رسائی ہو، یعنی آپ کا دیا ہوا `workspaceId` یا آپ کا منتخب
  طے شدہ ورک اسپیس، اور کسی دوسرے ٹیننٹ تک کوئی رسائی نہیں ہوتی۔
- **سخت آرگیومنٹس**: ہر ٹول کسی نامعلوم آرگیومنٹ کو مسترد کر دیتا ہے، اس لیے غلط ہجے والا
  `workspaceId` آپ کے طے شدہ ورک اسپیس پر چلنے کے بجائے ناکام ہو جاتا ہے۔
- **حدود**: فی بیان زیادہ سے زیادہ `100` قطاریں، فی بیچ زیادہ سے زیادہ `50` بیانات، اور
  نتیجے کی حد تقریباً `12k` ٹوکنز۔ تبدیلی کے بیچ ایٹامک طور پر لاگو ہوتے ہیں۔
- **پڑھنے اور لکھنے کی تقسیم**: `get_usage_limits`، `sql_query`، `list_workspaces`، `get_guide`،
  `next_review_card` اور `reveal_answer` سختی سے صرف پڑھنے کے لیے ہیں (`readOnlyHint`)
  اور کبھی ڈیٹا کی مرمت نہیں کرتے، شیڈیولنگ کا دوبارہ حساب نہیں لگاتے اور کارڈ کی حالت نہیں بدلتے۔
  `sql_execute` اور `submit_review` واحد لکھنے والے ٹولز ہیں (`destructiveHint`):
  `sql_execute` کارڈز اور ڈیکس لکھتا ہے، اور `submit_review` دہرائی درج کرتا ہے اور
  اس کے کارڈ کا شیڈیول آگے بڑھاتا ہے۔

پورا اسٹیک — ایپ، بیک اینڈ اور انفراسٹرکچر — اوپن سورس ہے اور اس کی
[خود میزبانی](/ur/docs/self-hosting/) کی جا سکتی ہے، اس لیے آپ یہی کنیکٹر اپنی
تعیناتی کے ساتھ چلا سکتے ہیں۔

---
*[اس صفحے کا طرز شدہ HTML ورژن دیکھیں](<https://nibomo.com/ur/docs/mcp-connector/>)*

*AI ایجنٹس `GET https://api.nibomo.com/v1/` سے شروع کر کے اس سروس میں صارف کا اکاؤنٹ بنا سکتے ہیں۔ سیٹ اپ کے بعد وہ `https://mcp.nibomo.com/mcp` پر MCP کے ذریعے بھی جُڑ سکتے ہیں۔*

*مشورہ: https://nibomo.com پر کسی بھی URL کے آخر میں `.md` لگائیں تاکہ اس صفحے کا صاف Markdown ورژن مل جائے۔*