✨ آیا APIهای فعلی‌مون می‌تونن MCPهامون رو بسازن؟! (بخش ۱)

✨ آیا APIهای فعلی‌مون می‌تونن MCPهامون رو بسازن؟! (بخش ۱)


روز به روز به خدمت گرفتن هوش‌مصنوعی، خصوصا مدل‌های زبانی ساده‌تر و حتی شاید بدیهی‌تر می‌شه. رویکرد ایجنت‌ها و MCP سرورها هم به سمتیه که نرم‌افزارهای موجود رو بشه بدون تغییرات خیلی عظیم و عجیب به نحوی ارتقاء داد که مزایای هوش‌مصنوعی دقت و سهولت کارکرد، و تجربه کاربر رو بهبود بده.


مقدمه:

اگر با مفهوم و ساختار MCP آشنایی دارید می‌تونید از روی بخش مقدمه بپرید و برید سراغ «✅ اصل مطلب»!

پروتکل MCP یا Model Context Protocol یک پروتکل باز و استاندارد برای شناسایی و به کارگیری منابع و ابزارها (منابع مثل دیتابیس‌ها، ابزارها هم مثل API و کامندها) توسط مدل‌های زبانیه که شرکت Anthropic (توسعه‌دهنده Claude) سال ۲۰۲۴ معرفی کرد.


💡 هدف و عملکرد

هدف اصلی MCP، ایجاد یه زبان مشترک برای تعامل مدل‌های زبان بزرگ (LLM) با برنامه‌ها و خدمات دنیای واقعیه. به بیان ساده‌تر، این پروتکل به هوش مصنوعی (LLM) اجازه می‌ده تا به‌جای اینکه فقط بر اساس داده‌های خودش متن تولید کنه، اقداماتی (Actions) رو در یک برنامه خارجی انجام بده (مثل فراخونی API یا کوئری گرفتن از دیتابیس یا...).


استانداردسازی: این پروتکل نحوه ارائه "ابزارها" و "قابلیت‌های" یک برنامه به LLM رو به شکل استاندارد تبیین می‌کنه.


سرور MCP: هر برنامه‌ای که بخواد توسط هوش مصنوعی قابل استفاده باشه، باید یه سرور MCP پیاده‌سازی کنه که رابط‌های تعاملی خودش رو اعلام کنه.


🧱 اجزای کلیدی (MCP Server)

سرور MCP سه مفهوم اصلی رو به LLM (که نقش کلاینت رو داره) ارائه می‌ده:


۱: ابزارها یا Tools:

مهم‌ترین جزء هستن. در واقع همون عملیات (Actions) یا APIهای سطح بالایی هستن که LLM می‌تونه فراخونی کنه. مثال: "ایجاد پایگاه داده" یا "رزرو پرواز" یا "درج یه سفارش جدید".

یک LLM برای انجام وظایف بهینه، به تعداد محدودی از ابزارهایی که به خوبی تعریف‌شده باشن نیاز داره.


۲: منابع یا Resources:

داده‌ها یا اطلاعات جانبی مورد نیاز برای اجرای ابزارها (دیتابیس، فایل حاوی داده یا ...).


۳: دستورالعمل‌ها یا Prompts:

متن‌هایی که به LLM کمک می‌کنن تا درک کنه چه زمانی و چجوری از ابزارها استفاده کنه.


🐤 یه نمونه MCP ساده برای تبدیل واحد توی کامنت می‌گذارم


اصل مطلب: آیا API شما برای ساخت MCP کافیه؟

اگر نرم‌افزار شما RESTful باشه، ابزارهای متعددی هستن که از روی OpenAPI Spec شما برای MCP سرور می‌سازن. این رو داشته باشید فعلا تا ۳ تا حالت ساخت MCP رو ببینیم:

۱: خودکار

با استفاده از ابزارهایی مثل Fast MCP از APIهای فعلی رو به عنوان ابزار توی MCP سرور معرفی می‌کنیم. خیلی سریع! (بررسی مشکلات در بخش دوم همین مطلب)


۲: دستی

متناظر با قابلیت‌هایی که می‌خواهیم با استفاده از هوش مصنوعی ارائه کنیم، APIهای اختصاصی برای هوش‌مصنوعی تولید می‌کنیم، طبیعتا تعداد محدوتر، و کلی‌تر (مثلا یک API برای کل یک فرایند)



«ادامه در بخش دوم، فردا»

(مشکلات روش خودکار + معرفی روش سوم یا همون هایبرید)