عنوان: USB-C هوش مصنوعی: MCP خود را بسازید

Anthropic پروتکل کانتکست مدل (MCP) را به صورت متن‌باز عرضه کرده است؛ یک استاندارد پلاگین که به هر عامل هوش مصنوعی (AI agent) اجازه می‌دهد از طریق یک رابط واحد و یکپارچه، با پایگاه‌های داده، ابزارهای مانیتورینگ، مخازن کد و موارد دیگر ارتباط برقرار کند. اکنون توسعه‌دهندگان می‌توانند به جای استفاده از چندین رابط (connector) سفارشی، از یک سرور MCP استفاده کنند و اجازه دهند هر کلاینت سازگاری بلافاصله به همان داده‌ها دسترسی داشته باشد.

چرا توسعه‌دهندگان اپلیکیشن‌های هوش مصنوعی به یک «USB-C» مشترک نیاز دارند

امروزه ساخت یک گردش کار (workflow) مبتنی بر هوش مصنوعی، مانند وصله پینه کردن کدهای سفارشی به یکدیگر است. آیا می‌خواهید Claude، یک اسکریپت Python یا یک ویرایشگر شخص ثالث، از PostgreSQL بخواند، یک داشبورد Datadog را پرس‌وجو (query) کند یا یک GitHub issue را باز کند؟ هر بار باید یک لایه یکپارچه‌سازی جدید بنویسید. با بزرگ‌تر شدن پشته تکنولوژی (stack)، این تلاش‌ها به شدت افزایش می‌یابد و کدهای واسط (glue code) برای نگهداری، تست و ایمن‌سازی دشوار می‌شوند.

MCP این چرخه را متوقف می‌کند. این پروتکل یک پروتکل واحد برای ارائه resources (داده‌های فقط خواندنی مانند لاگ‌ها یا مشخصات API)، tools (اقداماتی که یک عامل می‌تواند فراخوانی کند، مانند اجرای SQL یا ایجاد تیکت) و prompts (الگوهایی که نحوه استفاده هوش مصنوعی از داده‌ها را هدایت می‌کنند) تعریف می‌کند. هر کلاینت سازگاری، سرویس‌های مختلف را به‌گونه‌ای در نظر می‌گیرد که گویی همگی به یک پورت واحد متصل شده‌اند.

ساختار پروتکل چگونه است

  • MCP Hosts – اپلیکیشن‌هایی که یک هوش مصنوعی را در خود جای داده‌اند، برای مثال Claude Desktop یا یک ویرایشگر دستیار کد.
  • MCP Clients – لایه‌های نازکی در داخل یک میزبان (host) که فرآیند دست‌دادن (handshake) را مدیریت کرده و درخواست‌ها را مسیریابی می‌کنند.
  • MCP Servers – برنامه‌های سبک‌وزنی که یک منبع داده یا سرویس خاص را ارائه می‌دهند، مانند یک فایل SQLite، یک فضای کاری Slack یا یک نقطه پایانی (endpoint) مانیتورینگ.

هنگامی که یک هوش مصنوعی متصل می‌شود، کلاینت کاتالوگ منابع، ابزارها و پرامپت‌های سرور را شناسایی می‌کند. سپس عامل (agent) فراخوانی‌هایی را صادر می‌کند که فرقی نمی‌کند سرویس زیرساختی یک پایگاه داده رابطه‌ای باشد یا یک سیستم تیکتینگ؛ این فراخوانی‌ها یکسان به نظر می‌رسند. سرور آن فراخوانی‌ها را به API یا زبان پرس‌وجوی مناسب ترجمه کرده و نتایج را با فرمتی که عامل می‌تواند مصرف کند، بازمی‌گرداند.

یک گردش کار ملموس

توسعه‌دهنده‌ای را تصور کنید که یک سرور PostgreSQL و یک نقطه پایانی مانیتورینگ Datadog را از طریق MCP به یک دستیار هوش مصنوعی متصل می‌کند. توسعه‌دهنده از دستیار می‌خواهد که جهش‌های اخیر خطا را پیدا کند، سوابق کاربران مربوطه را از پایگاه داده استخراج کند و یک اصلاحیه کد (code fix) پیشنهاد دهد. هوش مصنوعی:

  1. از طریق ابزار مانیتورینگ ارائه شده توسط MCP، از Datadog پرس‌وجو کرده و لاگ‌های مربوطه را استخراج می‌کند.
  2. با استفاده از ابزار پایگاه داده ارائه شده توسط MCP، یک پرس‌وجوی SQL را روی سرور PostgreSQL اجرا می‌کند.
  3. با استفاده از یک پرامپت که ساختار معمول اصلاح برای الگوی خطای مشاهده شده را توصیف می‌کند، یک پچ (patch) تولید می‌کند.

هر سه مرحله از طریق همان پروتکل انجام می‌شوند، بدون اینکه توسعه‌دهنده نیاز به نوشتن آداپتورهای جداگانه برای هر سرویس داشته باشد.

ساخت یک سرور MCP

پیاده‌سازی مرجع Anthropic نشان می‌دهد که یک سرور را می‌توان با زبان‌های آشنایی مانند TypeScript یا Python نوشت. این فرآیند شامل موارد زیر است:

  1. اعلام منابعی که سرور ارائه خواهد داد (مثلاً مجموعه‌ای از جداول یا مجموعه‌ای از فایل‌های لاگ).
  2. تعریف ابزارهایی که هوش مصنوعی ممکن است فراخوانی کند (اجرای SQL، HTTP POST، نوشتن در فایل).
  3. ارائه هرگونه قالب پرامپت که به هوش مصنوعی در قالب‌بندی درخواست‌هایش کمک می‌کند.

به محض اینکه سرور اجرا شود، هر کلاینت سازگار با MCP به‌طور خودکار آن را شناسایی می‌کند و این باعث می‌شود منبع داده جدید بلافاصله در تمام ابزارهای هوش مصنوعی سازمان قابل استفاده باشد.

نکته کلیدی

پروتکل کانتکست مدل یک «USB-C» واحد برای عامل‌های هوش مصنوعی فراهم می‌کند و شبکه پیچیده‌ای از رابط‌های سفارشی را به یک اکوسیستم آماده‌ی اتصال (plug-and-play) تبدیل می‌کند. تیم‌هایی که از نوشتن کدهای واسط خسته شده‌اند، می‌توانند همین امروز MCP را آزمایش کنند و یک میان‌بر کاربردی را در عمل ببینند.