Docker MCP Toolkit: البوابة والكتالوج وإعداد Claude، خطوة بخطوة

إعداد عملي لـ Docker MCP Toolkit، من أول تفعيل حتى أول استدعاء لأداة. فعّل البوابة، وأنشئ ملفًا شخصيًا، واختر خوادم موقّعة من الكتالوج، ثم اربط Claude Desktop وClaude Code، واختبر كل حاوية وصحّح أخطاءها وأحكم تأمينها.

Docker MCP Toolkit: البوابة والكتالوج وإعداد Claude، خطوة بخطوة
Cristian Da Conceicao
مؤسس Picasso IA

تبدأ معظم إعدادات MCP بالطريقة نفسها. تلصق كتلة JSON في Claude Desktop، ثم تلصق كتلة مختلفة قليلًا في Claude Code، وتشغّل خادمًا ثالثًا عبر npx، وتترك رمز وصول شخصيًا مكتوبًا بنص عادي داخل ملف إعدادات. يعمل الأمر إلى أن يتوقف، وعندها تبحث في ثلاثة ملفات لتعرف سبب اختفاء أداة ما. يستبدل Docker MCP Toolkit هذه الفوضى بطبقة واحدة مُدارة: خوادم تعمل كحاويات، وكتالوج يوفرها، وبوابة واحدة يتحدث معها Claude. يشرح هذا المقال إعداد الثلاثة معًا، ويربط Claude Desktop وClaude Code، ويوضح كيف تتأكد أن كل أداة تعمل قبل أن تعتمد عليها.

ما الذي يفعله Toolkit فعلًا

يعمل Toolkit داخل Docker Desktop. يشغّل خوادم MCP كحاويات معزولة، ويجمعها في ملفات شخصية مسماة، ويعرض كل ملف شخصي على عملاء الذكاء الاصطناعي عبر MCP Gateway. لا يشغّل Claude أي خادم بنفسه، بل يتصل بنقطة نهاية واحدة، وتوجّه البوابة كل طلب إلى الحاوية الصحيحة.

الميزة العملية هي الفصل. محررك وتطبيق المحادثة ووكيل الطرفية كلها تشير إلى البوابة نفسها، بينما تبقى الخوادم وبياناتها الاعتمادية وحدود مواردها تحت إدارة Docker، بدلًا من نسخها إلى إعدادات كل عميل.

باب حاوية شحن متآكل يفتحه أحدهم بقفاز في رصيف ميناء هادئ عند الفجر

البوابة بلغة بسيطة

تخيّل البوابة كمكتب استقبال. يصل كل طلب من Claude إلى هناك. تختار البوابة الخادم الذي يجب أن يجيب، وتشغّل حاويته عند الحاجة، وتعيد النتيجة. السلسلة قصيرة: Claude، ثم البوابة، ثم الخادم داخل الحاوية.

البوابة مفتوحة المصدر بترخيص MIT، وتُثبّت كإضافة لواجهة سطر أوامر Docker، لذا يعمل docker mcp --help بمجرد تفعيل Toolkit. تستخدم stdio افتراضيًا، وهذا مناسب لعميل واحد. عندما تحتاج عدة عملاء إلى البوابة نفسها، شغّلها عبر HTTP streaming:

docker mcp gateway run --port 8080 --transport streaming

تجعل طبقة الحاويات هذا النظام مرتبًا. قبل Toolkit، كان كل خادم يحتاج إلى بيئة تشغيل خاصة على جهازك: Node لأحدها، وPython لآخر، وإصدار محدد لثالث. أما الخادم المحوّل إلى حاوية فيحمل بيئة تشغيله معه، فلا يحتاج حاسوبك إلا إلى Docker. لم يعد تحديث الخادم أو حذفه مهمة تنظيف مرهقة، لأن الخادم لم يُثبَّت على الجهاز المضيف أصلًا.

الكتالوج والملفات الشخصية والعملاء

يقوم النظام كله على ثلاثة مفاهيم، وكل أمر في هذا المقال يتعامل مع واحد منها.

