پرش به محتوای اصلی
پرش به محتوای مقاله

پروتکل MCP بار کاری ادغام هوش مصنوعی را از ضرب‌دری به جمعی تغییر داد

·۲۳ تیر ۱۴۰۵۸ دقیقه مطالعه۱ بازدید
پروتکل MCP: ابزار استاندارد توسعه‌دهندگان در ۲۰۲۶
پروتکل MCP: ابزار استاندارد توسعه‌دهندگان در ۲۰۲۶
اشتراک‌گذاری
واقعاً چه چیز جدید است؟

تغییر معماری ادغام از مدل ضربی (M x N) به مدل جمعی (M + N). این اولین باری است که یک استاندارد باز برای ارتباط مدل‌های زبانی با محیط‌های محلی در مقیاس میلیون‌ها دانلود پذیرفته شده است.

اگر یک توسعه‌دهنده هستید و هر روز ساعت‌ها وقت خود را صرف کپی‌پیست کردن کدها بین ادیتور و ترمینال می‌کنید، باید بدانید که دوران این اتلاف وقت به پایان رسیده است. تصور کنید جریان کاری یک برنامه‌نویس پیش از سال ۲۰۲۴ را: دریافت تکه‌های کد از یک مدل هوش مصنوعی، چسباندن دستی آن‌ها در ویرایشگر، سوییچ کردن به ترمینال برای اجرای تست‌ها و تغییر دستی طرح‌های دیتابیس. حتی زمانی که هوش مصنوعی توابعی از نظر منطقی درست تولید می‌کرد، فاقد تعامل لحظه‌ای با محیط محلی بود و نمی‌توانست نسخه‌های واقعی وابستگی‌ها (Dependencies) یا ساختارهای دیتابیس محلی را بخواند. این وضعیت یک نقطه دردناک عظیم در ادغام ایجاد کرده بود که اکنون پروتکل زمینهٔ مدل (Model Context Protocol یا MCP) شرکت Anthropic در حال حل آن است؛ با حذف اصطکاک بین مدل‌های هوش مصنوعی و محیط‌های محلی، جریان کاری توسعه‌دهندگان از کپی-پیست دستی به اجرای فعال تغییر می‌یابد.

این اصطکاک در واقع یک مسئله ریاضی در مقیاس‌پذیر بود. فرض کنید M کلاینت هوش مصنوعی (مانند Cursor، افزونه‌های VS Code یا Claude Desktop) و N ابزار و منبع داده زیربنایی (مانند GitHub، سیستم‌های فایل محلی، دیتابیس‌ها و APIهای وب) وجود داشته باشند. در حالت سنتی، اتصال هر جفت نیاز به یک کد آداپتور (Adapter) سفارشی داشت، که باعث می‌شد حجم کل بار کاری ادغام به صورت ضربی (M × N) رشد کند. با رشد M و N، نگهداری این شبکه از ادغام‌های سفارشی غیرممکن شد. پروتکل MCP اکنون به عامل‌های هوش مصنوعی اجازه می‌دهد تا بدون نیاز به یک آداپتور سفارشی برای هر ترکیب ابزار، مستقیماً با دیتابیس‌ها، سیستم‌های فایل و APIها تعامل داشته باشند. این رویکرد در واقع پاسخی به چالش‌های شناسایی ابزارهاست و به تفصیل بررسی می‌کند که چگونه این پروتکل لایه استدلال را از نحوه اجرای ابزارها جدا می‌کند تا انعطاف‌پذیری سیستم افزایش یابد.

همان‌طور که در تحلیل قبلی ما درباره‌ی قابلیت‌های رابط کاربری mcp-elements اشاره کردیم، صنعت اکنون به‌سمت یک مدل یکپارچه M + N حرکت کرده است؛ جایی که یک کلاینت پروتکل را یک‌بار پیاده‌سازی می‌کند و هر سرور MCP می‌تواند به‌طور بی‌سیمه به آن متصل شود. این استاندارد توسط Anthropic راه‌اندازی و در دسامبر ۲۰۲۵ به بنیاد Agentic AI Foundation (AAIF) زیرمجموعه بنیاد لینوکس واگذار شد تا تضمین شود که یک استاندارد باز برای هوش مصنوعی عامل‌محور (Agentic AI) وجود دارد. به گزارش وب‌سایت dev.to در ۱۴ جولای ۲۰۲۶، این اکوسیستم تا ژوئن ۲۰۲۶ به جرم بحرانی (Critical Mass) رسید، به‌طوری که تعداد دانلودهای ماهانه SDK رسمی آن در npm از ۹۷ میلیون مورد گذشت و بیش از ۱۴,۰۰۰ سرور عمومی MCP در دسترس قرار گرفت.

