🎙️ حلقة 32507:28١٤ يوليو ٢٠٢٦

MCP يتحول إلى Stateless: شرح مواصفات 2026-07-28

اسمع الحلقة دي

AI-generated discussion by Alex and Jamie

عن الحلقة دي

انضموا إلى أليكس وجيمى في هذه الحلقة من البودكاست الذكي بينما يستكشفون بروتوكول نموذج السياق (MCP) 2026-07-28 المبتكر وتحوله إلى بنية بدون حالة. اكتشف كيف أن هذا التحول يعد بإحداث ثورة في تكامل الذكاء الاصطناعي مع أدوات الأعمال، مما يجعل الأنظمة أكثر قابلية للتوسع وأكثر كفاءة، وأيضًا يكشف التحديات المحتملة لإدارة الحالة على جانب العميل. سواء كنت خبيرًا تقنيًا متمرسًا أو مبتدئًا فضوليًا، هذه المناقشة الحيوية ستبقّيك مطلعًا ومُسلّيًا!

النص

[Alex]: أهلاً بيكم من جديد يا نيردز التكنولوجيا! أنتم بتسمعوا نيرد ليفل تك البودكاست الذكي، حيث نقوم بتشريح مستقبل الذكاء الاصطناعي، تغيير بروتوكول تلو الآخر. أنا أليكس، مهووس البروتوكولات المقيم، ومعايا كالعادة جيمي، الشخص الوحيد اللي أعرفه اللي يقدر يحول OAuth لفقرة ستاند أب كوميدي.

[Jamie]: أيوة، لازم حد يمنعك من إنك تخلي الحلقة دي تبدو وكأنها اجتماع مراجعة مواصفات فنية يا أليكس! [PAUSE] بس بجد، لو أنتم جداد هنا، أنا جيمي—أنا بسأل كل الأسئلة اللي مستمعينا أكيد بيفكروا فيها بس يمكن خايفين يسألوها في اجتماع الـ sprint review الجاي.

[Alex]: والنهارده، هندخل بعمق في مواصفات MCP 2026-07-28. لا، ده مش اسم درويد من Star Wars؛ ده Model Context Protocol—العمود الفقري لربط وكلاء الذكاء الاصطناعي بأدوات البيزنس. والخبر الكبير: إنه هيتحول لـ stateless، وده موضوع أكبر من لما شالوا فتحة السماعات من الموبايلات الذكية.

[Jamie]: أوه لا، إلا فتحة السماعات! بس استنى—stateless؟ هل ده معناه إني مش محتاج أفتكر حالتي (state) تاني؟ لأني بالعافية بفتكر ركنت عربيتي فين.

[Alex]: [يضحك] يا ريت. في التكنولوجيا، stateless معناها إن السيرفر مش بيفتكر أي حاجة عنك بين الطلبات (requests). مفيش تاني session handshakes بتربط العميل (client) بنسخة سيرفر معينة. تخيل إنك تقدر تروح لأي كاشير في السوبر ماركت، بدل ما تتحشر ورا الشخص اللي لسه بيكتب شيك.

[Jamie]: يعني ببساطة، أي سيرفر MCP في المجموعة يقدر يتعامل مع طلباتي، بغض النظر عن مين فيهم اللي كلمته في الأول؟ ده يبدو... قابل للتوسع (scalable) أكتر بكتير، بس هل فيه خدعة؟

[Alex]: بالظبط! دلوقتي، MCP يقدر يتوسع ورا load balancer عادي بنظام round-robin. مفيش sticky sessions، ولا مخزن جلسات مشترك، ولا "انتظر من فضلك لحد ما نلاقي جلستك". [PAUSE] بس أنت صح—دايماً فيه خدع. أولاً، الجلسات على مستوى البروتوكول اختفت، فدلوقتي الحالة—زي مثلاً سلة التسوق في محل أونلاين—بيتم التعامل معاها بـ IDs صريحة لازم العميل يتابعها ويبعتها في كل مرة.