المكوّنما هوأين تتعامل معه
الكتالوجمجموعة مختارة من خوادم MCP مغلّفة كصور حاوياتتبويب Catalog، docker mcp catalog ls
الملف الشخصيمجموعة مسماة من الخوادم وإعداداتها لمشروع أو سير عمل واحدتبويب Profiles، docker mcp profile list
العميلتطبيق الذكاء الاصطناعي الذي يتصل، مثل Claude Desktop أو Claude Codeتبويب Clients، docker mcp client ls

خزانة فهرس مكتبة من خشب البلوط مع عدة أدراج مفتوحة

💡 نصيحة: يمكن لملف شخصي واحد أن يخدم عدة عملاء. اضبطه مرة واحدة، وسيرى كل تطبيق متصل الأدوات نفسها.

قبل أن تثبّت أي شيء

تحتاج إلى القليل، لكن كل عنصر منه مهم.

Docker Desktop ومفتاح البيتا

يتطلب Toolkit الإصدار 4.62 من Docker Desktop أو أحدث، وهو خلف مفتاح تجريبي (beta):

  1. افتح Docker Desktop واذهب إلى Settings.
  2. اختر Beta features.
  3. فعّل Docker MCP Toolkit.
  4. اختر Apply.

يظهر الآن مدخل MCP Toolkit في قائمة Docker Desktop. إذا استخدمت نسخة أقدم من Toolkit، فستنتقل إعداداتك الحالية تلقائيًا إلى ملف شخصي باسم default، فلا تحتاج إلى إعادة بنائها.

حاسوب محمول على مكتب من خشب البتولا، بجانب قائمة مهام بقلم رصاص وكأس ماء

عملاء Claude المدعومون

هناك عميلان من Claude يهمّان هنا. يتصل Claude Desktop من تبويب Clients بزر واحد. ويتصل Claude Code من الطرفية بأمر واحد. كما تذكر وثائق Docker أيضًا Cursor وZed وVisual Studio Code، وهذا مفيد عندما يتوزع فريقك على محررات مختلفة، لأنها جميعًا تقرأ الملف الشخصي نفسه.

💡 نصيحة: ثبّت Claude Code قبل البدء إذا كنت تخطط لاستخدام مسار الطرفية. يعتمد فحص الاتصال لاحقًا في هذا الدليل على أمره claude mcp list.

أنشئ ملفك الشخصي الأول

الملف الشخصي مساحة عمل. قد يضم الملف الخاص بالبحث خادم ملاحظات وخادم بحث، بينما يضم ملف الإصدار خادم GitHub وخادم مراقبة. الفصل بينهما يعني أن Claude لا يرى إلا الأدوات المناسبة للمهمة الحالية.

تعرض ثلاثة تصميمات للملفات الفكرة:

  • البحث: خادم ملاحظات للمواد الخلفية، وخادم بحث واحد للاستعلامات.
  • الإصدار: GitHub لطلبات السحب، وخادم مراقبة مثل Grafana للوحات التي تراجعها قبل النشر.
  • الدعم: وصول للقراءة فقط إلى خادم مدفوعات مثل Stripe، مع إيقاف أدوات الكتابة.

أنشئه في Docker Desktop

  1. افتح MCP Toolkit واختر تبويب Profiles.
  2. اختر Create profile.
  3. اكتب اسمًا، مثل Frontend development.
  4. أضف الخوادم والعملاء الآن، أو تخطَّ الخطوتين وافعلهما لاحقًا.
  5. اختر Create.

لوحة تثقيب في ورشة عمل تتدلى منها الأدوات في ثلاث مناطق منفصلة

أنشئه من الطرفية

تحصل على النتيجة نفسها بأمرين:

docker mcp profile create --name dev-tools --server catalog://<server-reference>
docker mcp profile list

استبدل العنصر النائب بمرجع خادم من الكتالوج. وتتولى ثلاثة أوامر فرعية أخرى الصيانة:

  • docker mcp profile server add وremove لتغيير قائمة الخوادم.
  • docker mcp profile config <id> --set (أو --get، أو --del) لتعديل إعدادات الملف الشخصي.
  • docker mcp profile tools <id> --enable (أو --disable) للتحكم في الأدوات التي يمكن لنموذج Claude استدعاؤها.

