بناء وكلاء الذكاء الاصطناعي باستخدام MCP وADK وA2A: دليل شامل
تم النشر:

يتطور مجال بناء وكلاء الذكاء الاصطناعي بسرعة، وتبرز فيه ثلاث تقنيات قوية كحجر أساس: بروتوكول سياق النموذج (Model Context Protocol أو MCP)، وأداة تطوير الوكلاء (Agent Development Kit أو ADK)، وبروتوكول التواصل بين الوكلاء (Agent2Agent أو A2A). هذه الأدوات معاً تغيّر طريقة بناء المطورين لأنظمة ذكاء اصطناعي تتصل بمصادر بيانات خارجية، وتنفّذ مهام معقدة، وتتعاون مع وكلاء آخرين، وطريقة نشرها وتنسيقها.
فهم الأساس: ما هي MCP وADK وA2A؟
بروتوكول سياق النموذج (MCP): الجسر الموحّد لسياق الذكاء الاصطناعي
بروتوكول سياق النموذج معيار مفتوح أطلقته Anthropic في نوفمبر 2024، وغيّر طريقة اتصال أنظمة الذكاء الاصطناعي بالموارد الخارجية. يمكنك تخيّل MCP كـ”جهاز تحكم عالمي” للذكاء الاصطناعي: فهو يوفّر طريقة موحّدة لتصل النماذج اللغوية إلى الأدوات ومصادر البيانات والخدمات، دون الحاجة إلى ربط مخصص لكل حالة.
من أهم قدرات MCP:
- الموارد (Resources): توفير السياق والبيانات لتستخدمها النماذج
- الأدوات (Tools): دوال تستطيع النماذج تنفيذها للقيام بأفعال
- القوالب (Prompts): رسائل وسير عمل جاهزة للمستخدمين
- أخذ العينات (Sampling): سلوكيات وكيلة يبدأها الخادم لتفاعلات متكررة مع النموذج اللغوي
يعمل البروتوكول ببنية عميل وخادم، ويتبادل الرسائل بصيغة JSON-RPC 2.0، على غرار بروتوكول خادم اللغة (LSP) الذي غيّر أدوات المطورين. ويدعم MCP النقل عبر المدخلات والمخرجات القياسية (stdio) وعبر HTTP مع أحداث يرسلها الخادم (SSE) للبث المتدفق. وقد تبنّت MCP جهات كبرى في الذكاء الاصطناعي منها OpenAI وGoogle DeepMind وMicrosoft، ما يشير إلى أنه أصبح معياراً في الصناعة. ويعالج البروتوكول مشكلة جوهرية هي عزلة المعلومات، إذ يُغني عن بناء N×M موصّلاً مخصصاً بين النماذج ومصادر البيانات.
أداة تطوير الوكلاء (ADK): إطار Google لوكلاء جاهزين للإنتاج
أداة تطوير الوكلاء إطار مفتوح المصدر من Google، صُمم ليجعل تطوير الوكلاء أقرب إلى تطوير البرمجيات المعتاد. صدر بنسخة مستقرة v1.0.0، وهو الإطار نفسه الذي يشغّل الوكلاء داخل منتجات Google مثل Agentspace وGoogle Customer Engagement Suite.
من أهم نقاط قوة ADK:
- تصميم مستقل عن النموذج: يعمل مع نماذج لغوية مختلفة، مع تحسينات خاصة لـ Gemini
- مرونة في النشر: يعمل محلياً أو على Vertex AI Agent Engine أو على بنية تحتية خاصة
- تنسيق وكلاء متعددين: تركيب وكلاء متخصصين في هياكل هرمية
- تقييم مدمج: قياس جودة الإجابات وجودة التنفيذ بشكل منهجي
ويوفّر ADK ثلاثة أنواع رئيسية من الوكلاء لبناء أنظمة متقدمة متعددة الوكلاء:
- وكلاء النماذج اللغوية (LLM Agents): تستخدم النماذج اللغوية الكبيرة لفهم اللغة الطبيعية والاستدلال
- وكلاء التتابع والتوازي والتكرار (Sequential/Parallel/Loop Agents): تنسّق سير العمل وفق أنماط متوقعة
- الوكلاء الهرميون (Hierarchical Agents): تتيح علاقات بين وكيل رئيسي ووكلاء فرعيين للتنسيق المعقد
ويتكامل الإطار بسلاسة مع أكثر من 100 موصّل جاهز لأنظمة المؤسسات، ويدعم سير العمل عبر Application Integration، ويستطيع الوصول إلى البيانات في AlloyDB وBigQuery وخدمات Google Cloud الأخرى.
بروتوكول التواصل بين الوكلاء (A2A): تمكين التعاون بين الوكلاء
بروتوكول Agent2Agent معيار تواصل مفتوح أطلقته Google في أبريل 2025، يتيح لوكلاء الذكاء الاصطناعي أن يكتشفوا بعضهم ويتواصلوا ويتعاونوا، بغض النظر عن الأطر أو الشركات التي بُنوا بها. ويكتسب A2A زخماً سريعاً، بدعم من أكثر من 150 جهة منها كبار مزودي الحوسبة السحابية وشركات التقنية وعملاء من المؤسسات.
من أبرز خصائص A2A:
- توافق شامل: يعمل الوكلاء معاً بسلاسة عبر المنصات المختلفة
- أمان بمستوى المؤسسات: يدعم OAuth 2.0 وOpenID Connect ومفاتيح API المتوافقة مع OpenAPI
- دعم الوسائط المتعددة: يتعامل مع بث النص والصوت والفيديو
- مهام طويلة الأمد: مصمم للإجابات السريعة وللأبحاث العميقة التي قد تستغرق ساعات أو أياماً
- تحديثات لحظية: يقدّم ملاحظات مستمرة طوال دورة حياة المهمة
ويتبع البروتوكول سير عمل من ثلاث خطوات:
- الاكتشاف: يجلب الوكيل العميل “بطاقات الوكلاء” (Agent Cards) من الوكلاء البعيدين ليتعرف على قدراتهم
- المصادقة: إنشاء اتصال آمن بآليات مصادقة بمستوى المؤسسات
- التواصل: تفويض المهام وتبادل المعلومات عبر JSON-RPC 2.0 فوق HTTPS
بناء وكيل لتحويل العملات: مثال عملي
يوضح درس Google Codelabs كيف تعمل هذه التقنيات الثلاث معاً من خلال بناء وكيل لتحويل العملات. ويمر هذا المثال العملي بدورة التطوير كاملة، من إنشاء خادم MCP إلى إتاحة الوكيل عبر A2A.
الخطوة 1: إنشاء خادم MCP محلي باستخدام FastMCP
تبدأ الخطوة الأولى ببناء خادم MCP باستخدام FastMCP، وهي حزمة Python تبسّط إنشاء خوادم MCP. يتيح الخادم أداة واحدة اسمها get_exchange_rate تجلب أسعار العملات الحالية من Frankfurter API:
import httpx
from fastmcp import FastMCP
mcp = FastMCP("Currency MCP Server 💵")
@mcp.tool()
def get_exchange_rate(
currency_from: str = 'USD',
currency_to: str = 'EUR',
currency_date: str = 'latest',
):
"""Use this to get current exchange rate."""
response = httpx.get(
f'https://api.frankfurter.app/{currency_date}',
params={'from': currency_from, 'to': currency_to},
)
return response.json()
تتولى FastMCP تفاصيل البروتوكول تلقائياً عبر المزخرفات (decorators)، ما يجعلها أسرع طريق من الفكرة إلى الإنتاج. ويدعم الإطار الدوال المتزامنة وغير المتزامنة، ويحوّل تلميحات الأنواع (type hints) تلقائياً إلى تعريفات للأدوات.
الخطوة 2: نشر خادم MCP على Cloud Run
تشغيل خوادم MCP عن بُعد على Cloud Run له فوائد مهمة:
- قابلية التوسع: توسع تلقائي حسب الطلب
- وصول مركزي: يستطيع أعضاء الفريق مشاركة خادم واحد عبر صلاحيات IAM
- الأمان: مصادقة مدمجة عبر دور Cloud Run Invoker
وعملية النشر بسيطة باستخدام أداة gcloud:
gcloud run deploy mcp-server --no-allow-unauthenticated --region=us-central1 --source .
وأثناء التطوير المحلي، ينشئ وكيل Cloud Run (proxy) نفقاً موثقاً إلى الخادم البعيد، فتمر كل الحركة بصلاحيات صحيحة.
الخطوة 3: بناء الوكيل باستخدام ADK
بعد نشر خادم MCP، تأتي خطوة إنشاء وكيل العملات باستخدام ADK وربطه بأدوات MCP. يستخدم الوكيل صنف MCPToolset من ADK للتكامل بسلاسة:
from google.adk.agents import LlmAgent
from google.adk.tools.mcp_tool import MCPToolset, StreamableHTTPConnectionParams
def create_agent() -> LlmAgent:
return LlmAgent(
model="gemini-2.5-flash",
name="currency_agent",
description="An agent that can help with currency conversions",
instruction=SYSTEM_INSTRUCTION,
tools=[
MCPToolset(
connection_params=StreamableHTTPConnectionParams(
url=os.getenv("MCP_SERVER_URL", "http://localhost:8080/mcp")
)
)
],
)
يجعل ADK إنشاء الوكلاء خفيفاً جداً، مع قدرات تنسيق متقدمة. فالإطار يدير دورة حياة الوكيل والذاكرة وتكامل الأدوات، ويدعم سير عمل متعدد الوكلاء متتابعاً أو متوازياً أو تكرارياً.
الخطوة 4: إتاحة الوكيل كخادم A2A
الخطوة الأخيرة هي إتاحة وكيل العملات عبر بروتوكول A2A، ليتمكن من التواصل مع وكلاء آخرين. ويتطلب ذلك إنشاء “بطاقة وكيل” (Agent Card) تعلن عن قدراته:
from a2a.types import AgentSkill, AgentCard, AgentCapabilities
skill = AgentSkill(
id='get_exchange_rate',
name='Currency Exchange Rates Tool',
description='Helps with exchange values between various currencies',
tags=['currency conversion', 'currency exchange'],
examples=['What is exchange rate between USD and GBP?'],
)
agent_card = AgentCard(
name='Currency Agent',
description='Helps with exchange rates for currencies',
url=f'http://{host}:{port}/',
version='1.0.0',
defaultInputModes=["text"],
defaultOutputModes=["text"],
capabilities=AgentCapabilities(streaming=True),
skills=[skill],
)
توفر حزمة A2A لـ Python الصنف A2AFastAPIApplication الذي يبسّط تشغيل خوادم HTTP متوافقة مع A2A باستخدام FastAPI وUvicorn. وتتولى واجهة AgentExecutor منطق معالجة الطلبات الأساسي، وتحوّل بين أنواع ADK في google.genai.types وأنواع A2A في a2a.types.
فوائد المؤسسات والأثر الاستراتيجي
كسر العزلة وتجنب الارتباط بمزود واحد
يعالج الجمع بين MCP وADK وA2A تحدياً حرجاً للمؤسسات هو التوافق بين الأنظمة. فالمؤسسات تستطيع الآن بناء وكلاء متخصصين بأطر ومزودين مختلفين، مع ضمان تواصلهم عبر بروتوكولات موحّدة. وهذا يمنع الارتباط بمزود واحد، ويعطي مرونة لاختيار أفضل حل لكل حالة استخدام.
تسريع الوصول إلى الإنتاج
بتوحيد طرق الاتصال، تخفّض هذه البروتوكولات تعقيد التكامل بشكل كبير. فما كان يحتاج أسابيع من التطوير المخصص يمكن إنجازه الآن في أيام. ويوفر تكامل ADK مع Vertex AI Agent Engine طريقاً مباشراً من النموذج الأولي إلى نشر جاهز للإنتاج.
تمكين سير عمل معقد متعدد الوكلاء
تظهر القوة الحقيقية عندما يتعاون عدة وكلاء متخصصين لحل مشكلات معقدة. وتدعم الهياكل الهرمية في ADK أنماطاً متقدمة مثل:
- نمط المنسّق والموزّع: وكيل مركزي يوجّه الطلبات إلى وكلاء فرعيين متخصصين
- سير العمل المتتابع: خطوط معالجة خطوة بخطوة
- التنفيذ المتوازي: معالجة متزامنة للمهام المستقلة
- الأبحاث طويلة الأمد: مهام تمتد ساعات أو أياماً مع الحفاظ على السياق
فمثلاً، تقود شركتا Tyson Foods وGordon Food Service تجارب أنظمة A2A تعاونية لدعم المبيعات وتقليل العوائق في سلسلة الإمداد، بإنشاء قنوات لحظية يتبادل الوكلاء عبرها بيانات المنتجات والعملاء المحتملين.
أمان وامتثال بمستوى المؤسسات
يتكامل A2A بسلاسة مع البنية التحتية القائمة في المؤسسات، ويدعم OAuth 2.0 وOpenID Connect ومفاتيح API كآليات للمصادقة. ويتعامل البروتوكول مع الوكلاء كصناديق مغلقة، فيتيح التعاون دون كشف المنطق الخاص أو التفاصيل الداخلية، وهذا ضروري لحماية الملكية الفكرية.
قدرات متقدمة مع Gemini 2.5 Flash
يستخدم مثال وكيل العملات نموذج Gemini 2.5 Flash، وهو أفضل نماذج Google من حيث الأداء مقابل السعر. ويتميز Gemini 2.5 Flash بقدرات محسّنة منها:
- المعالجة واسعة النطاق: يتعامل بكفاءة مع المهام كثيرة العدد التي تتطلب استجابة سريعة
- قدرات التفكير: أول نموذج Flash يُظهر خطوات استدلاله
- استخدام متقدم للأدوات: استجابة أسرع بنسبة 25% مع تكلفة أقل قد تصل إلى 85% لكل طلب
- أمان معزّز: حماية أعلى بكثير من هجمات حقن التعليمات غير المباشرة (indirect prompt injection)
ويقدّم Gemini 2.5 Flash أيضاً “ملخصات التفكير” التي ترتّب استدلال النموذج في صيغة واضحة، فيتمكن العملاء من التحقق من المهام المعقدة والتأكد من توافقها مع منطق العمل.
أفضل الممارسات واعتبارات مهمة
تصميم خوادم MCP فعّالة
عند بناء خوادم MCP، ركّز على أن تكون معيارية وقابلة لإعادة الاستخدام:
- أتح قدرات مركّزة: كل خادم يختص بمجال محدد
- طبّق تحققاً سليماً: افحص أحجام الملفات وأنواعها والصلاحيات قبل المعالجة
- أضف سجلات شاملة: لتمكين المراقبة وتتبع الأخطاء في الإنتاج
- استخدم تلميحات الأنواع: تحوّلها FastMCP تلقائياً إلى تعريفات للأدوات
تصميم أنظمة متعددة الوكلاء
يتطلب التصميم الفعّال للأنظمة متعددة الوكلاء تنسيقاً دقيقاً:
- حدّد أدواراً واضحة: لكل وكيل خبرة متخصصة
- أرسِ أنماط التواصل: باستخدام حالة مشتركة أو التفويض أو الاستدعاء الصريح
- وازن بين التدفقات التي يقودها النموذج والتدفقات المحددة مسبقاً: تنسيق النموذج اللغوي يعطي مرونة، وسير العمل المحدد يعطي دقة
- خطط للعمليات الطويلة: صمّم لمهام قد تحتاج ساعات أو أياماً
الأمان والتحكم في الوصول
تتطلب عمليات النشر في المؤسسات أماناً قوياً:
- اشترط المصادقة: استخدم –no-allow-unauthenticated عند النشر على Cloud Run
- طبّق وصولاً قائماً على IAM: استفد من دور Cloud Run Invoker لوصول الفريق
- تحقق من المدخلات جيداً: لمنع هجمات تجاوز المسارات والحقن
- استخدم حسابات الخدمة: وامنحها أقل الصلاحيات اللازمة
مستقبل منظومات الوكلاء
يمثل التقاء MCP وADK وA2A تحولاً مهماً نحو جعل الاتصال بين الوكلاء أمراً معيارياً ومتاحاً للجميع. فكما أصبح TCP/IP وHTTP بروتوكولات أساسية للإنترنت، تتجه هذه المعايير لتكون العمود الفقري لأنظمة الذكاء الاصطناعي التعاونية.
ويفيد المتبنون الأوائل بنتائج لافتة: زيادة في الإنتاجية بنسبة 66%، وتوفير في التكاليف بنسبة 57%، وتحسن في تجربة العملاء بنسبة 54%. ومع نضج المنظومة، يمكننا أن نتوقع:
- دعماً أوسع للأطر: تكاملاً مع LangChain وCrewAI وأدوات التنسيق الأخرى
- منظومات أدوات أغنى: مكتبات متنامية من خوادم MCP ووكلاء ADK الجاهزة
- حلولاً خاصة بالقطاعات: وكلاء متخصصين في قطاعات محددة يعتمدون على البروتوكولات المعيارية
- تعاوناً بين المؤسسات: تواصلاً آمناً بين وكلاء شركات مختلفة
الخلاصة
تقدّم MCP وADK وA2A معاً منظومة متكاملة لبناء أنظمة وكلاء الذكاء الاصطناعي الحديثة. يحل MCP مشكلة الاتصال بالبيانات، ويوفر ADK تنسيقاً جاهزاً للإنتاج، ويتيح A2A التعاون بين الوكلاء على نطاق واسع. هذا الثلاثي ينقل تطوير الذكاء الاصطناعي من تجارب معزولة إلى أنظمة متوافقة بمستوى المؤسسات.
ويُظهر درس وكيل العملات أن البدء سهل جداً: يستطيع المطورون الانتقال من الصفر إلى نظام وكلاء تعاوني منشور خلال ساعات قليلة. ومع انتشار هذه المعايير ونضج منظومتها، ندخل مرحلة يستطيع فيها وكلاء الذكاء الاصطناعي العمل معاً فعلاً عبر الحدود، فيفتحون قدرات أتمتة وقيمة تجارية غير مسبوقة.
وللمطورين الذين يريدون مواكبة التطور السريع في الذكاء الاصطناعي، لم يعد فهم هذه البروتوكولات وتطبيقها خياراً إضافياً، بل صار ضرورة لبناء الجيل القادم من التطبيقات الذكية التعاونية.
النسخة الإنجليزية منشورة أيضاً على Medium.
