‏MCP (Model Context Protocol) مواصفة مفتوحة تتيح لتطبيقات الذكاء الاصطناعي (Claude Code وChatGPT وVS Code وغيرها) استخدام الأدوات والبيانات الخارجية (GitHub وقواعد البيانات والأنظمة الداخلية وغيرها) بطريقة واحدة موحّدة. إذا بنيت أداة مرة واحدة على هيئة "خادم MCP"، أمكن لكل تطبيق يدعم MCP أن يستخدمها. ولأنه يشبه كابلًا واحدًا يناسب أي جهاز، يُسمّى "‏USB-C الذكاء الاصطناعي".

أصدرت Anthropic المواصفة في 25 نوفمبر 2024، ثم تبرّعت بها في ديسمبر 2025 إلى Agentic AI Foundation (AAIF) التابعة لـ Linux Foundation. الإصدار الحالي من المواصفة هو 2026-07-28، ومعه أصبح MCP عديم الحالة (stateless)، فلم تعد هناك "جلسة" لكل اتصال. يشرح هذا المقال كيف يعمل MCP، وما الذي تغيّر في المواصفة الحالية، وكيف تضيف الخوادم في التطبيقات الرئيسية، وتجربة عملية في 10 دقائق، وقواعد الأمان الرسمية، استنادًا إلى مواصفة MCP والوثائق الرسمية لكل شركة (تحققنا منها في 12 نوفمبر 2026).

المضيف (تطبيق الذكاء الاصطناعي)

Claude Code وChatGPT وVS Code وغيرها

يتصل كل عميل فيه بخادم واحد ويتلقى قائمة الأدوات

⇄JSON-RPC

خادم MCP

GitHub وNotion وخادمك الخاص

يقدّم ثلاثة أنواع: Tools وResources وPrompts

⇄

الأدوات والبيانات

واجهات API وقواعد بيانات وملفات

ما يقرؤه الخادم ويكتبه فعلًا

داخل جهازك تكون طريقة النقل stdio، وعبر الشبكة Streamable HTTP. يقرّر الذكاء الاصطناعي أي أداة يستخدم ومتى، ويحصل المضيف على موافقة المستخدم قبل استدعائها.

1. ما هو MCP؟ اتفاق مشترك بين الذكاء الاصطناعي والأدوات

قبل MCP كان كل تطبيق ذكاء اصطناعي يتصل بالأدوات بطريقته الخاصة. ولاستخدام أداة "انشر في Slack" في ثلاثة تطبيقات كان عليك بناؤها ثلاث مرات. حوّل MCP طبقة الاتصال هذه إلى مواصفة واحدة. مع M تطبيقًا وN أداة، يصبح ما كان M×N عملية ربط مجرد M+N تنفيذًا. وتذكر المواصفة نفسها أنها استلهمت Language Server Protocol (LSP) الذي وحّد دعم لغات البرمجة عبر المحررات.

الأشياء الثلاثة التي يمكن للخادم تقديمها

الميزةما هيأمثلة
Tools (الأدوات)دوال يستدعيها الذكاء الاصطناعيإنشاء issue، إرجاع كمية المخزون، الاستعلام من قاعدة بيانات
Resources (الموارد)مستندات وبيانات يقرؤها المستخدم أو الذكاء الاصطناعيمحتوى الملفات، مخططات الجداول، المستندات الداخلية
Prompts (القوالب)قوالب تعليمات يختارها المستخدم ويشغّلهاإجراء "راجِع طلب الدمج هذا"

وفي الاتجاه المعاكس، يمكن للعميل (جهة التطبيق) أن يقدّم للخوادم Elicitation، وهي آلية تسمح للخادم بأن يطلب من المستخدم معلومات إضافية. أما Roots (إخبار الخادم بالمجلدات التي يُسمح له بالعمل فيها) وSampling (طلب الخادم من نموذج التطبيق توليد نص)، الموجودتان في الإصدارات السابقة، فقد أصبحتا مهملتين (deprecated) في الإصدار الحالي (القسم 4).

2. ما الذي حدث في العامين منذ الإطلاق

