MCP نشستها رو حذف نکرد، داد دست مدل
خلاصهٔ کاملتر
نویسنده تعریف میکنه چند سال پیش یه اپلیکیشن رو از sticky session — یعنی وقتی لودبالانسر هر کاربر رو همیشه به یه سرور مشخص میفرسته — جدا کردن تا پشت یه لودبالانسر معمولی مقیاس بگیرن. هیچی کرش نکرد و همهٔ health checkها سبز موند، ولی کاربرها میدیدن کارشون تصادفی میپره عقب. باگ تو منطق کسبوکار نبود؛ اپ بیسروصدا به پلتفرم تکیه کرده بود تا یادش بمونه کدوم درخواستها به هم مربوطن. همون حس رو نویسنده موقع خوندن نسخهٔ جدید Model Context Protocol داشته.
هستهٔ بدوننشست MCP ۲۸ جولای منتشر شد. تو پست انتشار اومده سرورهایی که هنوز بین فراخوانیها به وضعیت نیاز دارن، باید از یه tool یه handle بدن بیرون — یعنی یه شناسهٔ صریح مثل شناسهٔ سبد خرید — و مدل همون رو بهعنوان یه آرگومان عادی تو فراخوانی بعدی پس بفرسته. نویسنده میگه از نظر مهندسی حق با نگهدارندههاست: اینجوری وضعیت تو یه کانکشن غیرقابلبازرسی قایم نمیشه، پشت لودبالانسر دووم میاره و با همون مدلی میخونه که APIهای HTTP دهههاست باهاش کار میکنن.
نکتهٔ اصلی مقاله اینه که MCP دو جور وضعیت داشت: دادهٔ خود اپلیکیشن که هیچوقت مال MCP نبوده، و وضعیت نشست پروتکلی یعنی هندشیک، قابلیتهای توافقشده و شناسهای که به سرور میگفت دو تا درخواست مال یه گفتوگو هستن. چیزی که حذف شده دومیه. پس پروتکل وضعیت اپ تو رو برنداشته، بلکه «همبستگی» رو از نشستِ پروتکل منتقل کرده به آرگومانی که مدل از یه نوبت به نوبت بعد حمل میکنه. یعنی درستی سرور تو حالا تا حدی به حافظهٔ مدل وصله.
و این دقیقاً همونجاییه که پژوهشها بیشترین ضعف رو نشون دادن. مقالهٔ «LLMs Get Lost in Multi-Turn Conversation» تو ICLR 2026 بیشتر از ۲۰۰٬۰۰۰ گفتوگوی شبیهسازیشده رو روی ۱۵ مدل باز و بسته اجرا کرده و با همون اطلاعات، بهطور میانگین ۳۹٪ افت عملکرد تو حالت چندنوبتی دیده. تفکیکش جالبتره: توانایی حدود ۱۶٪ افت میکنه ولی بیثباتی ۱۱۲٪ بالا میره. ترجمه که وابستگی بین نوبتها نداره، اصلاً افت نکرده — چیزی که خراب میشه همون حمل اطلاعات بین نوبتهاست.
بدترین بخش اینه که خطاش صدا نمیده: اگه مدل handle اشتباه رو پاس بده، سرور یه درخواست خوشفرم با آرگومان معتبر میگیره و اگه شناسه به یه شیء واقعی اشاره کنه، فراخوانی موفق میشه. Red Hat گزارش حادثهای منتشر کرده که توش یه ایجنت بهجای حساب A حساب B رو شارژ کرده و چهار هزار دلار به مشتری اشتباه رفته، بعد از پاسکردن همهٔ تستهای staging. نویسنده جوابش رو ساده میدونه: مجوزسنجی هر handle در برابر کاربر احرازهویتشده، آنتروپی واقعی و عمر کوتاه، idempotency key و تست تو عمق نوبت سی، نه نوبت یک.
نکات کلیدی:
- هستهٔ بدوننشست MCP از ۲۸ جولای فعاله؛ شناسهٔ نشست پروتکلی حذف شده.
- جایگزینش یه handle صریحه که سرور میسازه و مدل تو نوبتهای بعدی پسش میفرسته.
- مقالهٔ ICLR 2026 روی ۱۵ مدل: ۳۹٪ افت میانگین چندنوبتی، بیثباتی ۱۱۲٪ بیشتر، توانایی فقط ۱۶٪ کمتر.
- پاسدادن handle اشتباه هیچ لاگ خطا و هیچ متریک قرمزی تولید نمیکنه.
- تیم تحقیقات تهدید Akamai هشدار داده handleها سطح حملهٔ جدیدن: ربایش workflow، خوندن دادهٔ ایجنت دیگه و اقدام بینمستأجری.
- handle تو context window کنار خروجی ابزارها میشینه، پس محتوای نامعتبر و شناسهٔ وضعیت تو یه فضا قرار میگیرن.