معماری سه‌لایه

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

  • میزبان (Host): اپلیکیشن اصلی هوش مصنوعی که اتصال را آغاز می‌کند؛ مانند Cursor، Claude Desktop یا Claude Code CLI. میزبان فرآیند استدلال مدل هوش مصنوعی را مدیریت کرده و تصمیم می‌گیرد چه زمانی ابزارهای خارجی فراخوانی شوند یا داده‌های خارجی خوانده شوند.
  • کلاینت (Client): مؤلفه‌ای که درون میزبان نگهداری می‌شود و با سرور ارتباط برقرار کرده و پروتکل را تجزیه (Parse) می‌کند. کلاینت مدیریت چرخه حیات، دست‌دادن‌های پروتکل (Handshakes) و بسته‌بندی/توزیع پیام‌ها را بر عهده دارد.
  • سرور (Server): یک برنامه سبک که ابزارها، منابع (Resources) و پرامپت‌ها را در معرض دسترسی قرار می‌دهد.

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

پروتکل MCP: ابزار ضروری توسعه‌دهندگان در ۲۰۲۶

استاندارد ارتباطی فنی

تمام ارتباطات در MCP بر پایه JSON-RPC 2.0 است. این انتخاب مزایای فنی کلیدی متعددی را ایجاد می‌کند:

  • ارتباط دوطرفه: کلاینت می‌تواند از سرور درخواست کند و در سناریوهای خاص، سرور نیز می‌تواند اعلان‌هایی (Notifications) را به کلاینت ارسال کند که این امر تعاملی منعطف‌تر را ممکن می‌سازد.
  • ساختار سبک و استاندارد: ساختارهای درخواست (Request)، پاسخ (Response) و اعلان بسیار شفاف هستند و اجازه می‌دهند پیاده‌سازی سریع در زبان‌هایی مثل TypeScript، Python و Rust صورت گیرد.
  • چرخه حیات کامل: پروتکل حالت‌های مشخصی را تعریف می‌کند؛ از دست‌دادن اولیه (Initialize) گرفته تا فهرست کردن ابزارها (List Tools)، اجرای یک ابزار (Call Tool) و در نهایت قطع اتصال (Disconnect).

در یک جریان کاری معمولی، پس از مقداردهی اولیه اتصال، کلاینت لیستی از ابزارهای موجود را از طریق tools/list دریافت می‌کند. زمانی که مدل تصمیم می‌گیرد ابزاری را اجرا کند، کلاینت یک درخواست tools/call ارسال می‌کند و سرور نتیجه اجرا را بازمی‌گرداند.

انتقال داده‌ها از نمایش (Representation) جدا شده است و از دو لایه انتقال (Transport Layer) اصلی پشتیبانی می‌کند:

۱. stdio (ورودی/خروجی استاندارد): برای همکاری‌های سطحِ پروسه‌ی محلی استفاده می‌شود. میزبان، سرور را به عنوان یک پروسه فرزند (Child Process) ایجاد می‌کند و پیام‌های JSON-RPC را از طریق ورودی و خروجی استاندارد منتقل می‌کند. این روش تأخیر بسیار کمی دارد، به پورت‌های شبکه نیاز ندارد و به‌طور طبیعی از مدل مجوزهای سطح پروسه‌ی سیستم‌عامل پیروی می‌کند، که آن را برای کلاینت‌های برنامه‌نویسی محلی ایده‌آل می‌سازد.
۲. Streamable HTTP / SSE (رویدادهای ارسالی سرور): برای فراخوانی‌های ابری از راه دور و استقرارهای توزیع‌شده طراحی شده است. سرور به‌طور مستقل روی یک میزبان راه دور اجرا می‌شود و کلاینت از طریق HTTP/SSE به آن متصل می‌گردد. به‌روزرسانی‌های مشخصات سال ۲۰۲۶، مدل‌های استقرار بدون وضعیت (Stateless) را بهینه‌سازی کردند تا پیکربندی Load Balancing در ابر آسان‌تر شود.