تُسمّى إصدارات مواصفة MCP باسم "آخر تاريخ أُدخلت فيه تغييرات غير متوافقة مع الإصدارات السابقة". وهذه أبرز الأحداث إلى جانب تلك الإصدارات.

  • 25 نوفمبر 2024أصدرت Anthropic المواصفة وحزم SDK. وكان الإصدار الأول 2024-11-05.
  • 26 مارس 2025أضاف الإصدار 2025-03-26 طريقة النقل Streamable HTTP للخوادم البعيدة وتفويضًا قائمًا على OAuth، وأهمل طريقة النقل القديمة HTTP+SSE. وفي اليوم نفسه (بتوقيت الولايات المتحدة) أعلن Sam Altman من OpenAI أن OpenAI ستدعم MCP في منتجاتها (بحسب TechCrunch).
  • 18 يونيو 2025أضاف الإصدار 2025-06-18 مخرجات منظّمة (محدّدة الأنواع) للأدوات وElicitation.
  • 25 نوفمبر 2025أضاف الإصدار 2025-11-25 ميزة Tasks للمهام الطويلة (تجريبية) وClient ID Metadata Documents التي تتيح للعميل تعريف نفسه عبر عنوان URL.
  • 9 ديسمبر 2025تبرّعت Anthropic بـ MCP إلى AAIF التي شاركت في تأسيسها Anthropic وBlock وOpenAI وتدعمها Google وMicrosoft وAWS وCloudflare وBloomberg. وذكر إعلان ذلك اليوم أكثر من 10,000 خادم MCP عام نشط وأكثر من 97 مليون تنزيل شهري لحزم SDK الخاصة بـ Python وTypeScript، وأورد ChatGPT وCursor وGemini وMicrosoft Copilot وVS Code ضمن المنتجات التي اعتمدته.
  • 28 يوليو 2026ألغى الإصدار الحالي 2026-07-28 المصافحة (initialize) والجلسات وجعل MCP عديم الحالة (القسم 4).

انتشر MCP لأن المواصفة طبقة رقيقة فوق JSON-RPC 2.0 وJSON Schema يسهل تنفيذها، ولأنها صدرت مبكرًا مواصفةً مفتوحة، ولأنها بعد التبرّع لم تعد ملكًا لشركة واحدة. وبما أن الشركات المتنافسة تعتمد المواصفة نفسها، يكفي من يبني الأدوات أن يبنيها مرة واحدة.

3. كيف يعمل: المضيف والعميل والخادم وطريقتا نقل

في المواصفة ثلاثة أدوار. المضيف هو تطبيق الذكاء الاصطناعي الذي يستخدمه الشخص، والعميل هو الموصّل الذي يشغّله المضيف لكل خادم (عميل واحد لكل خادم)، والخادم هو الجهة التي تقدّم الأدوات والبيانات. تُرسل الرسائل بصيغة JSON-RPC 2.0: يتلقى العميل قائمة الأدوات (tools/list)، ويستدعي الأداة التي اختارها الذكاء الاصطناعي مع وسائطها (tools/call)، ثم يتلقى النتيجة.

طريقة النقلأين تعملمناسبة لـالمصادقة
stdioجهازك نفسه (يشغّل التطبيق الخادم كعملية ويتواصل عبر الإدخال والإخراج القياسيين)الملفات، Git المحلي، قاعدة بيانات محليةلا تُستخدم آلية التفويض في المواصفة، وتُمرَّر بيانات الاعتماد عبر متغيرات البيئة ونحوها
Streamable HTTPجهة الخدمة (الاتصال عبر عنوان URL)خدمات مثل GitHub وNotion، وخوادم مشتركة داخل الشركةالتفويض (Authorization) في المواصفة القائم على OAuth 2.1
HTTP+SSEطريقة النقل البعيدة السابقةلا تُستخدم في المشاريع الجديدةمهملة (انتقل إلى Streamable HTTP)

4. ما الذي تغيّر في المواصفة الحالية 2026-07-28

بحسب صفحة إصدارات المواصفة، الإصدار الحالي (Current) هو 2026-07-28. ومقارنة بالإصدار السابق 2025-11-25 تغيّرت طريقة الاتصال كثيرًا. وهذه أبرز الفروق بحسب سجل التغييرات:

البندحتى 2025-11-252026-07-28
بدء الاتصالتحدّد مصافحة initialize الإصدار والقدراتلا مصافحة، ويحمل كل طلب الإصدار والقدرات في _meta، ويعلن الخادم إصداراته المدعومة عبر server/discover
الجلساتتستخدم Streamable HTTP المعرّف Mcp-Session-Idلا جلسات على مستوى البروتوكول، وتُمرَّر الحالة الممتدة عبر عدة استدعاءات كمعرّف يصدره الخادم ضمن وسائط الأداة
إشعارات التغييرتدفق HTTP GET وresources/subscribeجُمعت في تدفق واحد subscriptions/listen
الطلبات من الخادميرسل الخادم طلبات (sampling/createMessage وelicitation/create وغيرها)يعيد الخادم نتيجة "مطلوب إدخال" (input_required) ويعيد العميل إرسال الطلب نفسه مع الإجابات (Multi Round-Trip Requests)
انقطاع التدفقإعادة التسليم عبر معرّفات أحداث SSEلا استئناف، ويعيد العميل إرسال الطلب بمعرّف جديد
المهام الطويلة (Tasks)ميزة تجريبية في النواةنُقلت إلى امتداد رسمي (io.modelcontextprotocol/tasks)
المهملHTTP+SSERoots وSampling وLogging وHTTP+SSE والتسجيل الديناميكي للعملاء في OAuth (يحل محله Client ID Metadata Documents)

بموجب سياسة دورة حياة الميزات في المواصفة، تبقى الميزات المهملة اثني عشر شهرًا على الأقل قبل أن يجوز حذفها (أو 90 يومًا على الأقل عند وجود خطر أمني قائم، كثغرة منشورة أو استغلال فعلي لا يمكن تداركه داخل البروتوكول نفسه). وتصف المواصفة أيضًا كيفية الاتصال، بتوافق مع الإصدارات السابقة، بالأطراف التي ما زالت تستخدم مصافحة 2025-11-25 وما قبلها.

ماذا يعني ذلك للمستخدمين والمطوّرين

  • المستخدمون

    إذا كان تطبيقك يدعمه، فلا شيء عليك فعله

    يدعم Claude Code الإصدار 2026-07-28 عبر "v2 runtime" المبني على MCP TypeScript SDK 2.0. فهو يسأل كل خادم إن كان يدعم الإصدار الجديد؛ فإن كان يدعمه استخدمه، وإلا اتصل بالمصافحة السابقة. ويكون v2 runtime هو الافتراضي بدءًا من v2.1.232 في الجلسات التي تجلب feature flags، وبدءًا من v2.1.274 في الجلسات التي لا تجلبها. وللبقاء على البروتوكول القديم اضبط متغير البيئة MCP_PROTOCOL_NEGOTIATION=legacy (وثائق MCP في Claude Code).

  • المطوّرون

    انتقل إلى حزم SDK من السلسلة 2.x ولا تعتمد الميزات المهملة

    حزمة Python SDK في السلسلة 2.x (mcp 2.3.0 على PyPI، صدرت في 2 أكتوبر 2026)، وتدعم السلسلة 2.x من TypeScript SDK الإصدار 2026-07-28. وفي السلسلة 2.x انقسمت حزم TypeScript إلى @modelcontextprotocol/server و@modelcontextprotocol/client (الإصدار 2.4.0 على npm)، بينما بقيت الحزمة السابقة @modelcontextprotocol/sdk على السلسلة 1.x (الإصدار 1.32.2). في الخوادم الجديدة مرّر المجلدات عبر وسائط الأداة أو الإعدادات بدل Roots، وسجّل في مخرج الأخطاء القياسي أو OpenTelemetry بدل Logging. وللحالة الممتدة عبر عدة استدعاءات، أصدر معرّفات لا يمكن تخمينها واربطها بالمستخدم (القسم 9).

  • الامتدادات

    توجد الآن "امتدادات" اختيارية خارج النواة

    تبرز صفحة النظرة العامة للمواصفة امتدادات أهمها Tasks للمهام الطويلة، وMCP Apps لعرض واجهات مثل المخططات والنماذج داخل المحادثة، وSkills over MCP لتوزيع تعليمات الوكلاء عبر MCP (قيد النقاش في مجموعة عمل). ولا يُستخدم الامتداد إلا إذا دعمه العميل والخادم معًا.

5. كيف تضيف خادمًا في التطبيقات الرئيسية وأين تُحفظ الإعدادات

يُضاف خادم MCP نفسه بطريقة مختلفة، ويُحفظ في ملف مختلف، في كل تطبيق. هذا ما تقوله الوثائق الرسمية لكل شركة (تحققنا منها في 12 نوفمبر 2026).