اختر الخوادم من الكتالوج

يضم كتالوج Docker MCP مئات الخوادم. تذكر صفحات Docker نفسها أن العدد يتجاوز 200 في موضع، ويتجاوز 300 في موضع آخر، وهذا يشير إلى أنه ما زال ينمو. تصفّحه من تبويب Catalog، واختر Add to، ثم اختر ملفك الشخصي. تحتاج الخوادم التي تحمل علامة Configuration Required إلى بيانات اعتماد أو إعداد قبل أن تعمل.

المُتحقَّق منها، والمبنية من Docker، والبعيدة

يضم الكتالوج ثلاثة أنواع من الخوادم:

  • خوادم شركاء مُتحقَّق منها من شركات مثل New Relic وStripe وGrafana، منشورة مع بيانات المصدر وSBOM.
  • خوادم مبنية من Docker، بناها Docker ووقّعها، وتعمل محليًا وتوجد في مساحة الأسماء mcp على Docker Hub.
  • خوادم بعيدة مستضافة في السحابة، مثل GitHub وNotion.

رف ريفي من البرطمانات الزجاجية مغلقة بشمع أحمر وبطاقات ورقية

💡 نصيحة: يمكن للفرق التي تحتاج إلى تحكم أدق أن تُنشئ كتالوجًا مخصصًا وتستورده بـ docker mcp catalog pull <oci-reference>، فلا يرى الأشخاص إلا الخوادم المعتمدة.

خوادم تستحق الإضافة أولًا

ابدأ بشكل بسيط. كل خادم تضيفه يضع مزيدًا من أوصاف الأدوات أمام Claude، وملف شخصي محكم يحافظ على دقة اختياراته. أربع نقاط بداية سهلة:

الهدفالخادم المقترحالنوع
مراجعة طلبات السحبGitHubخادم بعيد
البحث في ملاحظات الفريقNotionخادم بعيد
مراجعة لوحات المتابعةGrafanaشريك مُتحقَّق منه
فحص المدفوعاتStripeشريك مُتحقَّق منه

الأسرار وOAuth

تستخدم الخوادم البعيدة مثل GitHub بروتوكول OAuth. يفتح Docker نافذة متصفح، فتوافق على الوصول، وتبقى بيانات الاعتماد مُدارة من Docker بدلًا من لصقها في JSON. أما الخوادم التي تحتاج إلى أسرار ثابتة، فشغّل docker mcp secret --help لرؤية الخيارات، وdocker mcp oauth --help لأوامر التفويض. وتضيف وثائق Docker أن الطلبات التي تحمل معلومات حساسة تُحظر.

💡 نصيحة: لا تلصق رمز وصول حقيقيًا في نافذة محادثة أو في إعداد مشترك. إذا طلب خادم رمزًا، فاحفظه عبر Toolkit.

اربط Claude Desktop وClaude Code

Claude Desktop في نقرتين

  1. في Docker Desktop، افتح MCP Toolkit واختر تبويب Clients.
  2. ابحث عن Claude Desktop واختر Connect.
  3. أعد تشغيل Claude Desktop.

بعد إعادة التشغيل، افتح قائمة Search and tools. يجب أن يظهر مدخل باسم MCP_DOCKER ومفعّل. كل خادم في ملفك الشخصي يقع الآن خلف هذا المدخل الواحد.

قوس حجري متآكل ببوابة حديدية مفتوحة تؤدي إلى فناء مشمس

Claude Code من الطرفية

يتصل Claude Code بأمر واحد:

docker mcp client connect claude-code --global
claude mcp list

يجب أن يطبع الأمر الثاني سطرًا مثل MCP_DOCKER: docker mcp gateway run - ✓ Connected. ولربط العميل بملف شخصي واحد بدلًا من كل الملفات، يقبل أمر الاتصال --profile، كما في docker mcp client connect vscode --profile my_profile. والصيغة العامة هي docker mcp client connect [client-name] --profile [id].

