MCP Gateway چیست و چه تفاوتی با MCP Server دارد؟
MCP Server قابلیتها را ارائه میکند؛ MCP Gateway کنترل چند اتصال، هویت، مجوز، تأیید و Audit را متمرکز میکند. تفاوت این دو معماری را با مثال بررسی میکنیم.
MCP Server و MCP Gateway یک چیز نیستند. Server یکی از نقشهای اصلی معماری MCP است؛ Gateway یک الگوی معماری برای مدیریت چند اتصال، چند سرویس و چند کاربر در یک نقطه مرکزی است.
برای یک ابزار شخصی یا یک سرویس محدود، اتصال مستقیم به MCP Server معمولاً سادهتر است. وقتی چند سرویس کسبوکار، چند عضو، سطح دسترسی متفاوت، تأیید عملیات و Audit مطرح میشود، Gateway ارزش بیشتری پیدا میکند.
اگر با خود پروتکل آشنا نیستید، ابتدا «MCP چیست؟» را بخوانید.
MCP Server چیست؟
MCP Server برنامهای است که قابلیتهای یک سرویس یا دامنه را با قرارداد MCP ارائه میکند. این قابلیتها میتوانند شامل Tools، Resources و Prompts باشند. Server پیامهای پروتکل را دریافت میکند و منطق لازم را روی API، پایگاه داده یا سرویس داخلی اجرا میکند.
مثلاً یک Server فروشگاهی میتواند ابزار مشاهده سفارش، جستوجوی محصول یا تغییر وضعیت سفارش را ارائه کند.
MCP Gateway چیست؟
Gateway نقش الزامی در هسته پروتکل MCP نیست. این لایه بین کلاینتهای هوش مصنوعی و چند مقصد قرار میگیرد و مسئولیتهای مشترک مثل هویت، مجوز، مسیریابی، محدودیت نرخ، تأیید عملیات و ثبت لاگ را متمرکز میکند.
Server بیشتر میگوید «چه ابزارهایی ارائه میکنم»؛ Gateway بیشتر کنترل میکند «چه کسی اجازه دارد کدام ابزار را روی کدام اتصال اجرا کند».
تفاوتهای اصلی
- Server بخشی از معماری رسمی MCP است؛ Gateway یک الگوی معماری پیرامون آن است.
- Server معمولاً یک سرویس یا دامنه مشخص را ارائه میکند؛ Gateway چند سرویس و Connection را جمع میکند.
- Server مجوزهای خودش را اعمال میکند؛ Gateway میتواند سیاست سراسری سازمان را قبل از رسیدن درخواست به مقصد اجرا کند.
- Gateway نقطه مناسبی برای Audit، سهمیه، Rate Limit، انتخاب Connection و تأیید عملیات حساس است.
- در معماری Gateway، کلاینت AI لازم نیست اعتبارنامه مستقیم همه سرویسها را در اختیار داشته باشد.
سه معماری رایج
۱. اتصال مستقیم به یک Server
AI Client مستقیماً به یک MCP Server وصل میشود. برای توسعه محلی، ابزار شخصی یا یک سرویس محدود این مدل ساده و قابلفهم است.
۲. چند Server مستقیم
کلاینت به چند Server جدا متصل میشود؛ مثلاً یکی برای کد، یکی برای پایگاه داده و یکی برای فروشگاه. با افزایش کاربران و ابزارها، تنظیم مجوز و نگهداری اتصالها تکراری میشود.
۳. اتصال از طریق Gateway
کلاینت به یک نقطه مرکزی متصل میشود و Gateway بر اساس سازمان، عضو، ابزار و Connection درخواست را به مقصد درست میرساند. مقصد پشت Gateway میتواند MCP Server، REST API یا سرویس دیگری باشد.
Gateway چه مسئولیتهایی دارد؟
- حفظ هویت عضو و مرز سازمان
- تعریف مجوز در سطح ابزار، نه فقط در سطح سرویس
- تأیید عملیات مالی یا مخرب
- انتخاب Connection درست بین چند حساب یا فروشگاه
- Audit و گزارش مصرف
- Rate Limit و سهمیه
- نگهداری امن اعتبارنامههای سرویسها
چه زمانی Gateway لازم نیست؟
اگر فقط یک کاربر و یک Server کمریسک دارید و به سیاست مرکزی، تأیید یا گزارش سراسری نیاز ندارید، Gateway ممکن است پیچیدگی غیرضروری ایجاد کند.
چه زمانی Gateway منطقی میشود؟
- چند سرویس کسبوکار باید از یک AI قابل استفاده باشند.
- اعضا سطح دسترسی متفاوت دارند.
- عملیات خواندن، نوشتن و مخرب باید جدا شوند.
- برای یک سرویس چند Connection وجود دارد.
- تأیید داخل سازمان برای عملیات حساس لازم است.
- میخواهید کلاینت AI را عوض کنید بدون اینکه همه سرویسها را دوباره پیکربندی کنید.
Gateway جای امنیت Server را نمیگیرد
Gateway باید سیاست خودش را اعمال کند، اما Server یا سرویس مقصد نیز باید مجوزهای بومی خود را حفظ کند. برای مثال کاربری که در WordPress مجوز ویرایش ندارد نباید صرفاً با داشتن دسترسی در Gateway بتواند این محدودیت را دور بزند.
وصلک در این معماری کجاست؟
وصلک یک MCP Gateway است. سرویسهای مختلف از طریق کانکتورهای خود به وصلک متصل میشوند و کلاینت هوش مصنوعی از یک اتصال MCP مرکزی به ابزارهای مجاز دسترسی میگیرد. هویت، Connection، ابزار، تأیید و Audit در این لایه قابل کنترل هستند.
مثلاً مدیر میتواند از AI بخواهد سفارشهای فروشگاه را با اسناد حسابداری تطبیق دهد. Gateway ابزارهای دو سرویس را زیر یک سیاست مشترک ارائه میکند. اگر درخواست بعدی تغییر وضعیت سفارش باشد، سیاست عملیات نوشتنی و تأیید میتواند جداگانه اعمال شود.
جمعبندی
MCP Server قابلیت را ارائه میکند؛ MCP Gateway قابلیتهای چند سرویس را زیر یک مرز کنترل مشترک جمع میکند. انتخاب Gateway به تعداد سرویسها، کاربران و نیاز به مجوز، تأیید و Audit بستگی دارد، نه به اینکه ذاتاً «پیشرفتهتر» باشد.