[Jamie]: يعني بدل ما السيرفر يفتكر سلة تسوقي بهدوء بدالي، هيديني "basket_id" ويقولي: "أوعى تضيع ده، وإلا هتضطر تتسوق من أول وجديد"؟

[Alex]: [يضحك] بالظبط كده! ده بيخلي الحالة مرئية لوكيل الذكاء الاصطناعي، مش مستخبية في بيانات البروتوكول الوصفية (metadata). زي ما مامتك تعلق مفتاح البيت في جاكتك عشان ما تضيعوش وأنت بتلعب.

[Jamie]: كنت هضيعه برضه. طيب، إيه تاني هيتغير في المواصفات الجديدة دي؟

[Alex]: بجانب الـ statelessness، العنوان الرئيسي الكبير هو Enterprise-Managed Authorization، أو EMA. فاكر أيام ما كنت بتدوس على مية شاشة موافقة OAuth، واحدة لكل أداة؟

[Jamie]: صباعي لسه بيوجعني من كتر الكليك.

[Alex]: مش كده؟ EMA بيحل ده. دلوقتي، مزود الهوية بتاع شركتك—زي Okta مثلاً—بيتعامل مع كل صلاحيات الوصول. بتسجل دخول مرة واحدة، وبوم، كل موصلات MCP بتاعتك متصرح ليها، بناءً على دورك ومجموعتك.

[Jamie]: يعني مسؤولي الـ IT هيفرحوا، والمستخدمين مش هيضطروا يدوسوا "Allow" لحد ما الماوس ينفجر. بس هل ده معناه إن المؤسسة تقدر تشوف كل حاجة بعملها مع الوكيل؟

[Alex]: سؤال كويس. EMA بيغطي بس إذا كان مسموح لك تتصل بسيرفر وبأي نطاق (scope). مش بيراقب الوكيل بتاعك بيعمل إيه بعد ما يدخل. فالمؤسسات لسه محتاجة ضوابطها الخاصة لأفعال الوكيل.

[Jamie]: فهمت. زي ما حد يراجع الكارنيه بتاعك على الباب؛ بعد كده، اللي بتعمله جوه المبنى دي قصة تانية.

[Alex]: بالظبط. أوه، و EMA فعلاً معاه أسماء كبيرة—Okta، Anthropic، Visual Studio Code، Asana، Atlassian، Canva، Figma، Granola، Linear، نيردو، و Slack في الطريق.

[Jamie]: "تسجل دخول مرة واحدة وكل حاجة تشتغل"—أخيراً، حاجة في الـ IT بتاع الشركات تبدو كأنها سحر مش مجرد تذكرة دعم فني (support ticket).

[Alex]: [PAUSE] دلوقتي، خلينا نتكلم عن الامتدادات (extensions). المواصفات الجديدة بتقنن إطار عمل للامتدادات، وفيه اتنين نزلوا مع الإصدار ده: MCP Apps و Tasks.

[Jamie]: Apps و Tasks—كأنها قائمة المهام بتاعتي. دول بيعملوا إيه بالظبط؟

[Alex]: MCP Apps بتسمح للسيرفرات بتقديم واجهات HTML تفاعلية بتشتغل جوه iframe معزول (sandboxed). فبالتالي، الأدوات ممكن يكون ليها واجهات غنية، بس المستضيف (host) يقدر يراجعها ويخزنها مؤقتاً قبل ما يسمح لأي حاجة تشتغل. كل فعل لسه بيمر من خلال نفس مسار التدقيق JSON-RPC، فالموضوع آمن.

[Jamie]: خليني أخمن—ده معناه إني هاخد كل الواجهات الجديدة اللامعة، بس فريق الأمن مش هيضطر يقلق من Python كود خبيث... بنفس الدرجة؟

[Alex]: [يضحك] تقريباً. وامتداد Tasks بيسمح للسيرفر يديك "task handle" للمهام اللي بتاخد وقت طويل. العميل يقدر بعد كده يحركها لقدام، أو يحدثها، أو يلغيها. بس خد بالك: أي حد بنى شغله على نسخة Tasks التجريبية القديمة API عنده شغل ترحيل (migration) كتير مستنيه.