يطبّق العلم --global الاتصال على مستوى النظام بدلًا من المشروع الحالي، وهذا مناسب لجهاز شخصي. لا تستخدمه عندما ينبغي أن يكون لمستودع واحد مجموعة أدوات خاصة به.

الخيار الاحتياطي: JSON يدويًا

بعض العملاء يقرأون ملف JSON خاصًا بهم ولا يملكون زر اتصال. أضف البوابة كخادم stdio:

{
  "servers": {
    "MCP_DOCKER": {
      "command": "docker",
      "args": ["mcp", "gateway", "run", "--profile", "my_profile"],
      "type": "stdio"
    }
  }
}

طابِق اسم الخاصية على المستوى الأعلى الذي توثقه أداتك، لأن بعض العملاء يتوقعون mcpServers حيث يعرض هذا المقتطف servers. مدخل واحد يحل محل كتل الخوادم المنفصلة التي كانت لديك من قبل.

لأن البوابة تحفظ أدواتك في مكان واحد، لا تحتاج أي من هذه الخطوات إلى إعادة بناء عند تغيير العميل. استبدل Claude Desktop بتطبيق Claude Code، وسيتبعك الملف الشخصي نفسه.

اختبر وصحّح وأحكم القفل

تحقق من الاتصال

شغّل أمرًا يفرض استدعاء أداة حقيقيًا. يعمل مثال Docker نفسه بشكل جيد: "Use the GitHub MCP server to show me my open pull requests." إذا أجاب Claude ببيانات من حسابك، فالسلسلة كاملة تعمل. وللحصول على رؤية أدق على مستوى أدنى، يعرض docker mcp tools ls كل أداة تكشفها البوابة حاليًا، ويعرض docker mcp client ls العملاء المتصلين.

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

إصلاح البدء البطيء

تحتاج البوابة إلى نحو 15 إلى 25 ثانية حتى تعمل. ومعظم لحظات "إنه معطل" هي في الواقع "ما زال يستيقظ". انتظر نصف دقيقة قبل تغيير أي شيء، ثم راجع هذا الجدول.

العَرَضالسبب المرجّحالحل
MCP_DOCKER غير موجودة في Claude Desktopلم يُعَد تشغيل التطبيقأغلق Claude Desktop وأعد فتحه
غير متصل مباشرة بعد التشغيلالبوابة ما زالت تبدأانتظر، ثم شغّل claude mcp list مرة أخرى
يظهر الخادم Configuration Requiredبيانات اعتماد ناقصة أو موافقة OAuth غير مكتملةأكمل الإعداد في تبويب Catalog
أدوات خادم واحد مفقودةالأدوات معطّلة في الملف الشخصيأعد تفعيلها بـ docker mcp profile tools

قفل نحاسي على سلسلة فولاذية حول مزلاج صندوق خشبي

الحدود وقوائم السماح والأدوات الديناميكية

يطبّق Docker ضوابط حماية افتراضية. تُحدّ حاوية كل خادم عند 1 CPU و2 GB من الذاكرة، ويبقى الوصول إلى نظام الملفات متوقفًا حتى تمنحه، وصور مساحة الأسماء mcp موقّعة رقميًا. وداخل الملف الشخصي، تضيّق قائمة السماح للأدوات ما يحق لنموذج Claude استدعاؤه أصلًا.

تستحق إحدى الميزات قرارًا مدروسًا. تتيح Dynamic MCP لنموذج Claude البحث في الكتالوج وإضافة خادم في منتصف المحادثة، باستخدام أدوات إدارة تكشفها البوابة: mcp-find، وmcp-add، وmcp-config-set، وmcp-remove، وmcp-exec، وcode-mode التجريبية. وهي تُفعَّل تلقائيًا مع Toolkit. إذا أردت مجموعة أدوات ثابتة، فعطّلها:

docker mcp feature disable dynamic-tools

أعد تفعيلها لاحقًا بـ docker mcp feature enable dynamic-tools.

كيف تستخدم Sonnet 5 على PicassoIA