پروتکل MCP: ابزار ضروری توسعه‌دهندگان در ۲۰۲۶

رفع شکاف زمینه و اجرا

پروتکل MCP با تغییر رویکرد از پرامپت‌های استاتیک به خواندن پویای منابع، مشکل «از دست رفتن زمینه» (Context Loss) را حذف می‌کند. پیش از این، توسعه‌دهندگان مجبور بودند طرح‌های دیتابیس یا آخرین لاگ‌ها را به‌صورت دستی در پرامپت‌های خود کپی کنند؛ به محض اینکه کد به‌روز می‌شد، آن زمینه قدیمی و منسوخ می‌گشت. مکانیزم «منابع» (Resources) در MCP به سرور اجازه می‌دهد منابع داده‌های لحظه‌ای را از طریق URIهای خاص، مانند db://local/schema نمایش دهد. کلاینت‌های هوش مصنوعی می‌توانند آخرین فایل‌ها یا وضعیت‌های سیستم را مستقیماً بخوانند. وقتی منبعی تغییر می‌کند، سرور می‌تواند فعالانه اعلان‌هایی به کلاینت بفرستد تا اطمینان حاصل شود که هوش مصنوعی همیشه به‌روزترین زمینه محیطی را دارد.

بخش اجرا از طریق «ابزارها» (Tools) مدیریت می‌شود که به هوش مصنوعی قدرت اجرای منطقی برای تغییر وضعیت‌های سیستم می‌دهند. هر ابزار دارای یک تعریف سخت‌گیرانه JSON Schema است که پارامترهای قابل ارسال توسط هوش مصنوعی را محدود می‌کند و اجرای پیش‌بینی‌پذیر را تضمین می‌نماید. با مجوز صریح، هوش مصنوعی اکنون می‌تواند وظایفی چون موارد زیر را انجام دهد:

  • اجرای دستورات تست محلی (مانند npm test) و اصلاح خطاها بر اساس خروجی دریافتی.
  • ایجاد خودکار دیتابیس‌ها و جداول مورد نیاز برای پروژه.
  • شروع یا توقف سرویس‌های وب محلی برای بارگذاری مجدد تنظیمات.

مرزهای امنیتی و حریم خصوصی

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

  • کپسوله‌سازی محلی: در حالت stdio، داده‌های حساس و کلیدهای API به‌جای ارسال به ابر، به‌صورت رمزنگاری شده در ماشین محلی شما باقی می‌مانند.
  • قابلیت‌های صریح: یک سرور فقط می‌تواند ابزارهایی را اجرا کند که در مرحله Handshake اعلام شده‌اند، به این معنی که نمی‌تواند دستورات سیستم غیرمجاز را اجرا کند.
  • حضور انسان در حلقه (Human-in-the-Loop): برای عملیات خطرناک — مانند تغییر تنظیمات حساس، حذف دیتابیس‌ها یا بازنشانی رمزهای عبور — پروتکل MCP به کلاینت‌ها اجازه می‌دهد پیش از اجرا، یک دیالوگ تأییدی نمایش دهند تا کنترل نهایی در دست توسعه‌دهنده باقی بماند.

پیاده‌سازی عملی در ادیتورها

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

  • پیکربندی سراسری: معمولاً در مسیر ~/.cursor/mcp.json قرار دارد و برای تمام پروژه‌ها اعمال می‌شود.
  • ایزولاسیون در سطح پروژه: ایجاد یک فایل .cursor/mcp.json در ریشه پروژه باعث می‌شود تنظیمات تنها زمانی که آن پروژه خاص باز است فعال شود؛ این روش برای سفارشی‌سازی زنجیره ابزارها برای تیم‌ها و استک‌های تکنولوژی خاص ایده‌آل است.

