الهندسة المعمارية الأساسية
فهم كيفية ربط MCP للعملاء والخوادم ونماذج اللغة الكبيرة (LLMs)#
يعتمد بروتوكول سياق النموذج (MCP) على بنية مرنة وقابلة للتوسيع تتيح اتصالاً سلسًا بين تطبيقات LLM وعمليات التكامل. تغطي هذه الوثيقة المكونات والمفاهيم المعمارية الأساسية.يتبع MCP بنية العميل والخادم حيث:المضيفون هم تطبيقات LLM (مثل Claude Desktop أو بيئات التطوير المتكاملة IDEs) التي تبدأ الاتصالات
العملاء يحتفظون باتصالات 1:1 مع الخوادم، داخل تطبيق المضيف
الخوادم توفر السياق والأدوات والمطالبات للعملاء
تتعامل طبقة البروتوكول مع تأطير الرسائل، وربط الطلبات/الاستجابات، وأنماط الاتصال عالية المستوى.تتعامل طبقة النقل مع الاتصال الفعلي بين العملاء والخوادم. يدعم MCP آليات نقل متعددة:1.
يستخدم الإدخال/الإخراج القياسي للاتصال
2.
يستخدم Server-Sent Events للرسائل من الخادم إلى العميل
HTTP POST للرسائل من العميل إلى الخادم
تستخدم جميع عمليات النقل JSON-RPC 2.0 لتبادل الرسائل. راجع المواصفات للحصول على معلومات مفصلة حول تنسيق رسائل بروتوكول سياق النموذج Model Context Protocol.يحتوي MCP على هذه الأنواع الرئيسية من الرسائل:1.
الطلبات تتوقع استجابة من الجانب الآخر: 2.
النتائج هي استجابات ناجحة للطلبات: 3.
الأخطاء تشير إلى فشل الطلب: 4.
الإشعارات هي رسائل أحادية الاتجاه لا تتوقع استجابة: 1.
يرسل العميل طلب initialize
مع إصدار البروتوكول والقدرات
2.
يستجيب الخادم بإصدار البروتوكول والقدرات الخاصة به
3.
يرسل العميل إشعار initialized
كإقرار
4.
يبدأ تبادل الرسائل العادي
بعد التهيئة، يتم دعم الأنماط التالية:طلب-استجابة: يرسل العميل أو الخادم طلبات، ويستجيب الآخر
الإشعارات: يرسل أي من الطرفين رسائل أحادية الاتجاه
يمكن لأي من الطرفين إنهاء الاتصال:إيقاف التشغيل النظيف عبر close()
يحدد MCP رموز الخطأ القياسية التالية:يمكن لمجموعات SDK والتطبيقات تحديد رموز الخطأ الخاصة بها أعلى من -32000.أحداث الخطأ على عمليات النقل
معالجات الأخطاء على مستوى البروتوكول
إليك مثال أساسي لتنفيذ خادم MCP:1.
استخدم نقل stdio للعمليات المحلية
فعال للاتصال على نفس الجهاز
2.
استخدم SSE للسيناريوهات التي تتطلب توافق HTTP
ضع في اعتبارك الآثار الأمنية بما في ذلك المصادقة والترخيص
1.
تحقق من صحة المدخلات بدقة
استخدم مخطط ات آمنة من النوع
2.
استخدم رموز التقدم للعمليات الطويلة
الإبلاغ عن التقدم بشكل تدريجي
قم بتضمين التق دم الإجمالي عند معرفته
3.
استخدم رموز الخطأ المناسبة
قم بتضمين رسائل خطأ مفيدة
قم بتنظيف الموارد عند حدوث أخطاء
1.
استخدم TLS للاتصالات البعيدة
قم بتنفيذ المصادقة عند الحاجة
2.
تحقق من صحة جميع الرسائل الواردة
3.
قم بتنفيذ عناصر التحكم في الوصول
تحقق من صحة مسارات الموارد
4.
سجل الأخطاء ذات الصلة بالأمان
قم بتنفيذ التنظيف المناسب
التعامل مع سيناريوهات رفض الخدمة DoS
Modified at 2025-03-12 10:37:28