پچھلا مثال دکھاتا ہے کہ لوکل .NET پروجیکٹ کو stdio قسم کے ساتھ کیسے استعمال کیا جائے۔ اور سرور کو لوکل کنٹینر میں کیسے چلایا جائے۔ یہ کئی حالات میں ایک اچھا حل ہے۔ تاہم، سرور کو ریموٹلی چلانا بھی مفید ہو سکتا ہے، جیسے کلاؤڈ ماحول میں۔ یہی وہ جگہ ہے جہاں http قسم کام آتی ہے۔
04-PracticalImplementation فولڈر میں حل کو دیکھیں تو یہ پچھلے سے کہیں زیادہ پیچیدہ لگ سکتا ہے۔ لیکن حقیقت میں ایسا نہیں ہے۔ اگر آپ پروجیکٹ src/Calculator کو غور سے دیکھیں تو آپ دیکھیں گے کہ یہ زیادہ تر پچھلے مثال جیسا ہی کوڈ ہے۔ واحد فرق یہ ہے کہ ہم HTTP درخواستوں کو ہینڈل کرنے کے لیے مختلف لائبریری ModelContextProtocol.AspNetCore استعمال کر رہے ہیں۔ اور ہم طریقہ IsPrime کو پرائیویٹ بنا دیتے ہیں، صرف یہ دکھانے کے لیے کہ آپ اپنے کوڈ میں پرائیویٹ طریقے رکھ سکتے ہیں۔ باقی کوڈ پہلے جیسا ہی ہے۔
دیگر پروجیکٹس .NET Aspire سے ہیں۔ حل میں .NET Aspire شامل کرنے سے ڈویلپر کے لیے ترقی اور ٹیسٹنگ کا تجربہ بہتر ہوتا ہے اور مشاہدے میں مدد ملتی ہے۔ سرور چلانے کے لیے یہ ضروری نہیں، لیکن اسے اپنے حل میں رکھنا اچھی مشق ہے۔
-
VS Code (C# DevKit ایکسٹینشن کے ساتھ) سے
04-PracticalImplementation/samples/csharpڈائریکٹری میں جائیں۔ -
سرور شروع کرنے کے لیے درج ذیل کمانڈ چلائیں:
dotnet watch run --project ./src/AppHost
-
جب ویب براؤزر میں .NET Aspire ڈیش بورڈ کھلے، تو
httpURL نوٹ کریں۔ یہ کچھ اس طرح ہونا چاہیے:http://localhost:5058/۔
اگر آپ کے پاس Node.js 22.7.5 یا اس سے اوپر ہے، تو آپ MCP Inspector استعمال کر کے اپنے سرور کی جانچ کر سکتے ہیں۔
سرور شروع کریں اور ٹرمینل میں درج ذیل کمانڈ چلائیں:
npx @modelcontextprotocol/inspector http://localhost:5058- Transport قسم کے طور پر
Streamable HTTPمنتخب کریں۔ - Url فیلڈ میں پہلے نوٹ کیا گیا سرور کا URL درج کریں، اور اس کے آخر میں
/mcpشامل کریں۔ یہhttpہونا چاہیے (https نہیں)، کچھ اس طرح:http://localhost:5058/mcp۔ - Connect بٹن منتخب کریں۔
Inspector کی ایک اچھی بات یہ ہے کہ یہ آپ کو جو کچھ ہو رہا ہے اس کی اچھی نظر دیتا ہے۔
- دستیاب ٹولز کی فہرست بنانے کی کوشش کریں
- ان میں سے کچھ آزمائیں، یہ پہلے کی طرح کام کریں گے۔
GitHub Copilot Chat کے ساتھ Streamable HTTP ٹرانسپورٹ استعمال کرنے کے لیے، پہلے بنائے گئے calc-mcp سرور کی کنفیگریشن کو اس طرح تبدیل کریں:
کچھ ٹیسٹ کریں:
- پوچھیں "6780 کے بعد 3 پرائم نمبرز"۔ دیکھیں کہ Copilot نئے ٹولز
NextFivePrimeNumbersاستعمال کرے گا اور صرف پہلے 3 پرائم نمبرز واپس کرے گا۔ - پوچھیں "111 کے بعد 7 پرائم نمبرز"، دیکھیں کیا ہوتا ہے۔
- پوچھیں "جان کے پاس 24 لولی ہیں اور وہ انہیں اپنے 3 بچوں میں تقسیم کرنا چاہتا ہے۔ ہر بچے کے پاس کتنی لولی ہیں؟"، دیکھیں کیا ہوتا ہے۔
آئیے سرور کو Azure پر تعینات کرتے ہیں تاکہ زیادہ لوگ اسے استعمال کر سکیں۔
ٹرمینل سے 04-PracticalImplementation/samples/csharp فولڈر میں جائیں اور درج ذیل کمانڈ چلائیں:
azd upتعیناتی مکمل ہونے کے بعد، آپ کو اس طرح کا پیغام نظر آئے گا:
URL حاصل کریں اور اسے MCP Inspector اور GitHub Copilot Chat میں استعمال کریں۔
// .vscode/mcp.json
{
"servers": {
"calc-mcp": {
"type": "http",
"url": "https://calc-mcp.gentleriver-3977fbcf.australiaeast.azurecontainerapps.io/mcp"
}
}
}ہم نے مختلف ٹرانسپورٹ اقسام اور ٹیسٹنگ ٹولز آزمائے۔ ہم نے آپ کے MCP سرور کو Azure پر بھی تعینات کیا۔ لیکن اگر ہمارے سرور کو پرائیویٹ وسائل تک رسائی کی ضرورت ہو؟ مثلاً، کوئی ڈیٹا بیس یا پرائیویٹ API؟ اگلے باب میں، ہم دیکھیں گے کہ ہم اپنے سرور کی سیکیورٹی کو کیسے بہتر بنا سکتے ہیں۔
دستخطی دستبرداری:
یہ دستاویز AI ترجمہ سروس Co-op Translator کے ذریعے ترجمہ کی گئی ہے۔ اگرچہ ہم درستگی کے لیے کوشاں ہیں، براہ کرم آگاہ رہیں کہ خودکار ترجمے میں غلطیاں یا عدم درستیاں ہو سکتی ہیں۔ اصل دستاویز اپنی مادری زبان میں ہی معتبر ماخذ سمجھی جانی چاہیے۔ اہم معلومات کے لیے پیشہ ور انسانی ترجمہ کی سفارش کی جاتی ہے۔ اس ترجمے کے استعمال سے پیدا ہونے والی کسی بھی غلط فہمی یا غلط تشریح کی ذمہ داری ہم پر عائد نہیں ہوتی۔


