Sat Jun 27 2026 20:00:00 GMT-0400 (北美东部夏令时间)
بروتوكول سياق النموذج (MCP): كيفية ربط الذكاء الاصطناعي بأدواتك
MCP هو المعيار المفتوح من Anthropic لربط مساعدي الذكاء الاصطناعي بمصادر البيانات والأدوات. تعرّف على نموذج العميل والخادم، والنقل، والقدرات، وكيفية تشغيل الخوادم.

آخر تحديث: June 28, 2026
MCP — أو بروتوكول سياق النموذج (Model Context Protocol) — هو معيار مفتوح أصدرته Anthropic في أواخر عام 2024 لربط مساعدي الذكاء الاصطناعي والوكلاء بمصادر البيانات والأدوات الخارجية. فبدلاً من كتابة تكامل مخصص لكل نموذج ولكل أداة، ما عليك سوى تعريض خادم MCP واحد ويمكن لأي عميل متوافق مع MCP استخدامه. لقد قمت بتوصيل خادم نظام ملفات وخادم GitHub بـ Claude Code الأسبوع الماضي وكان الفرق فيما يمكن للوكيل فعله بالفعل فوريًا. يغطي هذا المنشور ما هو MCP، وكيف يعمل نموذج العميل-الخادم، وأنواع القدرات الأساسية، وكيفية تشغيل الخوادم في إعدادك الخاص.
إجابة سريعة: ما هو MCP؟
MCP هو بروتوكول يعتمد على JSON-RPC 2.0 يوحّد الاتصال بين تطبيق مضيف للذكاء الاصطناعي (وهو العميل الخاص بـ MCP، مثل Claude Desktop أو Claude Code) والخوادم الخارجية التي تعرض البيانات والإجراءات. يمكن لخادم MCP واحد أن يعلن عن ثلاثة أنواع من القدرات للعملاء:
- Tools — هي وظائف يمكن للنموذج استدعاؤها (استعلام قاعدة بيانات، إرسال رسالة، البحث في مستودع).
- Resources — بيانات منظمة يمكن للنموذج قراءتها (محتويات الملفات، استجابات API، السجلات).
- Prompts — قوالب أوامر قابلة لإعادة الاستخدام ومُعاملة يمكن للمستخدم استدعاؤها.
الهدف هو إنشاء "منفذ USB-C لتكاملات الذكاء الاصطناعي": خادم واحد، وعملاء متعددون، وبدون غراء خاص بكل نموذج. المواصفات والحزم التطويرية (SDKs) مفتوحة المصدر ويتم صيانتها في modelcontextprotocol على GitHub، مع التوثيق الأساسي في modelcontextprotocol.io.
لماذا يوجد MCP؟
قبل MCP، كان كل تكامل أداة عملية منفصلة. إذا كنت تريد من مساعد قراءة مشكلاتك في GitHub والاستعلام أيضًا من Postgres، فكنت تكتب موصلين مخصصين، ثم تعيد كتابتهما عندما تقوم بتغيير النماذج أو المضيفات. الدافع المعلن لـ Anthropic هو إنهاء هذا التكرار باستخدام بروتوكول مشترك — تصف الوثائق الرسمية ذلك بأنه يمنح النماذج "وصولًا موحدًا" إلى الملفات وقواعد البيانات وواجهات برمجة التطبيقات المحلية.
هذا الإطار مهم بشكل خاص لسير العمل القائم على الوكلاء (agentic workflows). الوكيل الذي يمكنه الدردشة فقط هو روبوت محادثة؛ أما الوكيل الذي يمكنه قراءة مستودعك، وتشغيل استعلام، واستدعاء أداة في حلقة متكررة، فهو عامل فعلي. MCP هو البنية التحتية التي تجعل هذا النوع قابلاً للنقل. إذا كنت تريد الصورة الأوسع لكيفية ملاءمة هذا التصميم للوكلاء، فراجع منشورنا حول أتمتة وكلاء الذكاء الاصطناعي.
كيف يعمل نموذج العميل-الخادم؟
يتبع MCP طوبولوجيا المضيف-العميل-الخادم:
- Host — هو التطبيق الذي يقوم المستخدم بتشغيله (Claude Desktop، Claude Code، إضافة IDE).
- Client — يعيش داخل المضيف، ويحافظ على جلسة 1:1 مع خادم واحد.
- Server — هي عملية تعرض القدرات عبر ناقل نقل معين.
يمكن للمضيف تشغيل العديد من العملاء، يتحدث كل منهم إلى خادم واحد. البروتوكول هو JSON-RPC 2.0، وبها ثلاث مراحل لدورة الحياة أقوم باختبارها في كل مرة أضيف فيها خادمًا جديدًا:
- Initialize — يرسل العميل إصدار البروتوكول والقدرات ومعلومات العميل؛ ويستجيب الخادم بإصداراته الخاصة.
- Capability negotiation — يعلن كلا الجانبين عما يدعمانه (الأدوات، الموارد، الأوامر، أخذ العينات، الجذور).
- Operation — يطلب العميل قوائم الأدوات، ويستدعي الأدوات، ويقرأ الموارد، ويقوم الخادم بتدفق النتائج مرة أخرى.
خيارات النقل (Transport options)
| Transport | Where it runs | When I use it |
|---|---|---|
| stdio | Local subprocess, communicates over stdin/stdout | Local dev tools, filesystem, git — anything on my machine |
| Streamable HTTP | Remote server over HTTPS with optional SSE streaming | Shared team servers, cloud-hosted integrations |
| SSE (legacy) | Remote, server-sent events | Older servers being phased out; avoid for new builds |
يعد stdio هو الافتراضي للإعداد المحلي وهو ما يستخدمه claude mcp add ما لم تقم بتمرير عنوان URL الخاص بـ HTTP. للحصول على شرح أعمق لـ claude mcp add وقرار stdio-vs-HTTP، راجع دليل تكامل Claude Code MCP.