ينتج عمل الإعداد كمًا كبيرًا من النصوص للقراءة: مخرجات الأخطاء، وأوامر الملفات الشخصية، وملاحظات للزملاء. تتوفر Claude Sonnet 5 في مجموعة النماذج اللغوية الكبيرة على PicassoIA، وتتعامل مع هذا تحديدًا. تقرأ طلبًا عاديًا أو تحلّل تتبّع مكدس الاستدعاءات، وتقبل لقطة شاشة، وتعيد أوامر أو إصلاحات يمكنك التحقق منها في وثائق Docker.

امرأة تقرأ ملاحظات مطبوعة على طاولة خشبية أمام لوح أبيض عليه مربعات مرسومة يدويًا

هذا هو الروتين، من الصفحة حتى الإجابة:

  1. افتح صفحة Claude Sonnet 5.
  2. الصق مشكلتك في Prompt: نص الخطأ الدقيق، أو مخرجات claude mcp list.
  3. اختر مستوى effort. low هو الافتراضي ويتجاوز التفكير الموسّع، فتعود الإجابات بسرعة. ارفعه إلى high أو max لمشكلة متشابكة تمتد عبر عدة ملفات.
  4. أرفق لقطة شاشة لنافذة Docker Desktop في Image إذا كانت المشكلة بصرية.
  5. أضف System Prompt مرة واحدة، مثل "أنت مساعد DevOps. أجب بأوامر docker mcp دقيقة وجملة واحدة من السياق."
  6. اترك Max Tokens على 8192 للإجابات الطويلة، ثم شغّل الطلب.
الإعدادما الذي يفعلهالقيمة المقترحة
Effortيتحكم في مقدار التفكير قبل الردlow للبحث السريع، وhigh لتصحيح الأخطاء
Imageيُدخل لقطة شاشة في الطلبنافذة Docker Desktop مقصوصة
System Promptيحدد الدور والنبرة للجلسةموجز قصير لمساعد DevOps
Max Tokensيحدد طول الإجابة الأقصى8192

💡 نصيحة: لا يستطيع Sonnet 5 رؤية جهازك. عامل أوامره كمسودات، وتحقق من كل أمر في وثائق Docker قبل تشغيله.

تناسب نماذج أخرى على المنصة عادات مختلفة. يستهدف Claude Fable 5 مهام البرمجة الأصعب، ويتعامل GPT 5.6 Sol مع الشيفرات المعقدة، ويعالج Gemini 3.1 Pro الأسئلة متعددة الوسائط الطويلة، وصُمم Kimi K2.6 لأعمال الوكلاء.

جرّبه مع صورك الخاصة

بمجرد أن يصل Claude إلى خوادمك عبر بوابة واحدة، تصبح الخطوة التالية منح تلك سير العمل شيئًا تنظر إليه. يمكن لخادم GitHub أن يكتب مسودة ملاحظات الإصدار، ويحتفظ خادم Notion بالموجز، ويمكن لنموذج صور أن ينتج صورة الترويسة في الجلسة نفسها.

كل صورة في هذا المقال جاءت من P Image، وتم توليدها من أوامر نصية طويلة ومحددة تسمي العدسة والإضاءة وملمس الأسطح. ولمظاهر أخرى، جرّب Flux 2 Pro، أو GPT Image 2، أو Seedream 4.5، أو Nano Banana Pro. وعندما يجب أن تتحرك اللقطة، تحوّل Seedance 2.0، وVeo 3.1، وKling v3 Video أمرًا نصيًا أو صورة واحدة إلى مقاطع قصيرة.

منظر من الأعلى لصور مطبوعة منتشرة على طاولة الإضاءة لمحرر الصور

افتح Picasso IA، واختر نموذجًا، وصِف مشهدًا واحدًا كما تُوجّه مصورًا: الشخص، وزاوية التصوير، والضوء، والعدسة. أنتج عدة اختلافات، واحتفظ بالصورة التي تناسب مقالك، وأدرجها. تستغرق الصورة الأولى دقيقة، والثانية أقل.

شارك هذا المقال

اختر لغتك

مقالات ذات صلة