التطبيقطريقة الإضافةمكان الإعداداتانتبه إلى
Claude Codeclaude mcp addالملف ~/.claude.json للاستخدام الشخصي، و.mcp.json في جذر المشروع لمشاركته مع الفريقتُعرض حالة الاتصال عبر /mcp
Claude Desktopتعديل ملف الإعداداتالملف claude_desktop_config.json (في macOS داخل ~/Library/Application Support/Claude/، وفي Windows داخل %APPDATA%\Claude\، وفي Linux داخل ~/.config/Claude/)أعد تشغيل التطبيق بعد التعديل (الدليل الرسمي)
Codex (CLI)codex mcp addالجدول [mcp_servers.name] في ~/.codex/config.toml (ويمكن للمشاريع الموثوقة استخدام .codex/config.toml أيضًا)لخوادم OAuth استخدم codex mcp login name
Gemini CLIgemini mcp addالمفتاح mcpServers في settings.json (داخل .gemini/ أو ~/.gemini/)الخيار trust: true يتخطى كل تأكيدات الاستدعاء، فاستخدمه فقط مع خوادم تتحكم فيها (وتنبّه الصفحة الرسمية في أعلاها إلى أن Gemini CLI استُبدل بـ Antigravity CLI في 18 يونيو 2026 لمستخدمي الفئة المجانية وGoogle One)
VS Codeالأمر "MCP: Add Server" في لوحة الأوامراتبع المعالج واختر مساحة العمل أو المستوى العامتحذّر الوثائق من أن الخوادم المحلية تشغّل شيفرة على جهازك
ChatGPTالخيار "Add custom MCP server" في Plugins (لا حاجة إلى تفعيل وضع المطوّر أولًا)الضبط من واجهة مساحة العمل (نقطة نهاية HTTPS عامة أو Secure MCP Tunnel)لخطط Business وEnterprise وEdu في نسخة الويب فقط (في Business يتصل المسؤولون والمالكون فقط، وفي Enterprise وEdu يتصل أيضًا الأعضاء الممنوحون الصلاحية، والنشر لمساحة العمل للمسؤولين والمالكين فقط) (مساعدة OpenAI)

المصادر: وثائق MCP في Claude Code وCodex وGemini CLI وVS Code. تظهر الموصّلات (خوادم MCP البعيدة) التي تضيفها في claude.ai أيضًا في /mcp داخل Claude Code، لكنها لا تُحمَّل إذا كنت مسجّلًا الدخول بمفتاح API (ماذا تفعل عندما تتوقف الموصّلات).

6. خوادم يمكنك استخدامها اليوم وأين تجد غيرها

الخادمماذا يفعلاستخدام نموذجي
filesystem (خادم مرجعي)يقرأ الملفات ويكتبها داخل المجلدات المسموح بها فقطجعل الذكاء الاصطناعي يقرأ المستندات أو الشيفرة
fetch (خادم مرجعي)يجلب صفحة ويب ويحوّلها إلى صيغة يسهل على الذكاء الاصطناعي قراءتهاتمرير عنوان URL والحصول على ملخّص
git (خادم مرجعي)يقرأ سجل مستودع Git محلي ويتعامل معهطلب شرح التغييرات من السجل
GitHub (خادم بعيد تديره GitHub)عمليات issues وطلبات الدمج والمستودعاتمراجعة طلبات الدمج، وتحويل الأخطاء المكتشفة إلى issues
Notion (خادم بعيد تديره Notion)يتعامل مع مساحة عمل Notionالبحث في المستندات الداخلية وتلخيصها

للبحث عن خوادم، ابدأ من MCP Registry، قائمة الخوادم العامة، ومن Anthropic Directory الذي يضم الموصّلات التي راجعتها Anthropic. ولم يعد المستودع الرسمي يضم سوى سبعة خوادم مرجعية (Everything وFetch وFilesystem وGit وMemory وSequential Thinking وTime)، ويصفها ملف README بأنها أمثلة تعليمية لمن يبنون خوادمهم، ويطلب تقييم متطلبات الأمان بنفسك. أما خوادم GitHub وPostgreSQL وSlack وغيرها التي كانت هناك فقد انتقلت إلى servers-archived (صار خادم GitHub تديره GitHub نفسها، وتتولى Zencoder صيانة خادم Slack). لا تتّبع الشروح القديمة حرفيًا.

7. جرّبه في 10 دقائق: دع Claude Code يقرأ مجلدًا

