بناء خادم وعميل MCP باستخدام Spring AI و Ollama
يجب أن تفعل نماذج الذكاء الاصطناعي أكثر من مجرد الإجابة على الأسئلة؛ فهي بحاجة للتفاعل مع الأنظمة الخارجية وتنفيذ إجراءات حقيقية.
يجعل بروتوكول سياق النموذج (Model Context Protocol - MCP) هذا الأمر ممكناً. فهو بروتوكول مفتوح يتيح لتطبيقات الذكاء الاصطناعي مشاركة الأدوات والبيانات والمطالبات (prompts) باستخدام لغة مشتركة.
لقد قمت ببناء نظام متكامل باستخدام:
- Java 17 و Spring Boot
- Spring AI 1.0.0
- Ollama لنماذج اللغة الكبيرة (LLMs) المحلية
- Docker للنشر (deployment)
- WebFlux للبث المباشر في الوقت الفعلي (real-time streaming)
البنية الهندسية (The Architecture): • يرسل المستخدم مطالبة (prompt) عبر Rest API. • يستخدم عميل MCP تقنية Spring AI للتحدث مع الـ LLM. • يستخدم الـ LLM تقنية Ollama لمعالجة الطلب محلياً. • إذا احتاج الـ LLM لاتخاذ إجراء، فإنه يستدعي خادم MCP. • يقوم خادم MCP بتنفيذ الأداة وإرجاع البيانات.
ما يمكنك بناؤه باستخدام هذا:
- الأدوات (Tools): إجراءات مثل جلب حالة الطقس أو البحث في قواعد البيانات.
- الموارد (Resources): بيانات مثل المستندات أو ملفات الإعدادات.
- المطالبات (Prompts): قوالب قابلة لإعادة الاستخدام لتوجيه الذكاء الاصطناعي.
في هذا المشروع، يستخدم النموذج أداة للعثور على العقارات المقومة بأقل من قيمتها. ويقوم بإرجاع نتائج في الوقت الفعلي عبر تدفق بيانات (stream). يمكنك تشغيل الإعداد بالكامل محلياً باستخدام Docker ونموذج Granite4:3b.
تحقق من الكود الكامل والدليل خطوة بخطوة على GitHub.
المصدر: https://dev.to/jlcastrillon91/building-an-mcp-server-and-client-with-spring-ai-and-ollama-ccl
مجتمع تعليمي اختياري: https://t.me/GyaanSetuAi