[Jamie]: يعني لو لسه بستخدم نسخة Tasks البيتا بتاعة السنة اللي فاتت، جه وقت إعادة هيكلة الكود (refactor). نشاطي المفضل!

[Alex]: [PAUSE] وبمناسبة إعادة الهيكلة، فيه ست تغييرات في التصريح (authorization) هتفرح بتوع OAuth و OpenID Connect. من أول التحقق من المصدر (issuer validation) لحد أنواع التطبيقات الصريحة، وربط الاعتمادات (credential binding)، وتفاصيل refresh token—تصليحات صغيرة كتير بتسد ثغرات حقيقية.

[Jamie]: وهل سمعت حاجة عن تغيير أكواد الأخطاء؟ لأني لو هضطر أدور في الكود بتاعي كله على رقم خطأ جديد تاني...

[Alex]: معلش يا جيمي. الكود الكلاسيكي -32002 بره، ومعيار JSON-RPC رقم -32602 هو اللي دخل. جه وقت تشغل خاصية البحث والاستبدال الشاملة.

[Jamie]: [يتأوه] نشاطي المفضل ليلة الجمعة.

[Alex]: دلوقتي، قبل ما الكل يجري يعمل ترقية، الباحثين الأمنيين—وخصوصاً Akamai—بيرفعوا علامات تحذير. موديل الـ stateless بينهي سرقة الجلسات (session hijacking)، بس ده معناه إن معرف حالة (state handle) متوقع، زي basket_id سهل التخمين، ممكن يخلي مهاجم يسرق سير العمل. ولو المطورين حطوا بيانات حساسة بالغلط في الـ headers الجديدة، القيم دي ممكن تتسرب في مسار الشبكة بتاعك.

[Jamie]: يعني كالعادة، البروتوكول يقدر يحمينا من نفسنا لحد حدود معينة بس.

[Alex]: بالظبط. الحدود الأمنية دلوقتي بقت معتمدة على مدى دقة تنفيذك ليها. أوه، وما تنساش احتمالية وجود cross-site scripting في MCP Apps، أو استخدام المهام (tasks) كوسيلة لهجمات حجب الخدمة (denial-of-service).

[Jamie]: يعني الموضوع مش مجرد "حدث واستريح". أنت فعلاً محتاج تراجع تنفيذك، وممكن تنفض التراب عن نموذج التهديدات (threat model) بتاعك، وتتأكد إنك مش بتفتح أبواب جديدة للمهاجمين.

[Alex]: بالظبط. بس الخبر الحلو إن مفيش حاجة هتبوظ يوم 28 يوليو. الاعتماد اختياري—فتقدر تجرب نسخ الـ SDKs البيتا، وتشغل ترافيك حقيقي، وتثبت إصداراتك لو محتاج. حتى فيه قائمة مهام مفيدة: نزل SDK بيتا، شغل اختباراتك، وراجع وضعك الأمني.

[Jamie]: وممكن تكتب لنفسك ملحوظة: "ما تقلقش. 28 يوليو هو مجرد تاريخ نشر المواصفات، مش ترقية إجبارية."

[Alex]: [يضحك] ممتاز. دي فعلاً الطريقة اللي بسمي بيها كل مواعيد الكالندر بتاعتي.

[Jamie]: طيب يا أليكس، شكراً إنك خليت تحديث بروتوكول يبدو وكأنه فيلم صيفي مشوق. وشكراً لكل مستمعينا اللي تابعوا نيرد ليفل تك البودكاست الذكي! لو عجبكم اللي سمعتوه، دوسوا subscribe، وسيبوا لنا تقييم، و—لو قلبكم جامد—قولوا لنا بتستعدوا إزاي لـ MCP 2026-07-28.

[Alex]: هنرجع الأسبوع الجاي بتعمق أكتر، ونكت بايخة، ويا رب ميزات أقل ملغية. لحد وقتها، خليكم نيردي! [OUTRO MUSIC FADES OUT]