پیادهسازی عملی جایی است که قدرت پروتکل مدل کانتکست (MCP) ملموس میشود. در حالی که درک نظریه و معماری پشت MCP اهمیت دارد، ارزش واقعی زمانی ظاهر میشود که این مفاهیم را برای ساخت، آزمایش و استقرار راهحلهایی که مشکلات دنیای واقعی را حل میکنند، به کار ببرید. این فصل فاصله بین دانش مفهومی و توسعه عملی را پر میکند و شما را در فرآیند زنده کردن برنامههای مبتنی بر MCP راهنمایی میکند.
چه در حال توسعه دستیارهای هوشمند باشید، چه ادغام هوش مصنوعی در فرآیندهای کاری کسبوکار یا ساخت ابزارهای سفارشی برای پردازش دادهها، MCP پایهای انعطافپذیر فراهم میکند. طراحی مستقل از زبان آن و SDKهای رسمی برای زبانهای برنامهنویسی محبوب، این امکان را برای طیف گستردهای از توسعهدهندگان فراهم میکند. با استفاده از این SDKها میتوانید به سرعت نمونه اولیه بسازید، تکرار کنید و راهحلهای خود را در پلتفرمها و محیطهای مختلف مقیاسبندی کنید.
در بخشهای بعدی، نمونههای عملی، کد نمونه و استراتژیهای استقرار را خواهید دید که نشان میدهد چگونه MCP را در C#، Java، TypeScript، JavaScript و Python پیادهسازی کنید. همچنین یاد خواهید گرفت چگونه سرورهای MCP خود را اشکالزدایی و آزمایش کنید، APIها را مدیریت کنید و راهحلها را با استفاده از Azure به ابر منتقل کنید. این منابع عملی طراحی شدهاند تا یادگیری شما را تسریع کرده و به شما کمک کنند با اطمینان برنامههای MCP مقاوم و آماده تولید بسازید.
این درس بر جنبههای عملی پیادهسازی MCP در چند زبان برنامهنویسی تمرکز دارد. ما بررسی خواهیم کرد چگونه از SDKهای MCP در C#، Java، TypeScript، JavaScript و Python برای ساخت برنامههای مقاوم، اشکالزدایی و آزمایش سرورهای MCP و ایجاد منابع، پرامپتها و ابزارهای قابل استفاده مجدد استفاده کنیم.
در پایان این درس، قادر خواهید بود:
- پیادهسازی راهحلهای MCP با استفاده از SDKهای رسمی در زبانهای برنامهنویسی مختلف
- اشکالزدایی و آزمایش سیستماتیک سرورهای MCP
- ایجاد و استفاده از ویژگیهای سرور (منابع، پرامپتها و ابزارها)
- طراحی گردشهای کاری موثر MCP برای وظایف پیچیده
- بهینهسازی پیادهسازیهای MCP برای عملکرد و قابلیت اطمینان
پروتکل مدل کانتکست SDKهای رسمی برای چند زبان ارائه میدهد:
این بخش نمونههای عملی از پیادهسازی MCP در چند زبان برنامهنویسی را ارائه میدهد. میتوانید کد نمونه را در دایرکتوری samples که بر اساس زبان سازماندهی شده است، پیدا کنید.
مخزن شامل نمونههای پیادهسازی در زبانهای زیر است:
هر نمونه مفاهیم کلیدی MCP و الگوهای پیادهسازی مربوط به آن زبان و اکوسیستم را نشان میدهد.
سرورهای MCP میتوانند هر ترکیبی از این ویژگیها را پیادهسازی کنند:
منابع زمینه و دادههایی را برای استفاده کاربر یا مدل هوش مصنوعی فراهم میکنند:
- مخازن اسناد
- پایگاههای دانش
- منابع داده ساختیافته
- سیستمهای فایل
پرامپتها پیامها و گردشهای کاری قالببندی شده برای کاربران هستند:
- قالبهای مکالمه از پیش تعریف شده
- الگوهای تعامل راهنمایی شده
- ساختارهای گفتگوی تخصصی
ابزارها توابعی هستند که مدل هوش مصنوعی میتواند اجرا کند:
- ابزارهای پردازش داده
- ادغامهای API خارجی
- قابلیتهای محاسباتی
- قابلیت جستجو
مخزن SDK رسمی C# شامل چندین نمونه پیادهسازی است که جنبههای مختلف MCP را نشان میدهند:
- کلاینت MCP ساده: نمونهای ساده که نشان میدهد چگونه یک کلاینت MCP ایجاد کرده و ابزارها را فراخوانی کنید
- سرور MCP پایه: پیادهسازی حداقلی سرور با ثبت ابزارهای پایه
- سرور MCP پیشرفته: سرور کامل با ثبت ابزار، احراز هویت و مدیریت خطا
- ادغام ASP.NET: نمونههایی که ادغام با ASP.NET Core را نشان میدهند
- الگوهای پیادهسازی ابزار: الگوهای مختلف برای پیادهسازی ابزارها با سطوح پیچیدگی متفاوت
SDK C# MCP در حالت پیشنمایش است و APIها ممکن است تغییر کنند. ما بهطور مداوم این بلاگ را با تکامل SDK بهروزرسانی خواهیم کرد.
برای نمونههای کامل پیادهسازی C# به مخزن نمونههای رسمی C# SDK مراجعه کنید.
SDK جاوا گزینههای قدرتمندی برای پیادهسازی MCP با ویژگیهای سطح سازمانی ارائه میدهد.
- ادغام با Spring Framework
- ایمنی نوع قوی
- پشتیبانی از برنامهنویسی واکنشی
- مدیریت جامع خطا
برای نمونه کامل پیادهسازی Java، به نمونه Java در دایرکتوری نمونهها مراجعه کنید.
SDK جاوااسکریپت رویکردی سبکوزن و انعطافپذیر برای پیادهسازی MCP ارائه میدهد.
- پشتیبانی از Node.js و مرورگر
- API مبتنی بر Promise
- ادغام آسان با Express و فریمورکهای دیگر
- پشتیبانی از WebSocket برای استریم
برای نمونه کامل پیادهسازی JavaScript، به نمونه JavaScript در دایرکتوری نمونهها مراجعه کنید.
SDK پایتون رویکردی پایتونیک به پیادهسازی MCP با ادغام عالی با فریمورکهای ML ارائه میدهد.
- پشتیبانی از async/await با asyncio
- ادغام با Flask و FastAPI
- ثبت ساده ابزار
- ادغام بومی با کتابخانههای محبوب ML
برای نمونه کامل پیادهسازی Python، به نمونه Python در دایرکتوری نمونهها مراجعه کنید.
مدیریت API در Azure پاسخ خوبی به این سوال است که چگونه میتوان سرورهای MCP را ایمن کرد. ایده این است که یک نمونه Azure API Management را جلوی سرور MCP خود قرار دهید و اجازه دهید ویژگیهایی که احتمالاً نیاز دارید مانند:
- محدودیت نرخ
- مدیریت توکن
- نظارت
- تعادل بار
- امنیت
را مدیریت کند.
در اینجا یک نمونه Azure وجود دارد که دقیقاً همین کار را انجام میدهد، یعنی ایجاد یک سرور MCP و ایمنسازی آن با Azure API Management.
نحوه جریان احراز هویت را در تصویر زیر ببینید:
در تصویر بالا، موارد زیر اتفاق میافتد:
- احراز هویت/مجوز با استفاده از Microsoft Entra انجام میشود.
- Azure API Management به عنوان دروازه عمل میکند و با استفاده از سیاستها ترافیک را هدایت و مدیریت میکند.
- Azure Monitor تمام درخواستها را برای تحلیلهای بعدی ثبت میکند.
بیایید نگاهی دقیقتر به جریان احراز هویت بیندازیم:
برای اطلاعات بیشتر درباره مشخصات احراز هویت MCP مطالعه کنید.
بیایید ببینیم آیا میتوانیم نمونهای که قبلاً ذکر کردیم را مستقر کنیم:
-
مخزن را کلون کنید
git clone https://github.com/Azure-Samples/remote-mcp-apim-functions-python.git cd remote-mcp-apim-functions-python -
ثبت
Microsoft.Appرا انجام دهید و پس از مدتی با دستور زیر بررسی کنید که ثبت کامل شده است یا خیر:` resource provider.
- If you are using Azure CLI, run
az provider register --namespace Microsoft.App --wait. - If you are using Azure PowerShell, run
Register-AzResourceProvider -ProviderNamespace Microsoft.App. Then run `(Get-AzResourceProvider -ProviderNamespace Microsoft.App).RegistrationState
- If you are using Azure CLI, run
-
این دستور azd را اجرا کنید تا سرویس مدیریت API، برنامه تابع (با کد) و سایر منابع مورد نیاز Azure را فراهم کند:
azd up
این دستور باید تمام منابع ابری را در Azure مستقر کند.
-
در یک پنجره ترمینال جدید، MCP Inspector را نصب و اجرا کنید
npx @modelcontextprotocol/inspector
باید رابطی مشابه زیر مشاهده کنید:
-
با کلیک همزمان CTRL، برنامه وب MCP Inspector را از URL نمایش داده شده توسط برنامه باز کنید (مثلاً http://127.0.0.1:6274/#resources)
-
نوع انتقال را به
SSEتنظیم کنید و اتصال را بزنید:https://<apim-servicename-from-azd-output>.azure-api.net/mcp/sse
-
فهرست ابزارها. روی یک ابزار کلیک کنید و اجرای ابزار را انتخاب کنید.
اگر همه مراحل به درستی انجام شده باشد، اکنون به سرور MCP متصل شدهاید و توانستهاید یک ابزار را فراخوانی کنید.
Remote-mcp-functions: این مجموعه مخازن قالب شروع سریع برای ساخت و استقرار سرورهای سفارشی از راه دور MCP (پروتکل مدل کانتکست) با استفاده از Azure Functions با Python، C# .NET یا Node/TypeScript است.
نمونهها راهحلی کامل ارائه میدهند که به توسعهدهندگان امکان میدهد:
- ساخت و اجرای محلی: توسعه و اشکالزدایی سرور MCP روی ماشین محلی
- استقرار در Azure: به راحتی با یک دستور azd up به ابر استقرار دهید
- اتصال از کلاینتها: اتصال به سرور MCP از کلاینتهای مختلف از جمله حالت عامل Copilot در VS Code و ابزار MCP Inspector
- امنیت از ابتدا: سرور MCP با استفاده از کلیدها و HTTPS ایمن شده است
- گزینههای احراز هویت: پشتیبانی از OAuth با احراز هویت داخلی و/یا مدیریت API
- جداسازی شبکه: امکان جداسازی شبکه با استفاده از شبکههای مجازی Azure (VNET)
- معماری بدون سرور: استفاده از Azure Functions برای اجرای مقیاسپذیر و رویدادمحور
- توسعه محلی: پشتیبانی جامع از توسعه و اشکالزدایی محلی
- استقرار ساده: فرآیند استقرار ساده به Azure
مخزن شامل همه فایلهای پیکربندی لازم، کد منبع و تعاریف زیرساخت است تا به سرعت با پیادهسازی سرور MCP آماده تولید شروع کنید.
-
Azure Remote MCP Functions Python - نمونه پیادهسازی MCP با استفاده از Azure Functions و Python
-
Azure Remote MCP Functions .NET - نمونه پیادهسازی MCP با استفاده از Azure Functions و C# .NET
-
Azure Remote MCP Functions Node/Typescript - نمونه پیادهسازی MCP با استفاده از Azure Functions و Node/TypeScript.
- SDKهای MCP ابزارهای مخصوص زبان برای پیادهسازی راهحلهای مقاوم MCP فراهم میکنند
- فرآیند اشکالزدایی و آزمایش برای برنامههای قابل اعتماد MCP حیاتی است
- قالبهای پرامپت قابل استفاده مجدد تعاملات هوش مصنوعی را سازگار میکنند
- گردشهای کاری خوب طراحی شده میتوانند وظایف پیچیده را با استفاده از چندین ابزار هماهنگ کنند
- پیادهسازی راهحلهای MCP نیازمند توجه به امنیت، عملکرد و مدیریت خطا است
یک گردش کاری عملی MCP طراحی کنید که یک مشکل واقعی در حوزه کاری شما را حل کند:
- 3 تا 4 ابزار که برای حل این مشکل مفید هستند را شناسایی کنید
- نمودار گردش کاری بسازید که نشان دهد این ابزارها چگونه با هم تعامل دارند
- یک نسخه پایه از یکی از ابزارها را با زبان دلخواه خود پیادهسازی کنید
- قالب پرامپتی ایجاد کنید که به مدل کمک کند به طور موثر از ابزار شما استفاده کند
بعدی: موضوعات پیشرفته
سلب مسئولیت:
این سند با استفاده از سرویس ترجمه هوش مصنوعی Co-op Translator ترجمه شده است. در حالی که ما برای دقت تلاش میکنیم، لطفاً توجه داشته باشید که ترجمههای خودکار ممکن است حاوی خطاها یا نادرستیهایی باشند. سند اصلی به زبان بومی خود باید به عنوان منبع معتبر در نظر گرفته شود. برای اطلاعات حیاتی، استفاده از ترجمه حرفهای انسانی توصیه میشود. ما در قبال هرگونه سوءتفاهم یا تفسیر نادرست ناشی از استفاده از این ترجمه مسئولیتی نداریم.


