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

پراکسی Smart MCP با مکانیزم Hot-Swap نیاز به ری‌استارت عامل‌ها را حذف کرد

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

معرفی مکانیزم Hot-Swap برای سرورهای MCP که اجازه می‌دهد ابزارها بدون قطع اتصال عامل، به‌صورت زنده تغییر کنند و منابع سیستم بین چندین عامل به اشتراک گذاشته شود.

اگر برای مدیریت ابزارهای هوش مصنوعی خود مدام فایل‌های YAML را ویرایش می‌کنید و گیت‌وی‌ها را ری‌استارت می‌کنید، این چرخه خسته‌کننده به پایان رسیده است. Smart MCP Proxy که در ۲۱ اوت ۲۰۲۶ منتشر شد، با پیاده‌سازی مکانیزم تعویض سریع (Hot-Swap)، فهرست سرورها را به‌صورت زنده به‌روزرسانی می‌کند.

به نقل از گزارش توسعه‌دهنده در وب‌سایت dev.to، این ابزار نیاز به بازراه‌اندازی اپلیکیشن‌های دسکتاپ یا جاسازی مجدد کلیدهای API هنگام تغییر پیکربندی را کاملاً از بین می‌برد. برای اکثر کاربران، افزودن یک ابزار جدید به یک عامل (Agent) — شبیه تعویض موتور ماشین در حالی است که خودرو در حال حرکت است — و معمولاً باید ابتدا همه چیز را متوقف کنید.

در یک ساختار استاندارد، اگر سه عامل هر کدام به هفت سرور متصل شوند، سیستم ۲۱ زیرپردازش (Subprocess) مجزا ایجاد می‌کند. این اتفاق باعث تخلیه شدید حافظه می‌شود، به‌ویژه وقتی از ابزارهای سنگینی مثل Playwright یا windows-mcp استفاده می‌کنید. همان‌طور که در تحلیل‌های قبلی ما درباره بهینه‌سازی منابع در سیستم‌های عامل‌محور اشاره کردیم، مدیریت بهینه حافظه کلید مقیاس‌پذیری است.

مسئله زمینه و منابع

بر اساس مستندات فنی، توسعه‌دهنده اشاره می‌کند که «ابزارهای خام» باعث هدر رفتن پنجرهٔ زمینه (Context Window) — که مثل میز کاری است که جا برای چند ورق دارد، نه برای کل کتابخانه — و چرخه‌های استدلالی می‌شوند. عامل‌ها اغلب برای رسیدن به یک نتیجه ساده، درگیر لیست‌های پارامتر، فراخوانی‌های خام ابزار و زنجیره‌های چندمرحله‌ای می‌شوند. این «تخلیه زمینه» باعث می‌شود مدل زبانی (LLM) توکن‌های خود را صرف مکانیک ابزار کند، نه خودِ تکلیف اصلی.

Smart MCP Proxy این مشکل را با ایجاد یک استخر واحد از زیرپردازش‌ها برای هر سرور حل می‌کند که بین تمام عامل‌های متصل به اشتراک گذاشته می‌شود. بنابراین، سه عامل و هفت سرور به‌جای ۲۱ استخر، تنها به هفت استخر نیاز دارند. این سیستم از یک File Watcher برای نظارت بر فایل proxy-config.yaml استفاده می‌کند؛ به‌محض شناسایی تغییر، فهرست سرورها را مقایسه (Diff) کرده و استخرها را بدون قطع اتصال، فوراً فعال یا غیرفعال می‌کند.

معماری فنی و مدیریت منابع

طبق گزارش فنی، این پراکسی ویژگی‌های زیر را ارائه می‌دهد:

  • مدیریت منابع: زیرپردازش‌های اضافی را بر اساس نیاز (On-demand) ایجاد کرده و در حالت بیکار برای ذخیره RAM آن‌ها را می‌کشد.
  • بازیابی از خطا: در صورت شکست یک استخر سرور، سیستم سه بار با استراتژی Backoff (تأخیر افزایشی) تلاش به راه‌اندازی مجدد می‌کند.
  • جریان داده: محتوای باینری و تصاویر را به‌صورت JSON منتقل می‌کند تا سازگاری حفظ شود. هر ابزار پایین‌دستی نام واقعی و طرحواره (Schema) کامل پارامترهای خود را حفظ می‌کند تا از ایجاد «زباله‌های شیء‌گرا» در آرگومان‌های عمومی جلوگیری شود.
  • استقرار: به‌عنوان یک پردازش تک‌سرویس پایتون اجرا می‌شود و نیازی به Docker، پایگاه‌داده یا رابط کاربری وب ندارد و کاملاً آفلاین است.

جزئیات پیکربندی و لایه هوشمند

در فایل proxy-config.yaml می‌توان کنترل دقیقی روی میزبان (مثلاً "127.0.0.1") و پورت (مثلاً 9876) داشت. تعاریف سرور شامل نوع اتصال (stdio)، مسیر دستور (مانند ~/.mcp_servers/xxx/cmd)، آرگومان‌های خاص و زمان انتظار یا Timeout (مثلاً ۱۲۰ ثانیه) است.