باستخدام خادم filesystem الرسمي، تسمح لـ Claude Code بقراءة مجلد واحد تختاره فقط. يُفترض أن Node.js (npx) مثبّت لديك.

  1. أنشئ مجلد اختبار. أنشئ مجلدًا فارغًا لا يحتوي شيئًا مهمًا (مثل ~/mcp-test) وضع فيه ملف README.md قصيرًا. لن يستطيع الخادم الوصول إلا إلى هذا المجلد.
  2. أضف الخادم. في macOS وLinux نفّذ الأمر التالي. كل ما يأتي بعد -- يُمرَّر كما هو أمرَ تشغيلٍ للخادم.
    claude mcp add --transport stdio files -- npx -y @modelcontextprotocol/server-filesystem ~/mcp-test
    وفي Windows الأصلي (ليس WSL) تتم الإضافة بالطريقة نفسها، مع كتابة المجلد بصيغة C:\mcp-test. وإذا لم يبدأ npx، فغلّفه بالأمر cmd /c كما يوضح ملف README للخادم المرجعي لنظام Windows.
    claude mcp add --transport stdio files -- cmd /c npx -y @modelcontextprotocol/server-filesystem C:\mcp-test
    عدّل مسار المجلد بحسب بيئتك.
  3. تحقّق من الاتصال. شغّل Claude Code وافتح /mcp وتأكد أن files في حالة connected. وإن ظهرت failed فراجع كيف تصلح أخطاء اتصال خادم MCP.
  4. استخدمه. اطلب: "لخّص ملف README في mcp-test". يطلب Claude Code الإذن قبل استخدام الأداة؛ راجع اسم الأداة ووسائطها قبل السماح.
  5. نظّف. بعد الانتهاء أزله بالأمر claude mcp remove files.

