فهرست سرویسهای قابلاتصال و نحوهی نصبشان مدام عوض میشود. ایدهی استانداردِ مشترک و مدل client/server پایدار است.
آخرین بهروزرسانی: ۱۴۰۵/۰۵/۰۴
MCP چیست و چه مشکلی را حل میکند
اول مشکل، بعد راهحل — وگرنه اسمش گنگ میماند.
مشکل: فرض کن ده ابزار هوش مصنوعی داریم و بیست سرویس (ایمیل، تقویم، فروشگاه، پایگاهداده). اگر هر ابزار بخواهد برای هر سرویس یک اتصال اختصاصی بسازد، میشود دویست اتصال — که هیچوقت ساخته نمیشوند.
راهحل: یک زبان مشترک برای اتصال. هر سرویس یک بار آن را پیاده میکند، هر ابزار یک بار میفهمدش، و همه با همه کار میکنند.
اسمش MCP است، و خودِ مستندات رسمیاش یک تشبیه خوب دارد: مثل پورت USB-C برای ابزارهای هوش مصنوعی. همانطور که USB-C یک راه استاندارد برای وصلکردن دستگاههاست، MCP یک راه استاندارد برای وصلکردن ابزارهای هوش مصنوعی به سیستمهای بیرونی است.
و این دقیقاً همان دیواری است که در فصل ۳.۲ دیدی: ایجنت ایمیل و تقویم و پایگاهدادهٔ تو را نمیبیند. MCP راهی است که خودت آن دیوار را جای مشخصی سوراخ کنی.
client و server در یک نگاه
دو کلمه که در همهی توضیحهای MCP میبینی، و سادهترند از آنچه به نظر میرسند:
- server — طرفی که چیزی ارائه میدهد. مثلاً یک server که به فایلهای تو دسترسی میدهد، یا یکی که به تقویم.
- client — طرفی که استفاده میکند. یعنی همان ابزار ایجنتی که در دست داری.
و API مفهوم عمومیترش است: قراردادِ اینکه دو برنامه چطور با هم حرف بزنند. MCP در واقع یک API استانداردشده مخصوص همین کار است.
تشبیه رستوران، اگر کمک میکند: server آشپزخانه است، client تو، و MCP همان منو — قراردادی که میگوید چه چیزی میشود سفارش داد و جوابش چه شکلی میآید. بدون منو، هر بار باید بروی داخل آشپزخانه.
یک اتصال ساده، قدمبهقدم
مراحل در همهی ابزارها یکی است، حتی اگر شکل صفحه فرق کند:
- انتخاب کن چه چیزی را وصل کنی — و از کوچکترین و بیخطرترین شروع کن، نه از حساب کاریات.
- server را اضافه کن به تنظیمات ابزارت. معمولاً یک خط تنظیمات است.
- اجازه بده — بار اول از تو تأیید میخواهد. همان دروازهی فصل ۳.۳.
- امتحان کن — یک درخواست ساده بده که فقط بخواند. مثلاً «چه چیزهایی را از این اتصال میبینی؟»
- و بعد ببین چه چیزی اضافه شد — چه ابزارهای تازهای در دسترسش قرار گرفته.
قدم چهارم مهمترین است و همان الگوی «ثابت کن کار میکند» فصل ۰.۷ است: اول یک درخواستِ فقطخواندنی، بعد کارِ واقعی.
چه چیزهایی را میشود وصل کرد — و احتیاطش
دستههای رایج: فایلها و پوشهها · تقویم و ایمیل · پایگاهداده · ابزارهای مدیریت کار · سرویسهای جستجو · و ابزارهای تخصصیِ حرفهی خودت.
ولی نکتهی اصلی این بخش، فهرست نیست — احتیاط است.
بهخاطر بسپار هر اتصال، یک در است که تو باز میکنی. در فصل ۳.۲ گفتیم مرزِ پوشهی کار هم محدودیت است هم محافظت — هر MCP که وصل میکنی، بخشی از آن محافظت را برمیدارد. پس هر اتصال باید یک تصمیم باشد، نه یک عادت.
چهار سؤال قبل از هر اتصال:
- چه چیزی را میبیند؟ کل ایمیلت، یا فقط یک پوشهاش؟
- میتواند چیزی را عوض کند، یا فقط بخواند؟ اگر فقط خواندن کافی است، همان را بده.
- این server را کی نوشته؟ از منبع شناختهشده، یا از جایی که نمیشناسی؟ همان احتیاطِ نصب در فصل ۳.۳.۵.
- اگر لازم نداشتمش، برداشتنش راحت است؟
و یک قاعدهی عملی که تا آخر دوره به کارت میآید: با فقطخواندنی شروع کن. اتصالی که فقط میخواند، بدترین حالتش این است که چیزی را نفهمد. اتصالی که مینویسد، بدترین حالتش این است که چیزی را در سرویس واقعیات خراب کند.
بحث کاملِ اینکه چه دادهای را کجا میفرستی، ماژول ۵ است — و MCP دقیقاً همان جایی است که این سؤال جدی میشود.
تمرین (ساختنی)
یک اتصال ساده برقرار کن و نتیجهاش را بگیر.
مهم: سادهترین و بیخطرترین اتصال ممکن را انتخاب کن — چیزی که فقط میخواند و به دادهی حساس دسترسی ندارد. این تمرین دربارهی فهمیدن مکانیزم است، نه ساختن چیز بهدردبخور.
بعد از وصلکردن، این چهار چیز را بنویس: چه وصل کردی · چه ابزارهای تازهای اضافه شد · یک درخواستِ فقطخواندنی و جوابش · و اینکه چه چیزی را نمیبیند حتی با این اتصال.
اگر به هر دلیلی نتوانستی وصل کنی (که کاملاً ممکن است — فصل ۰.۷)، بهجایش این را بنویس: کدام قدم گیر کرد و کدام مانع بود، دسترسی یا تنظیمات؟ این هم جوابِ قابلقبولی است.
پاسخنامه — یک نمونهی خوب را ببین
چه وصل کردم: «یک server که به یک پوشهی مشخص روی کامپیوترم دسترسی میدهد — همان زمین بازی، نه پوشهی خانگی.»
چهار سؤال: «فقط آن پوشه را میبیند · فعلاً فقط خواندن دادم · server از منبع رسمی خودِ ابزار است · و برداشتنش یک خط تنظیمات است.»
ابزارهای تازه: «پرسیدم؛ سه ابزار اضافه شده بود: فهرست فایلها، خواندن فایل، و جستجو در فایلها. ابزار نوشتن نبود — چون فقط خواندن داده بودم. همان چیزی که انتظار داشتم.»
درخواست فقطخواندنی: «گفتم فهرست فایلهای آن پوشه را بده. داد، و با آنچه خودم میدیدم یکی بود.»
هنوز نمیبیند: «پوشههای دیگر · ایمیلم · و چیزی که در session قبلی گفته بودم. اتصال فقط یک در باز کرد، نه همهی درها.»
چرا این جواب خوب است: انتظارش از فهرست ابزارها را قبلش داشته و بعد تطبیق داده — یعنی اتصال را راستیآزمایی کرده، نه اینکه فرض کند کار میکند. و بند آخر نشان میدهد مرزها را درست فهمیده.
برای عمق بیشتر
- What is the Model Context Protocol — مستندات رسمی MCP (انگلیسی). خلاصهی فارسی: منبعِ تعریف و تشبیهِ این فصل. MCP را «استانداردی باز و متنباز برای وصلکردن برنامههای هوش مصنوعی به سیستمهای بیرونی» تعریف میکند — دادهها (فایل، پایگاهداده)، ابزارها (جستجو، محاسبه) و جریانهای کاری. و تشبیهش همان است که آوردیم: مثل پورت USB-C برای ابزارهای هوش مصنوعی. صفحه همچنین میگوید این پروتکل در طیف وسیعی از ابزارها پشتیبانی میشود، پس یک بار ساختن یعنی همهجا کار کردن.