برای مثال، یک پیکربندی استاندارد انتقال stdio با استفاده از ابزار رسمی server-filesystem برای مدیریت دایرکتوری‌های محلی به این شکل است:

{
  "mcpServers": {
    "local-file-helper": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/path/to/project"
      ]
    }
  }
}

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

برای عامل‌های مبتنی به ترمینال مانند Claude Code، ثبت سرورها از طریق CLI انجام می‌شود. شما می‌توانید یک ابزار مدیریت دایرکتوری محلی را به تنظیمات سراسری با دستوری مانند زیر اضافه کنید:

claude mcp add local-helper -- npx -y @modelcontextprotocol/server-filesystem /path/to/project

پس از ثبت، Claude Code می‌تواند این ابزار خارجی را مستقیماً در خط فرمان تعاملی بارگذاری و فراخوانی کند.

پروتکل MCP: پلی بین هوش مصنوعی و ابزارهای توسعه در ۲۰۲۶

پایان پراکندگی با سرورهای یکپارچه

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

ServBay این مشکل را با ساخت یک سرور MCP یکپارچه حل کرده است. به‌جای ارائه ابار تک تک، ServBay بیش از ۵۰ سرویس و پیکربندی محیطی رایج — شامل Nginx، MySQL، Redis، PHP و Node.js — را در یک بسته جمع کرده و آن‌ها را از طریق یک اتصال واحد MCP ارائه می‌دهد. این کار ServBay را از یک مدیر محیط محلی به یک پایگاه توسعه AI-Native تبدیل می‌کند.

این رویکرد یکپارچه امکانات زیر را فراهم می‌کند:

  • نمایش سرویس یک‌جا (One-Stop Service Exposure): هوش مصنوعی می‌تواند محیط‌های زبانی و نسخه‌های دیتابیس را از طریق اینترفیس‌هایی مثل list_installed_packages و read_service_config بررسی کند و از بروز خطاهای عیب‌یابی ناشی از عدم تطابق نسخه‌ها جلوگیری نماید.
  • جریان‌های کاری محلی خودکار: هوش مصنوعی می‌تواند زنجیره‌های ابزار ساخت سایت و دیتابیس زیربنایی را فراخوانی کند. برای مثال، پرامپتی مثل «کمک کن یک سایت Node.js با HTTPS به‌صورت محلی پیکربندی کنم و یک دیتابیس MySQL جدید بسازم»، به هوش مصنوعی اجازه می‌دهد تابع create_website را برای صدور گواهینامه SSL خود-امضایی محلی و create_database را برای مقداردهی اولیه دیتابیس فراخوانی کند و پیکربندی دستی را حذف نماید.
  • پشتیبانی متقارن چندپلتفرمی: این سیستم قراردادهای ابزاری یکسانی را در macOS (با تکیه بر launchd) و ویندوز (با اجرای دسترسی Administrator) فراهم می‌کند و دشواری پیکربندی ابزارهای کمک-هوش‌مصنوعی در ویندوز را حل می‌کند.

امنیت در اینجا با جداسازی عملیات کنترلی (مانند ری‌استارت سرویس‌ها) از عملیات پرریسک (مانند بازنشانی رمزهای عبور) حفظ می‌شود؛ به‌طوری که موارد دوم باید حتماً از طریق رابط گرافیکی کلاینت تأیید شوند.

چرخش به‌سمت ارکستراسیون توصیفی

همان‌طور که MCP در سال ۲۰۲۶ به یک استاندارد تبدیل می‌شود، صلاحیت‌های اصلی توسعه‌دهندگان در حال تغییر است. نیاز به نوشتن کدهای رابط (Glue Code) سفارشی برای ادغام‌ها در حال کاهش است. در عوض، تمرکز بر موارد زیر جابه‌جا می‌شود:

  • تعریف اسکیماها: صرف زمان بیشتر برای تعریف توصیفات دقیق ابزارهای سرور MCP (اسکیماها) تا عامل‌های هوش مصنوعی بتوانند به‌طور پویا آن‌ها را لینک کرده و اجرا را سازمان‌دهی کنند.
  • نمایش سیستم: یادگیری نحوه نمایش امن قابلیت‌های سیستم و طراحی اسکیماهای ورودی/خروجی تمیز برای ابزارها.
  • عیب‌یابی عامل‌ها: تسلط بر توانایی دیباگ زنجیره‌های پیچیده اجرای عامل‌های محلی.