تُضاف الخوادم البعيدة عبر عنوان URL (مثل claude mcp add --transport http notion https://mcp.notion.com/mcp)، ثم تُكمل المصادقة من /mcp. هناك ثلاثة نطاقات: الافتراضي local لك وحدك في ذلك المشروع، و--scope project يكتب في .mcp.json بجذر المشروع للمشاركة مع الفريق، و--scope user يجعله متاحًا في كل مشاريعك. أبقِ في local الخوادم التي تحمل بيانات اعتماد لا تريدها في نظام التحكم بالإصدارات.

8. ابنِ خادم MCP خاصًا بك: مثال مصغّر

استخدام الخوادم مفيد بحد ذاته، لكن قيمة MCP الحقيقية تظهر حين تفتح أدواتك الداخلية الخاصة للذكاء الاصطناعي. مع Python SDK (السلسلة 2.x) تكفي نحو اثني عشر سطرًا. المثال خادم "يعيد كمية المخزون الحالية".

ثبّت الـ SDK بالأمر uv add "mcp[cli]" (أو pip install "mcp[cli]"). تضيف الإضافة [cli] الأمرين mcp dev وmcp run المستخدمين أدناه.

from mcp.server import MCPServer

mcp = MCPServer("inventory-server")

@mcp.tool()
def get_stock(sku: str) -> int:
    """Return the current stock level for a SKU"""
    # Query your internal inventory DB here
    return query_internal_db(sku)

if __name__ == "__main__":
    mcp.run(transport="stdio")
  • اختبر

    الأمر uv run mcp dev server.py الوارد في README الخاص بالـ SDK يفتح واجهة الاختبار الرسمية (MCP Inspector) لتفحص قائمة الأدوات ونتائج الاستدعاءات دون ذكاء اصطناعي.

  • أضف

    في Claude Code: claude mcp add --transport stdio inventory -- python server.py. يصبح نص التوثيق (docstring) للدالة هو وصف الأداة الذي يراه الذكاء الاصطناعي، فاكتب بوضوح ماذا تعيد.

  • شارك

    لمشاركته داخل الشركة، يحوّله الأمر uv run mcp run server.py --transport streamable-http إلى خادم HTTP. وعندها التزم بقواعد التفويض والرموز في القسم 9.

حزم SDK الرسمية هي TypeScript وPython وC# وGo وRust وRuby (Tier 1)، وJava (Tier 2)، وSwift وPHP وKotlin (Tier 3). يعكس الـ Tier مدى اكتمال الميزات والتزام الصيانة، وكل SDK يتبنّى الإصدارات الجديدة من المواصفة وفق جدوله الخاص.

9. الأمان: أهم ما في Security Best Practices الرسمية

تعامل المواصفة الأدوات على أنها "تنفيذ شيفرة اعتباطية"، وتنص على أن المضيف يجب أن يحصل على موافقة صريحة من المستخدم قبل استدعاء أي أداة. وتُعدّ أوصاف الأدوات وتعليقاتها التوضيحية (annotations) غير موثوقة ما لم تأتِ من خادم موثوق. وفوق ذلك تسرد Security Best Practices الرسمية هجمات خاصة بـ MCP وطرق التصدي لها.

الهجومماذا يحدثما تشترطه المواصفةمن يعنيه
اختراق خادم MCP محليأمر تشغيل مدسوس في الإعدادات ينفّذ أوامر اعتباطية، مثل إرسال مفاتيح SSH الخاصة بك إلى الخارجعلى العملاء الذين يتيحون الإعداد بنقرة واحدة عرض الأمر كاملًا دون اقتطاع والحصول على الموافقة (MUST)، وينبغي تشغيل الخوادم في بيئة معزولة بأدنى الصلاحيات (SHOULD)المستخدمون، مطوّرو التطبيقات
تمرير الرموز (Token passthrough)يقبل خادم رمزًا صادرًا لخدمة أخرى ويمرّره إلى واجهة API لاحقةعدم قبول رموز لم تصدر لخادم MCP نفسه (MUST NOT)مطوّرو الخوادم
Confused deputyيتخطى خادم وسيط لواجهة API خارجية شاشة الموافقة فيُسرق رمز تفويضالحصول على موافقة لكل عميل قبل تفويض الطرف الخارجي (MUST)، ومطابقة redirect_uri مطابقة تامةمطوّرو الخوادم الوسيطة
SSRFيضع خادم خبيث عناوين داخلية (مثل 169.254.169.254) في عناوين OAuth ليجعل العميل يجلبهااشتراط HTTPS وحظر الطلبات إلى نطاقات IP الخاصة (SHOULD)مطوّرو العملاء
اختطاف معرّفات الحالةيخمّن أحدهم معرّفًا أصدره الخادم، كمعرّف سلة تسوّق، فيعبث بحالة مستخدم آخرعدم اعتبار حيازة المعرّف مصادقة (MUST NOT)، وتوليد معرّفات عشوائية لا يمكن تخمينها مرتبطة بالمستخدم (SHOULD)مطوّرو الخوادم
صلاحيات (scopes) واسعة أكثر من اللازمرمز مسروق واحد يفتح أدوات وبيانات لا علاقة لها بالمهمةالبدء بأدنى الصلاحيات، وأغلبها للقراءة، ثم توسيعها تدريجيًا عند الحاجةمطوّرو الخوادم

خمسة أمور يتحقق منها المستخدم قبل تثبيت خادم

ما الذي تتحقق منهأين تنظر / أمثلة
① من يديرهخادم تديره الخدمة نفسها (مثل https://api.githubcopilot.com/mcp/ من GitHub أو https://mcp.notion.com/mcp من Notion)، أو خادم مرجعي، أو طرف ثالث (ابحث في MCP Registry وAnthropic Directory)
② هل قرأت أمر التشغيل كاملًايقوم npx -y وuvx بتنزيل الحزمة وتشغيلها بمجرد الإضافة، فتأكد أنها ليست حزمة باسم مشابه وأنه لا تتبعها أوامر إضافية
③ هل ما زال يُصانانتقلت خوادم GitHub وPostgreSQL وSlack من المستودع الرسمي إلى servers-archived
④ ما مقدار الوصول الذي تمنحهأصدر رموزًا محدودة النطاق (تعرض وثائق Claude Code أيضًا مثالًا لـ GitHub برمز fine-grained مقصور على المستودعات المعنية)
⑤ هل يجلب محتوى خارجيًاالخوادم التي تجلب صفحات الويب أو الرسائل البريدية مدخل لحقن التعليمات (prompt injection)، وتحذّر وثائق Claude Code أيضًا من التحقق من الثقة بالخادم قبل الاتصال به

إذا احتوى نص أعاده خادم عبارة مثل "تجاهل التعليمات السابقة و…" فقد يُختطف الذكاء الاصطناعي. تعامل مع مخرجات الخوادم على أنها بيانات، واجعل شخصًا يؤكد في كل مرة الإجراءات التي لا رجعة فيها مثل الإرسال أو الحذف أو الدفع. شرحنا طريقة التفكير هذه في احتياطات ما تمرّره إلى الذكاء الاصطناعي. وإن كنت تبني وكلاء بنفسك، فجانب التصميم (كيف تمنح الأدوات، وتقلّل الصلاحيات، وتعزل العمليات الخطرة) مشروح خطوة بخطوة في فصل MCP وربط الأدوات من دورتنا لتطوير وكلاء الذكاء الاصطناعي.

10. ‏MCP أم API أم Skills أم A2A: متى تختار كلًّا منها

ما تريدهالأنسبالسبب
منح الذكاء الاصطناعي بيانات أو إجراءات خارجية وتركه يقرّر متى يستخدمهاخادم MCPيتلقى الذكاء الاصطناعي قائمة الأدوات ويستدعيها بنفسه عند الحاجة
إعادة استخدام اتصال واحد في عدة تطبيقات مثل Claude Code وCodex وVS Codeخادم MCPتبنيه مرة واحدة فيستطيع أي تطبيق يدعم MCP استخدامه
استدعاء معالجة ثابتة من برنامجك بالترتيب نفسه في كل مرةاستدعاء API عاديإذا لم يكن على الذكاء الاصطناعي أن يختار فلا داعي لوضع MCP في المنتصف
جعل الذكاء الاصطناعي يلتزم بإجراءات أو قواعد كتابة (دون اتصال خارجي)Skillsما تحتاجه دليل إجراءات لا اتصال
تسليم عمل إلى وكيل ذكاء اصطناعي بناه فريق آخر أو شركة أخرىA2Aالطرف الآخر وكيل لا أداة (إذا كان MCP هو الصلة "العمودية" بالأدوات، فإن A2A هو الصلة "الأفقية" بين الوكلاء)

هذه الأربعة لا يُلغي بعضها بعضًا. مثلًا: اجلب بيانات حديثة عبر MCP، ورتّبها بإجراء من Skill، ثم سلّمها إلى وكيل قسم آخر عبر A2A. ويمكن أيضًا تضمين خوادم MCP في إضافات Claude Code وتوزيعها على الفريق مع المهارات والخطافات.

11. لا تُكثر من الإضافة ولا من البناء

  • السياق

    نتائج الأدوات تستهلك السياق

    يستخدم Claude Code ميزة tool search افتراضيًا: عند بدء الجلسة يحمّل أسماء الأدوات وتعليمات الخوادم فقط، ويحمّل التعريفات عند الحاجة. ومع ذلك تستهلك النتائج السياق: يظهر تحذير إذا تجاوز مخرج واحد 10,000 رمز، والحد الافتراضي 25,000 رمز (يمكن تغييره عبر MAX_MCP_OUTPUT_TOKENS).

  • التصميم

    لا تحوّل كل شيء إلى MCP

    كلما زادت الأدوات التي يستدعيها طلب واحد زاد الوقت والتكلفة. وإذا لم يكن على الذكاء الاصطناعي أن يختار، فالبرنامج العادي أو استدعاء API أسرع وأكثر موثوقية.

  • المواصفة

    ابنِ على أن المواصفة ستتغير

    بعض الإصدارات، مثل 2026-07-28، تغيّر طريقة الاتصال نفسها. تبقى الميزات المهملة عادةً اثني عشر شهرًا على الأقل (و90 يومًا على الأقل عند خطر أمني قائم)، لكن راجع خوادمك مع تحديثات حزم SDK.

  • الدخل

    هل يمكن أن يدرّ خادمك دخلًا؟

    ليس في MCP نفسه آلية للدفع. قارنّا قنوات البيع والعمولات في هل يمكن تحقيق دخل من خوادم MCP؟

الخلاصة

  • ‏MCP مواصفة مفتوحة تربط تطبيقات الذكاء الاصطناعي بالأدوات والبيانات الخارجية. أصدرتها Anthropic في نوفمبر 2024 وتبرّعت بها في ديسمبر 2025 إلى AAIF التابعة لـ Linux Foundation.
  • الأدوار هي المضيف والعميل والخادم. تقدّم الخوادم Tools وResources وPrompts عبر stdio أو Streamable HTTP.
  • الإصدار الحالي هو 2026-07-28. ألغى المصافحة والجلسات فصار عديم الحالة، وأهمل Roots وSampling وLogging.
  • يضيف Claude Code وCodex وGemini CLI الخوادم بأمر mcp add، وClaude Desktop عبر ملف إعدادات، وVS Code من لوحة الأوامر.
  • ابدأ بتجربة خادم filesystem المرجعي على مجلد فارغ، وتحقّق من الاتصال عبر /mcp.
  • يكفي نحو اثني عشر سطرًا لخادم خاص بك مع Python SDK. اختبره في MCP Inspector قبل إضافته.
  • تشترط Security Best Practices الرسمية عرض أمر التشغيل كاملًا والحصول على الموافقة، ورفض الرموز التي لم تصدر للخادم، ومعرّفات لا يمكن تخمينها، وأدنى الصلاحيات.

الأسئلة الشائعة

س1. هل يلزم تعلّم خاص لاستخدام MCP؟

للاستخدام فقط لا. يكفي في Claude Code سطر واحد claude mcp add، وفي Claude Desktop بضعة أسطر في ملف الإعدادات. وحتى عند بناء خادمك، تتولى حزمة SDK تفاصيل JSON-RPC، فيمكنك البدء بكتابة دالة وإضافة مزخرف (decorator) إليها.

س2. هل يمكن استخدام MCP في ChatGPT؟

نعم. بحسب صفحة مساعدة OpenAI التي تحققنا منها في 12 نوفمبر 2026، يتاح ربط خوادم MCP الخاصة بك بـ ChatGPT (دعم MCP الكامل بما فيه عمليات الكتابة) في ChatGPT Business وEnterprise وEdu على الويب. من Plugins تختار "Add custom MCP server" وتضيف نقطة نهاية HTTPS العامة للخادم (أو Secure MCP Tunnel) ثم تؤكد تحذير المخاطر، ولا حاجة إلى تفعيل وضع المطوّر أولًا. في Business لا يربط الخوادم إلا المسؤولون والمالكون، وفي Enterprise وEdu يمكن للمسؤولين منح هذه الصلاحية لأعضاء محددين عبر التحكم في الوصول القائم على الأدوار (RBAC). ولا ينشر لمساحة العمل إلا المسؤولون والمالكون، ولا يمكن الربط من الهاتف المحمول. التفاصيل في مساعدة OpenAI.

س3. هل ستتوقف الخوادم القديمة عن العمل مع الإصدار 2026-07-28؟

ليس فورًا. تتضمن المواصفة إجراءً متوافقًا للاتصال بالأطراف التي تستخدم مصافحة 2025-11-25 وما قبلها، ويتصل Claude Code بالخوادم التي لا تدعم الإصدار الجديد عبر البروتوكول السابق. كما تبقى الميزات المهملة في المواصفة عادةً اثني عشر شهرًا على الأقل (و90 يومًا على الأقل فقط عند خطر أمني قائم). وعند نقل خوادمك إلى SDK من السلسلة 2.x، تحقّق مما إذا كانت تعتمد على Roots أو Sampling أو Logging.

س4. هل فتح قاعدة بيانات داخلية للذكاء الاصطناعي عبر MCP آمن؟

يتوقف ذلك على تصميم الصلاحيات. إذا استخدمت اتصالًا للقراءة فقط ولم تقدّم كأدوات إلا استعلامات ثابتة ذات وسائط مُتحقَّق منها بصرامة، فهذا أكثر أمانًا بكثير من ترك الذكاء الاصطناعي يكتب SQL حرًّا. أما أداة "تستطيع تشغيل أي SQL" فخطيرة. وإذا شاركته عبر HTTP، فاقبل فقط الرموز الصادرة لخادمك، وأبقِ الصلاحيات في حدها الأدنى، واحتفظ بالسجلات كما في القسم 9.

س5. هل MCP واستدعاء الدوال (function calling) شيء واحد؟

هما في طبقتين مختلفتين. استدعاء الدوال هو الصيغة داخل واجهة API للنموذج للتعبير عن "أريد استدعاء هذه الدالة بهذه الوسائط"، أما MCP فهو اتفاق التواصل بين التطبيق والخوادم الخارجية. يمرّر التطبيق الداعم لـ MCP قائمة الأدوات التي تلقاها من الخوادم إلى النموذج بصيغة استدعاء الأدوات الخاصة به، ثم يرسل الاستدعاء الذي اختاره النموذج إلى الخادم عبر MCP.