ما هي أنواع القدرات الثلاثة، عمليًا؟
تكمن معظم قيمة MCP في أنواع القدرات الثلاثة. وإليك كيف يتصرف كل منها بالفعل عندما يستخدمه نموذج:
Tools (model-invoked)
الأدوات هي المحرك الأساسي. يقرر النموذج استدعاءها بناءً على المحادثة. قمت بتشغيل خادم يعرض أداة search_logs واستدعاها النموذج دون طلب مسبق بمجرد سؤالي "لماذا فشَر النشر في الساعة 2 صباحًا؟". تتضمن تعريفات الأدوات JSON Schema للوسائط، لذلك يحصل النموذج على مدخلات من نوع محدد ومتحقق منها.
Resources (app-controlled)
الموارد يتم تحديدها بواسطة URI وهي عادةً محددة من قبل المستخدم، وليست محددة من قبل النموذج — يرفق المستخدم موردًا مثل ملف أو سجل، ويقوم المضيف بحقه في السياق. هذا مهم للتحكم في النطاق: لا يمكن للنموذج رؤية سوى ما تقدمه له صراحةً.
Prompts (user-invoked)
الأوامر هي قوالب ذات وسائط تظهر في واجهة المستخدم الخاصة بالمضيف كأوامر شرطة مائلة أو عناصر قائمة. إنها القدرة الأقل استخدامًا — أستخدمها لترميز "مراجعة طلب السحب هذا مقابل دليل الأسلوب الخاص بنا" حتى لا أضطر إلى لصق نفس التعليمات في كل مرة.
كيف تقوم بإعداد خادم MCP؟
إعداد ملموس، باستخدام Claude Code كمضيف. يعمل نفس إعداد الخادم في ملف JSON الخاص بـ Claude Desktop.
- تثبيت Node.js 20+ (أو Python 3.10+ مع
uv). - إضافة خادم مرجعي، مثل خادم نظام الملفات:
npx -y @modelcontextprotocol/server-filesystem /Users/you/projects - تسجيله في Claude Code:
claude mcp add filesystem -- npx -y @modelcontextprotocol/server-filesystem /Users/you/projects - التحقق من الاتصال:
claude mcp listثمclaude mcp get filesystem - إعادة تشغيل المضيف والبحث عن أدوات الخادم في الجلسة.
هذه هي الدورة بأكملها. تغطي الخوادم المرجعية في منظمة GitHub نظام الملفات، وGit، وGitHub، وPostgres، وSQLite، وSlack، وGoogle Drive، وPuppeteer، والمزيد.
خادم مخصص بسيط (Python)
from mcp.server.fastmcp import FastMCP
mcp = FastMCP("status")
@mcp.tool()
def healthcheck(service: str) -> str:
"""Return the current status of a service."""
return f"{service}: ok"
if __name__ == "__main__":
mcp.run(transport="stdio")
لقد اختبرت هذا مقابل نقطة نهاية تجريبية في حوالي عشر دقائق، بما في ذلك توصيله بـ Claude Code. للحصول على أنماط أوسع لعرض الخدمات الداخلية كواجهات برمجة تطبيقات يمكن للوكلاء استدعاؤها، يغوص دليل تطوير API الخاص بنا بشكل أعمق في المصادقة وتحديد المعدل (rate-limiting).
كيف يبدو النظام البيئي في عام 2026؟
لقد تبلور النظام البيئي حول السجل الرسمي وعدد قليل من الخوادم المرجعية التي تتم صيانتها جيدًا. أحافظ على قائمة قصيرة بالتي أثق بها بالفعل في بيئة الإنتاج:
- filesystem — قراءة/كتابة الملفات المحلية مع قيود الجذر (root restrictions).
- github — المشكلات، طلبات السحب (PRs)، البحث، عمليات الملفات.
- postgres / sqlite — للقراءة فقط بشكل افتراضي، وتفتيش المخطط (schema introspection).
- puppeteer / playwright — أتمتة المتصفح للوكلاء.
- slack — قراءة القنوات وإرسال الرسائل.
| Capability | Most-used server | Default safety posture |
|---|---|---|
| File access | filesystem | Restricted to explicit roots |
| Code host | github | Read-heavy; writes require explicit config |
| Database | postgres | Read-only unless you opt in |
| Browser | playwright | Sandboxed profile |
| Messaging | slack | Channel-scoped tokens |
لتنظيم خوادم متعددة خلف الوكلاء الفرعيين (subagents) — حيث يمتلك وكيل فرعي قاعدة البيانات، وآخر يمتلك المتصفح — يوضح منشورنا حول وكلاء Claude Code الفرعيين نمط الفريق.
ما الذي يجب أن تنتبه إليه؟
هذا هو الجزء الذي يتجاهله معظم المبتدئين. تعمل خوادم MCP باستخدام بيانات اعتمادك ووصول نظام الملفات الخاص بك، لذا فإن النطاق (scope) مهم.
- عامل معاملة كل خادم كاعتمادية. ثبّت الإصدارات، وقم بتدقيق المصدر قبل تشغيل
npxعلى مستودع غريب. يمكن لأداة ضارة أن تستخرج أي شيء يراه النموذج. - قيّد الجذور (roots). خادم نظام الملفات آمن بقدر الدليل الذي تشير إليه — لا تمرر أبدًا
/. - فضل إعداد قواعد البيانات للقراءة فقط حتى يكون لديك سبب ملموس لتمكين الكتابة.
- انتبه لحقن الأوامر (prompt injection). إذا أعادت الأداة محتوى يتصرف عليه النموذج بعد ذلك، يمكن أن يصبح الإدخال غير الموثوق به تعليمات. افترض أن أي مورد عدائي.
- حدد نطاق رموز OAuth. يجب أن تكون رموز Slack وGitHub هي الحد الأدنى من النطاق الذي يحتاجه الخادم، وليس رمزك الشخصي.
أبدأ كل خادم جديد في حساب معزول وأراقب أول بضع استدعاءات للأدوات قبل الوثوق به في جلسة حقيقية.