این نشان‌دهنده گذاری از برنامه‌نویسی دستوری (Imperative) — جایی که توسعه‌دهنده دقیقاً می‌گوید هوش مصنوعی «چگونه» متصل شود — به ارکستراسیون توصیفی (Declarative) است. خط dividing یا مرز مهندسان full-stack مدرن اکنون بر اساس توانایی آن‌ها در طراحی و دیباگ سرورهای امن MCP تعریف می‌شود.

توسعه‌دهندگان باید اکنون با این پیکربندی‌های سرور یکپارچه آزمایش کنند تا پیش از رسیدن به پیکِ چرخه استقرار ۲۰۲۶، راه‌اندازی محیط محلی خود را خودکار کنند. از طریق یک اینترفیس واحد JSON-RPC 2.0، دیوار بین هوش مصنوعی و محیط‌های توسعه محلی بالاخره شکسته شد.

گام بعدی شما

  • اگر از Cursor استفاده می‌کنید، فایل mcp.json را بررسی کرده و سرورهای آماده در npm را امتحان کنید.
  • برای پروژه‌های تیمی، تنظیمات MCP را در ریشه پروژه قرار دهید تا تمام اعضا از ابزارهای یکسانی استفاده کنند.
  • شروع به تعریف اسکیماهای دقیق برای ابزارهای داخلی شرکت خود کنید تا مدل‌های استدلالی بتوانند آن‌ها را به‌درستی فراخوانی کنند.

اما داستان سخت‌افزاری این تحول حتی شگفت‌انگیزتر است — به تحلیل ما درباره‌ی تراشه‌های Blackwell مراجعه کنید.

چرا این موضوع مهم است؟

این پروتکل با تکیه بر اعتبار بنیاد لینوکس، مانع از انحصار ارتباطی شرکت‌های بزرگ می‌شود. این تغییر باعث می‌شود عامل‌های هوش مصنوعی از «همکارانی که فقط پیشنهاد می‌دهند» به «کارمندانی که واقعاً دسترسی اجرایی دارند» تبدیل شوند.

تأثیر برای ایران

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

·نگاه ما
تحریریه دات‌هوش

ارزش واقعی MCP در حذف «تخصص‌های پراکنده» است. وقتی اتصال به سیستم‌عامل و دیتابیس استاندارد شود، رقابت بین مدل‌ها از «توانایی اتصال» به «توانایی ارکستراسیون» تغییر می‌کند. در واقع، ما از دوران ساخت پل‌های دستی به دوران استفاده از یک درگاه جهانی رسیده‌ایم که در آن تنها چیزی که اهمیت دارد، کیفیت تعریفِ ابزارهاست، نه نحوه پیاده‌سازی اتصال.

منابع

این گزارش با خط‌لولهٔ خودکار دات‌هوش از منابع معتبر جهانی تدوین و زیر نظر تحریریه منتشر شده است. روش کار ما

گفتگو

پنج‌شنبه‌های هوش‌محور

بسته‌ی هفتگی دات‌هوش

۵ خبر، ۲ ابزار، ۱ پرامپت در هر شماره. به‌زودی راه‌اندازی می‌شود — هر پنج‌شنبه صبح.

خبر کلیدی
ابزار کاربردی
پرامپت حرفه‌ای
تحلیل پژوهش
به‌زودی
زاویه‌ی ایرانی
به‌زودی
تمرین این هفته
به‌زودی

راهنماهای دات‌هوش

راهنماهای کاربردیِ دات‌هوش برای کار با هوش مصنوعی — از همین‌جا شروع کنید:

دات‌هوش

راهنمای فارسی هوش مصنوعی — با نگاه به ایران

اخبار روزانه، معرفی ابزارها و مدل‌ها، و آموزشِ کار با هوش مصنوعی؛ همیشه با این پرسش که از ایران چه چیزی کار می‌کند و چه چیزی نه.