اما فراتر از تجمیع ساده، این ابزار یک لایه اختیاری به نام «دربان هوش مصنوعی» (AI Concierge) دارد. به‌جای اینکه عامل با پارامترهای خام ابزار دست‌وپنجه نرم کند، دربان از قابلیت Sampling در پروتکل زمینهٔ مدل (MCP) استفاده می‌کند تا از مدل زبانی خودِ عامل برای مسیریابی کمک بگیرد. این دربان درخواست‌های انگلیسی ساده را پردازش می‌کند — مثلاً «مقایسه grok، claude و gemini در این موضوع» — آن‌ها را با قالب‌های مهارت ذخیره شده در فایل‌های Markdown در مسیر skills/<server-name>/ تطبیق می‌دهد و تنها پاسخ نهایی را برمی‌گرداند.

این فیلترینگ حیاتی است زیرا از ورود نویزهای فراخوانی ابزار به پنجره متنی عامل جلوگیری می‌کند. دربان زنجیره‌های چندمرحله‌ای را به حداکثر چهار گام (Hop) محدود کرده و داده‌های تصویری را از زمینه‌های بعدی حذف می‌کند تا از سرریز توکن‌ها جلوگیری شود. اگر کلاینت از Sampling پشتیبانی نکند، سیستم به روش تطبیق کلمات کلیدی (Keyword Matching) بازمی‌گردد. هر پاسخ شامل نام سرور مورد استفاده و سطح اطمینان (Confidence Level) از تطبیق است.

زمینه و کاربرد عملی

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

این معماری فرض قدیمی مبنی بر استاتیک بودن سرورهای MCP را می‌شکند. با تبدیل ابزارها به منابع قابل تعویض سریع، توسعه‌دهندگان می‌توانند سرورهای راه دور را حتی از طریق پیام‌های ساده در تلگرام مدیریت کنند، بدون اینکه وضعیت جلسه (Session State) فعلی را از دست بدهند. با این حال، در کنار انعطاف‌پذیری، نیاز به لایه‌های نظارتی برای جلوگیری از دسترسی‌های غیرکنترل‌شده‌ی عامل‌ها به ابزارها همچنان یک اولویت امنیتی است.

برای شروع، کاربران می‌توانند بسته را از طریق pip و با نصب پیش‌نیازهایی چون mcp ،fastmcp ،pydantic ،pyyaml ،watchdog ،click ،uvicorn و httpx نصب کنند. اجرای سیستم با دستور python -m src --enable-smart صورت می‌گیرد و پروفایل Hermes باید به آدرس http://localhost:9876/mcp متصل شود. برای مدیریت آسان‌تر، مخزن پروژه شامل Wrapperهای .cmd و .sh برای دستورات شروع، توقف، ری‌استارت و بررسی وضعیت (Status) است.

این پروژه در نسخه ۱.۰.۰ و تحت لایسنس MIT منتشر شده است. اما توسعه‌دهنده هشدار داده که به‌دلیل عدم پیاده‌سازی HTTPS و احراز هویت در نسخه فعلی، پراکسی نباید روی پورت‌های عمومی باز شود.

گام بعدی شما

  • اگر از چندین سرور MCP استفاده می‌کنید، Smart MCP Proxy را برای کاهش مصرف RAM تست کنید.
  • لایه AI Concierge را برای کاهش توکن‌های مصرفی در فراخوانی‌های پیچیده فعال کنید.
  • برای مدیریت ابزارها در محیط‌های تیمی، ساختار دسترسی‌های تفکیک‌شده را در فایل YAML پیاده کنید.

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

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

این ابزار با بهینه‌سازی مصرف حافظه و حذف ری‌استارت‌ها، استقرار عامل‌های هوش مصنوعی را از حالت آزمایشی به حالت عملیاتی نزدیک می‌کند. اعتبار این راهکار در کاهش چشمگیر Overhead سیستم‌های چندعاملی است که پیش از این با محدودیت RAM مواجه بودند.

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

برنامه‌نویسان ایرانی که از مدل‌های محلی یا Self-hosted استفاده می‌کنند، می‌توانند با این ابزار محدودیت‌های سخت‌افزاری RAM را مدیریت کنند و محیط‌های توسعه سریع‌تری بسازند.

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

جدا کردن لایه مدیریت ابزار از لایه استدلال عامل، گامی به سوی معماری Microservices در هوش مصنوعی است. این رویکرد نشان می‌دهد که آینده عامل‌ها نه در مدل‌های بزرگ‌تر، بلکه در لایه‌های میان‌افزاری (Middleware) است که نویز ورودی را فیلتر کرده و بهره‌وری توکن‌ها را بالا می‌برند.

منابع

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

گفتگو

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

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

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

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

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

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

دات‌هوش

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

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