الخلاصة الرئيسية (Key takeaway)
MCP هو بروتوكول صغير يحل مشكلة حقيقية: يسمح بخادم واحد بتعريض الأدوات والموارد والأوامر لأي مضيف ذكاء اصطناعي متوافق، مما يقضي على ضريبة التكامل N-times-M. الميكانيكا بسيطة — التهيئة، التفاوض، التشغيل عبر stdio أو HTTP — لكن الوضع الأمني هو الجزء الذي يحدد ما إذا كان ينتمي إلى سير عملك أم لا. قم بتشغيل الخوادم التي يمكنك تدقيقها، وقم بتحديد نطاق بيانات الاعتماد الخاصة بها بقوة، وافترض أن الإدخال غير الموثوق به عدائي. افعل ذلك، وسيكون MCP هي الطريقة الأنظف لتحويل مساعد إلى وكيل يمكنه فعليًا لمس أنظمتك.

حقوق صور (Image credits)
- Source code displayed on a monitor screen — photo by Markus Spiske on Pexels
- A developer typing on a laptop while configuring a server in a terminal — photo by Vlada Karpovich on Pexels
- Abstract circuit-board composition symbolizing layered architecture — photo by Christina Morillo on Pexels
استخدم الأدوات المجانية أثناء متابعة الدليل.
تابع القراءة

Wed Mar 25 2026 20:00:00 GMT-0400 (北美东部夏令时间)
مُصغِّر الصور بالجملة: تغيير حجم مئات الصور دفعة واحدة (مجاني)
قم بتغيير حجم مئات الصور دفعة واحدة ومجاناً باستخدام أداة متصفح، أو ImageMagick، أو XnConvert، أو سكريبت Python. يوفر هذا سير عمل دفعات آمن وتوفيراً حقيقياً للبايتات.

Wed Mar 18 2026 20:00:00 GMT-0400 (北美东部夏令时间)
محول WebP: كيفية تحويل الصور إلى WebP (بأحجام حقيقية)
حوّل صور JPEG و PNG إلى WebP لملفات ويب أصغر. يتضمن الدليل أحجامًا مقاسة فعليًا، وأمر cwebp، وطرق Python والمتصفح، واستراتيجية احتياطية (fallback) باستخدام JPEG/PNG.

Wed Mar 11 2026 20:00:00 GMT-0400 (北美东部夏令时间)
Real-ESRGAN AI Upscaling: كيفية عملها ومتى يجب استخدامها
شرح ما هو Real-ESRGAN، وكيف تعمل تقنية Super-resolution القائمة على GAN، وما هي نقاط قوته (مثل الـ 4x upscaling للصور والفن) وأين يفشل، مع الأوامر والحدود الواقعية.