CLI commands
MCP
openclaw mcp لديه مهمتان:
- تشغيل OpenClaw كخادم MCP باستخدام
openclaw mcp serve - إدارة تعريفات خوادم MCP الصادرة المُدارة من OpenClaw باستخدام
listوshowوstatusوdoctorوprobeوaddوsetوconfigureوtoolsوloginوlogoutوreloadوunset
بعبارة أخرى:
serveيعني أن OpenClaw يعمل كخادم MCP- الأوامر الفرعية الأخرى تعني أن OpenClaw يعمل كسجل من جهة عميل MCP لخوادم MCP التي قد تستهلكها بيئات تشغيله لاحقًا
استخدم openclaw acp عندما ينبغي أن يستضيف OpenClaw جلسة حاضنة برمجة بنفسه ويوجه بيئة التشغيل تلك عبر ACP.
اختر مسار MCP المناسب
لدى OpenClaw عدة أسطح MCP. اختر السطح الذي يطابق من يملك بيئة تشغيل الوكيل ومن يملك الأدوات.
| الهدف | الاستخدام | السبب |
|---|---|---|
| السماح لعميل MCP خارجي بقراءة/إرسال محادثات قنوات OpenClaw | openclaw mcp serve |
OpenClaw هو خادم MCP ويعرض محادثات مدعومة من Gateway عبر stdio. |
| حفظ خوادم MCP من أطراف ثالثة لتشغيلات وكلاء مُدارة من OpenClaw | openclaw mcp add, set, configure, tools, login |
OpenClaw هو سجل جهة عميل MCP ويعرض تلك الخوادم لاحقًا على بيئات التشغيل المؤهلة. |
| فحص خادم محفوظ دون تشغيل دورة وكيل | openclaw mcp status, doctor, probe |
يفحص status وdoctor الإعدادات؛ ويفتح probe اتصال MCP حيًا ويسرد القدرات. |
| تعديل إعدادات MCP من متصفح | Control UI /mcp |
تعرض الصفحة المخزون، والتمكين، وملخصات OAuth/المرشحات، وتلميحات الأوامر، ومحرر mcp محدود النطاق. |
| منح خادم تطبيق Codex خادم MCP أصليًا محدود النطاق | mcp.servers.<name>.codex |
تؤثر كتلة codex فقط في عرض خيوط خادم تطبيق Codex وتُزال قبل تسليم الإعدادات الأصلية. |
| تشغيل جلسات حاضنة مستضافة عبر ACP | openclaw acp ووكلاء ACP |
لا يقبل وضع جسر ACP حقن خادم MCP لكل جلسة؛ اضبط جسور Gateway/Plugin بدلًا من ذلك. |
OpenClaw كخادم MCP
هذا هو مسار openclaw mcp serve.
متى تستخدم serve
استخدم openclaw mcp serve عندما:
- ينبغي أن يتحدث Codex أو Claude Code أو عميل MCP آخر مباشرةً إلى محادثات القنوات المدعومة من OpenClaw
- لديك بالفعل Gateway محلي أو بعيد لـ OpenClaw مع جلسات موجهة
- تريد خادم MCP واحدًا يعمل عبر خلفيات قنوات OpenClaw بدلًا من تشغيل جسور منفصلة لكل قناة
استخدم openclaw acp بدلًا من ذلك عندما ينبغي أن يستضيف OpenClaw بيئة تشغيل البرمجة بنفسه وأن يبقي جلسة الوكيل داخل OpenClaw.
كيف يعمل
يبدأ openclaw mcp serve خادم MCP عبر stdio. يملك عميل MCP تلك العملية. بينما يُبقي العميل جلسة stdio مفتوحة، يتصل الجسر بـ Gateway محلي أو بعيد لـ OpenClaw عبر WebSocket ويعرض محادثات القنوات الموجهة عبر MCP.
ينشئ العميل الجسر
ينشئ عميل MCP العملية openclaw mcp serve.
يتصل الجسر بـ Gateway
يتصل الجسر بـ OpenClaw Gateway عبر WebSocket.
تصبح الجلسات محادثات MCP
تصبح الجلسات الموجهة محادثات MCP وأدوات النصوص/السجل.
طابور الأحداث الحية
تُوضع الأحداث الحية في الذاكرة بينما يكون الجسر متصلًا.
دفع Claude اختياري
إذا كان وضع قناة Claude مُمكّنًا، فيمكن للجلسة نفسها أيضًا تلقي إشعارات دفع خاصة بـ Claude.
سلوك مهم
- تبدأ حالة الطابور الحي عندما يتصل الجسر
- يُقرأ سجل النصوص الأقدم باستخدام
messages_read - توجد إشعارات دفع Claude فقط أثناء بقاء جلسة MCP حية
- عندما ينقطع اتصال العميل، يخرج الجسر ويزول الطابور الحي
- تُنهي نقاط دخول الوكيل أحادية التنفيذ مثل
openclaw agentوopenclaw infer model runأي بيئات تشغيل MCP مضمّنة تفتحها عند اكتمال الرد، لذلك لا تؤدي التشغيلات النصية المتكررة إلى تراكم عمليات stdio MCP الفرعية - تُفكك خوادم stdio MCP التي يشغّلها OpenClaw (المضمّنة أو المضبوطة من المستخدم) كشجرة عمليات عند الإيقاف، لذلك لا تبقى العمليات الفرعية التي يبدأها الخادم بعد خروج عميل stdio الأصل
- يؤدي حذف جلسة أو إعادة تعيينها إلى التخلص من عملاء MCP لتلك الجلسة عبر مسار تنظيف بيئة التشغيل المشترك، لذلك لا تبقى اتصالات stdio عالقة مرتبطة بجلسة مُزالة
اختر وضع عميل
استخدم الجسر نفسه بطريقتين مختلفتين:
عملاء MCP عامون
أدوات MCP القياسية فقط. استخدم conversations_list وmessages_read وevents_poll وevents_wait وmessages_send وأدوات الموافقة.
Claude Code
أدوات MCP القياسية بالإضافة إلى محول القناة الخاص بـ Claude. فعّل --claude-channel-mode on أو اترك القيمة الافتراضية auto.
ما الذي يعرضه serve
يستخدم الجسر بيانات تعريف مسار جلسة Gateway الحالية لعرض المحادثات المدعومة بالقنوات. تظهر المحادثة عندما تكون لدى OpenClaw بالفعل حالة جلسة ذات مسار معروف مثل:
channel- بيانات تعريف المستلم أو الوجهة
accountIdاختياريthreadIdاختياري
يمنح هذا عملاء MCP مكانًا واحدًا من أجل:
- سرد المحادثات الموجهة الأخيرة
- قراءة سجل النصوص الأخير
- انتظار أحداث واردة جديدة
- إرسال رد عبر المسار نفسه
- رؤية طلبات الموافقة التي تصل أثناء اتصال الجسر
الاستخدام
Gateway محلي
openclaw mcp serveGateway بعيد (رمز)
openclaw mcp serve --url wss://gateway-host:18789 --token-file ~/.openclaw/gateway.tokenGateway بعيد (كلمة مرور)
openclaw mcp serve --url wss://gateway-host:18789 --password-file ~/.openclaw/gateway.passwordتفصيلي / Claude متوقف
openclaw mcp serve --verboseopenclaw mcp serve --claude-channel-mode offأدوات الجسر
يعرض الجسر الحالي أدوات MCP التالية:
conversations_list
يسرد المحادثات الأخيرة المدعومة بالجلسات التي لديها بالفعل بيانات تعريف المسار في حالة جلسة Gateway.
مرشحات مفيدة:
limitsearchchannelincludeDerivedTitlesincludeLastMessage
conversation_get
يعيد محادثة واحدة حسب session_key باستخدام بحث مباشر عن جلسة Gateway.
messages_read
يقرأ رسائل النصوص الأخيرة لمحادثة واحدة مدعومة بالجلسة.
attachments_fetch
يستخرج كتل محتوى الرسائل غير النصية من رسالة نصية واحدة. هذا عرض بيانات تعريف فوق محتوى النصوص، وليس مخزن كتل مرفقات دائمًا مستقلًا.
events_poll
يقرأ الأحداث الحية الموضوعة في الطابور منذ مؤشر رقمي.
events_wait
يجري استطلاعًا طويلًا حتى يصل الحدث التالي المطابق الموضوع في الطابور أو تنتهي المهلة.
استخدم هذا عندما يحتاج عميل MCP عام إلى تسليم شبه فوري دون بروتوكول دفع خاص بـ Claude.
messages_send
يرسل نصًا عبر المسار نفسه المسجل بالفعل في الجلسة.
السلوك الحالي:
- يتطلب مسار محادثة موجودًا
- يستخدم قناة الجلسة والمستلم ومعرّف الحساب ومعرّف الخيط
- يرسل نصًا فقط
permissions_list_open
يسرد طلبات الموافقة المعلقة للتنفيذ/Plugin التي لاحظها الجسر منذ اتصاله بـ Gateway.
permissions_respond
يحل طلب موافقة تنفيذ/Plugin معلقًا واحدًا باستخدام:
allow-onceallow-alwaysdeny
نموذج الأحداث
يحتفظ الجسر بطابور أحداث في الذاكرة أثناء اتصاله.
أنواع الأحداث الحالية:
messageexec_approval_requestedexec_approval_resolvedplugin_approval_requestedplugin_approval_resolvedclaude_permission_request
إشعارات قناة Claude
يمكن للجسر أيضًا عرض إشعارات قناة خاصة بـ Claude. هذا هو مكافئ OpenClaw لمحول قناة Claude Code: تبقى أدوات MCP القياسية متاحة، لكن الرسائل الواردة الحية يمكن أن تصل أيضًا كإشعارات MCP خاصة بـ Claude.
off
--claude-channel-mode off: أدوات MCP القياسية فقط.
on
--claude-channel-mode on: تفعيل إشعارات قناة Claude.
auto (default)
--claude-channel-mode auto: القيمة الافتراضية الحالية؛ سلوك الجسر نفسه مثل on.
عند تفعيل وضع قناة Claude، يعلن الخادم قدرات Claude التجريبية ويمكنه إصدار:
notifications/claude/channelnotifications/claude/channel/permission
سلوك الجسر الحالي:
- تُمرر رسائل نصوص
userالواردة كـnotifications/claude/channel - تُتبع طلبات أذونات Claude المستلمة عبر MCP في الذاكرة
- إذا أرسل مالك الأمر في المحادثة المرتبطة لاحقًا
yes abcdeأوno abcde، يحوّل الجسر ذلك إلىnotifications/claude/channel/permission - هذه الإشعارات خاصة بالجلسة الحية فقط؛ إذا انقطع اتصال عميل MCP، فلا يوجد هدف دفع
هذا مقصود أن يكون خاصًا بالعميل. ينبغي لعملاء MCP العامين الاعتماد على أدوات الاستطلاع القياسية.
إعدادات عميل MCP
مثال لإعداد عميل stdio:
{ "mcpServers": { "openclaw": { "command": "openclaw", "args": [ "mcp", "serve", "--url", "wss://gateway-host:18789", "--token-file", "/path/to/gateway.token" ] } }}بالنسبة لمعظم عملاء MCP العامين، ابدأ بسطح الأدوات القياسي وتجاهل وضع Claude. فعّل وضع Claude فقط للعملاء الذين يفهمون فعليًا طرق الإشعارات الخاصة بـ Claude.
الخيارات
يدعم openclaw mcp serve:
--urlstringعنوان URL لـ WebSocket في Gateway.
--tokenstringرمز Gateway.
--token-filestringقراءة الرمز من ملف.
--passwordstringكلمة مرور Gateway.
--password-filestringقراءة كلمة المرور من ملف.
--claude-channel-mode"auto" | "on" | "off"وضع إشعارات Claude.
-v, --verbosebooleanسجلات تفصيلية على stderr.
الأمان وحدود الثقة
لا يخترع الجسر التوجيه. إنه لا يكشف إلا المحادثات التي يعرف Gateway بالفعل كيفية توجيهها.
وهذا يعني:
- تظل قوائم السماح للمرسلين، والاقتران، والثقة على مستوى القناة تابعة لإعدادات قناة OpenClaw الأساسية
- لا يستطيع
messages_sendالرد إلا عبر مسار مخزّن موجود - حالة الموافقة مباشرة/داخل الذاكرة فقط لجلسة الجسر الحالية
- ينبغي أن تستخدم مصادقة الجسر نفس ضوابط رمز Gateway أو كلمة المرور التي تثق بها لأي عميل Gateway بعيد آخر
إذا كانت محادثة مفقودة من conversations_list، فالسبب المعتاد ليس إعداد MCP. بل تكون بيانات تعريف المسار مفقودة أو غير مكتملة في جلسة Gateway الأساسية.
الاختبار
يوفّر OpenClaw اختبار Docker smoke حتميًا لهذا الجسر:
pnpm test:docker:mcp-channelsيتولى هذا الاختبار:
- تشغيل حاوية Gateway مهيأة ببيانات أولية
- تشغيل حاوية ثانية تستدعي
openclaw mcp serve - التحقق من اكتشاف المحادثات، وقراءة النصوص، وقراءة بيانات تعريف المرفقات، وسلوك طابور الأحداث المباشر، وتوجيه الإرسال الصادر
- التحقق من إشعارات القنوات والأذونات بأسلوب Claude عبر جسر stdio MCP الحقيقي
هذه أسرع طريقة لإثبات أن الجسر يعمل دون ربط حساب Telegram أو Discord أو iMessage حقيقي بتشغيل الاختبار.
للمزيد من سياق الاختبار، راجع الاختبار.
استكشاف الأخطاء وإصلاحها
No conversations returned
يعني ذلك عادةً أن جلسة Gateway ليست قابلة للتوجيه مسبقًا. تأكد من أن الجلسة الأساسية تحتوي على بيانات تعريف المسار المخزّنة للقناة/المزوّد، والمستلم، والحساب/السلسلة الاختياريين.
events_poll or events_wait misses older messages
هذا متوقع. يبدأ الطابور المباشر عندما يتصل الجسر. اقرأ سجل النصوص الأقدم باستخدام messages_read.
Claude notifications do not show up
تحقق من كل ما يلي:
- أبقى العميل جلسة stdio MCP مفتوحة
--claude-channel-modeهوonأوauto- يفهم العميل فعليًا طرق الإشعار الخاصة بـ Claude
- حدثت الرسالة الواردة بعد اتصال الجسر
Approvals are missing
لا يعرض permissions_list_open إلا طلبات الموافقة التي رُصدت أثناء اتصال الجسر. إنه ليس واجهة API دائمة لسجل الموافقات.
OpenClaw كسجل عملاء MCP
هذا هو مسار openclaw mcp list وshow وstatus وdoctor وprobe وadd وset
وconfigure وtools وlogin وlogout وreload وunset.
لا تكشف هذه الأوامر OpenClaw عبر MCP. إنها تدير تعريفات خوادم MCP المُدارة بواسطة OpenClaw ضمن mcp.servers في إعدادات OpenClaw. ولا تقرأ خوادم mcporter من config/mcporter.json.
هذه التعريفات المحفوظة مخصصة لبيئات التشغيل التي يشغّلها OpenClaw أو يهيئها لاحقًا، مثل OpenClaw المضمّن ومحوّلات بيئات التشغيل الأخرى. يخزّن OpenClaw التعريفات مركزيًا حتى لا تضطر تلك البيئات إلى الاحتفاظ بقوائم خوادم MCP مكررة خاصة بها.
Important behavior
- تقرأ هذه الأوامر إعدادات OpenClaw أو تكتبها فقط
- لا يتصل
statusوlistوshowوdoctorدون--probeوsetوconfigureوtoolsوlogoutوreloadوunsetبخادم MCP المستهدف - ينفّذ
loginتدفق شبكة MCP OAuth للخادم HTTP المهيأ ويحفظ بيانات الاعتماد المحلية الناتجة - يطبع
status --verboseتلميحات النقل والمصادقة والمهلة والمرشح واستدعاء الأدوات المتوازي التي تم حلها دون الاتصال - يتحقق
doctorمن التعريفات المحفوظة بحثًا عن مشكلات الإعداد المحلي مثل أوامر stdio المفقودة، وأدلة العمل غير الصالحة، وملفات TLS المفقودة، والخوادم المعطلة، وقيم الترويسات/البيئة الحساسة الحرفية، وتفويض OAuth غير المكتمل - يضيف
doctor --probeإثبات الاتصال المباشر نفسه مثلprobeبعد نجاح الفحوصات الثابتة - يتصل
probeبالخادم المحدد أو بكل الخوادم المهيأة، ويسرد الأدوات، ويبلغ عن القدرات/التشخيصات - يبني
addتعريفًا من الأعلام ويجري الفحص قبل الحفظ ما لم يُعيّن--no-probeأو تكن هناك حاجة إلى تفويض OAuth أولًا - تقرر محوّلات بيئة التشغيل أشكال النقل التي تدعمها فعليًا وقت التنفيذ
- يبقي
enabled: falseالخادم محفوظًا لكنه يستبعده من اكتشاف بيئة التشغيل المضمّنة - يضبط
timeoutوconnectTimeoutمهل الطلبات والاتصال لكل خادم بالثواني - يعلّم
supportsParallelToolCalls: trueالخوادم التي تستطيع المحوّلات استدعاءها بالتوازي - يمكن لخوادم HTTP استخدام ترويسات ثابتة، وتسجيل دخول OAuth، والتحكم في التحقق من TLS، ومسارات شهادة/مفتاح mTLS
- يكشف OpenClaw المضمّن أدوات MCP المهيأة في ملفات تعريف الأدوات العادية
codingوmessaging؛ لا يزالminimalيخفيها، ويعطلهاtools.deny: ["bundle-mcp"]صراحةً - يرشّح
toolFilter.includeوtoolFilter.excludeلكل خادم أدوات MCP المكتشفة قبل أن تصبح أدوات OpenClaw - الخوادم التي تعلن عن موارد أو مطالبات تكشف أيضًا أدوات مساعدة لسرد/قراءة الموارد وسرد/جلب المطالبات؛ وتستخدم أسماء الأدوات المساعدة المولّدة (
resources_listوresources_readوprompts_listوprompts_get) مرشح التضمين/الاستبعاد نفسه - تؤدي تغييرات قائمة أدوات MCP الديناميكية إلى إبطال الكتالوج المخبأ لتلك الجلسة؛ ويحدّث الاكتشاف/الاستخدام التالي البيانات من الخادم
- تؤدي إخفاقات طلبات/بروتوكول أدوات MCP المتكررة إلى إيقاف ذلك الخادم مؤقتًا لفترة وجيزة حتى لا يستهلك خادم معطّل واحد الدور كله
- تُزال بيئات تشغيل MCP المجمعة محددة النطاق للجلسة بعد
mcp.sessionIdleTtlMsميلي ثانية من الخمول (الافتراضي 10 دقائق؛ عيّن0للتعطيل)، وتنظفها التشغيلات المضمّنة أحادية الاستخدام عند نهاية التشغيل
قد تطبّع محوّلات بيئة التشغيل هذا السجل المشترك إلى الشكل الذي يتوقعه عميلها اللاحق. على سبيل المثال، يستهلك OpenClaw المضمّن قيم transport الخاصة بـ OpenClaw مباشرةً، بينما يتلقى Claude Code وGemini قيم type أصلية للـ CLI مثل http أو sse أو stdio.
يحترم Codex app-server أيضًا كتلة codex اختيارية على كل خادم. هذه بيانات تعريف إسقاط OpenClaw لسلاسل Codex app-server فقط؛ ولا تغيّر جلسات ACP أو إعدادات حزمة Codex العامة أو محوّلات بيئات التشغيل الأخرى.
استخدم codex.agents غير الفارغة لإسقاط خادم إلى معرّفات وكلاء OpenClaw محددة فقط. تُرفض قوائم الوكلاء الفارغة أو البيضاء أو غير الصالحة بواسطة تحقق الإعدادات وتُحذف بواسطة مسار إسقاط بيئة التشغيل بدلًا من أن تصبح عامة. استخدم codex.defaultToolsApprovalMode (auto أو prompt أو approve) لإصدار default_tools_approval_mode الأصلي لـ Codex لخادم موثوق.
يزيل OpenClaw بيانات تعريف codex قبل تسليم إعدادات mcp_servers الأصلية إلى Codex.
تعريفات خوادم MCP المحفوظة
يخزّن OpenClaw أيضًا سجل خوادم MCP خفيفًا في الإعدادات للأسطح التي تريد تعريفات MCP مُدارة بواسطة OpenClaw.
الأوامر:
openclaw mcp listopenclaw mcp show [name]openclaw mcp status [--verbose]openclaw mcp doctor [name] [--probe]openclaw mcp probe [name]openclaw mcp add <name> [flags]openclaw mcp set <name> <json>openclaw mcp configure <name> [flags]openclaw mcp tools <name> [--include csv] [--exclude csv] [--clear]openclaw mcp login <name> [--code code]openclaw mcp logout <name>openclaw mcp reloadopenclaw mcp unset <name>
ملاحظات:
- يرتّب
listأسماء الخوادم. - يطبع
showدون اسم كائن خادم MCP المهيأ بالكامل. - يصنّف
statusوسائل النقل المهيأة دون الاتصال. يتضمن--verboseتفاصيل التشغيل والمهلة وOAuth والمرشح والاستدعاء المتوازي التي تم حلها. - ينفّذ
doctorفحوصات ثابتة دون الاتصال. أضف--probeعندما ينبغي للأمر أن يتحقق أيضًا من اتصال الخوادم المفعّلة. - يتصل
probeويبلغ عن أعداد الأدوات، ودعم الموارد/المطالبات، ودعم تغيّر القوائم، والتشخيصات. - يقبل
addأعلام stdio مثل--commandو--argو--envو--cwd، أو أعلام HTTP مثل--urlو--transportو--headerو--auth oauthوTLS والمهلة وأعلام اختيار الأدوات. - يتوقع
setقيمة كائن JSON واحدة على سطر الأوامر. - يحدّث
configureالتفعيل، ومرشحات الأدوات، والمهل، وOAuth، وTLS، وتلميحات استدعاء الأدوات المتوازي دون استبدال تعريف الخادم كله. - يحدّث
toolsمرشحات الأدوات لكل خادم. إدخالات التضمين/الاستبعاد هي أسماء أدوات MCP وأنماط*بسيطة. - يشغّل
loginتدفق OAuth لخوادم HTTP المهيأة بـauth: "oauth". يطبع التشغيل الأول عنوان URL للتفويض؛ أعد التشغيل مع--codeبعد الموافقة. - يمحو
logoutبيانات اعتماد OAuth المخزنة للخادم المسمى دون إزالة تعريف الخادم المحفوظ. - يتخلص
reloadمن بيئات تشغيل MCP المخبأة داخل العملية. لا تزال عمليات Gateway أو الوكلاء في عملية أخرى تحتاج إلى مسار إعادة تحميل أو إعادة تشغيل خاص بها. - استخدم
transport: "streamable-http"لخوادم Streamable HTTP MCP. يطبّعopenclaw mcp setأيضًاtype: "http"الأصلي للـ CLI إلى شكل الإعدادات القانوني نفسه للتوافق. - يفشل
unsetإذا لم يكن الخادم المسمى موجودًا.
أمثلة:
openclaw mcp listopenclaw mcp show context7 --jsonopenclaw mcp status --verboseopenclaw mcp doctor --probeopenclaw mcp probe context7 --jsonopenclaw mcp add memory --command npx --arg -y --arg @modelcontextprotocol/server-memoryopenclaw mcp set context7 '{"command":"uvx","args":["context7-mcp"]}'openclaw mcp tools context7 --include 'resolve-library-id,get-library-docs'openclaw mcp set docs '{"url":"https://mcp.example.com","transport":"streamable-http"}'openclaw mcp configure docs --timeout 20 --connect-timeout 5 --include 'search,read_*'openclaw mcp configure docs --auth oauth --oauth-scope 'docs.read'openclaw mcp login docsopenclaw mcp logout docsopenclaw mcp unset context7وصفات الخوادم الشائعة
تحفظ هذه الأمثلة تعريفات الخوادم فقط. شغّل openclaw mcp doctor --probe بعدها لإثبات أن الخادم يبدأ ويكشف الأدوات.
Filesystem
openclaw mcp add files \ --command npx \ --arg -y \ --arg @modelcontextprotocol/server-filesystem \ --arg "$HOME/Documents" \ --include 'read_file,list_directory,search_files'openclaw mcp doctor files --probeاجعل نطاق خوادم نظام الملفات محصورًا في أصغر شجرة أدلة ينبغي للوكيل قراءتها أو تعديلها.
Memory
openclaw mcp add memory \ --command npx \ --arg -y \ --arg @modelcontextprotocol/server-memoryopenclaw mcp probe memory --jsonاستخدم مرشح أدوات إذا كان الخادم يكشف أدوات كتابة لا ينبغي أن تكون متاحة للوكلاء العاديين.
Local script
openclaw mcp add local-tools \ --command node \ --arg ./dist/mcp-server.js \ --cwd /srv/openclaw-tools \ --env API_BASE=https://internal.exampleopenclaw mcp status --verboseيتحقق doctor من أن cwd موجود وأن الأمر يمكن حله من البيئة المهيأة.
Remote HTTP
openclaw mcp add docs \ --url https://mcp.example.com/mcp \ --transport streamable-http \ --auth oauth \ --oauth-scope docs.read \ --timeout 20 \ --connect-timeout 5 \ --include 'search,read_*'openclaw mcp doctor docs --probeاستخدم OAuth عندما يدعمه الخادم البعيد. إذا كان الخادم يتطلب ترويسات ثابتة، فتجنب تثبيت رموز الحامل النصية الصريحة.
Desktop/CUA
openclaw mcp set cua-driver '{"command":"cua-driver","args":["mcp"]}'openclaw mcp tools cua-driver --include 'list_apps,observe,click,type'openclaw mcp doctor cua-driver --probeترث خوادم التحكم المباشر بسطح المكتب أذونات العملية التي تطلقها. استخدم مرشحات أدوات ضيقة ومطالبات أذونات على مستوى نظام التشغيل.
أشكال إخراج JSON
استخدم --json للسكربتات ولوحات المعلومات. يمكن أن تنمو مجموعات الحقول بمرور الوقت، لذلك ينبغي للمستهلكين تجاهل المفاتيح غير المعروفة.
status --json
{ "path": "/home/user/.openclaw/openclaw.json", "servers": [ { "name": "docs", "configured": true, "enabled": true, "ok": true, "transport": "streamable-http", "launch": "streamable-http https://mcp.example.com/mcp", "auth": "oauth", "authStatus": { "hasTokens": true, "hasClientInformation": true, "hasCodeVerifier": false, "hasDiscoveryState": true, "hasLastAuthorizationUrl": false }, "requestTimeoutMs": 20000, "connectionTimeoutMs": 5000, "toolFilter": { "include": ["search", "read_*"], "exclude": [] }, "supportsParallelToolCalls": true } ]}doctor --json
{ "ok": false, "path": "/home/user/.openclaw/openclaw.json", "servers": [ { "name": "docs", "ok": false, "issues": [ { "level": "error", "message": "OAuth credentials are not authorized; run openclaw mcp login docs" } ] } ]}يخرج doctor --json برمز غير صفري عندما يحتوي أي خادم مفعّل خاضع للفحص على خطأ. تُبلّغ التحذيرات، لكنها لا تجعل الأمر يفشل وحدها.
probe --json
{ "path": "/home/user/.openclaw/openclaw.json", "generatedAt": "2026-05-31T09:00:00.000Z", "servers": { "docs": { "launch": "streamable-http https://mcp.example.com/mcp", "tools": 2, "resources": true, "prompts": false, "listChanged": { "tools": true, "resources": false, "prompts": false } } }, "tools": ["docs__read_page", "docs__search"], "diagnostics": []}يفتح probe جلسة عميل MCP حية. استخدمه لإثبات قابلية الوصول والإمكانات، لا لتدقيق التكوين الثابت.
مثال على شكل التكوين:
{ "mcp": { "servers": { "context7": { "command": "uvx", "args": ["context7-mcp"] }, "docs": { "url": "https://mcp.example.com", "transport": "streamable-http", "timeout": 20, "connectTimeout": 5, "supportsParallelToolCalls": true, "auth": "oauth", "oauth": { "scope": "docs.read" }, "sslVerify": true, "clientCert": "/path/to/client.crt", "clientKey": "/path/to/client.key", "toolFilter": { "include": ["search_*"], "exclude": ["admin_*"] } } } }}نقل Stdio
يطلق عملية فرعية محلية ويتواصل عبر stdin/stdout.
| الحقل | الوصف |
|---|---|
command |
الملف التنفيذي المراد تشغيله (مطلوب) |
args |
مصفوفة وسيطات سطر الأوامر |
env |
متغيرات بيئة إضافية |
cwd / workingDirectory |
دليل العمل للعملية |
نقل SSE / HTTP
يتصل بخادم MCP بعيد عبر HTTP Server-Sent Events.
| الحقل | الوصف |
|---|---|
url |
عنوان URL بنمط HTTP أو HTTPS للخادم البعيد (مطلوب) |
headers |
خريطة اختيارية من مفاتيح وقيم لترويسات HTTP (مثل رموز المصادقة) |
connectionTimeoutMs |
مهلة الاتصال لكل خادم بالمللي ثانية (اختياري) |
connectTimeout |
مهلة الاتصال لكل خادم بالثواني (اختياري) |
timeout / requestTimeoutMs |
مهلة طلب MCP لكل خادم بالثواني أو المللي ثانية |
auth: "oauth" |
استخدم تخزين رموز MCP OAuth وopenclaw mcp login |
sslVerify |
عيّنها إلى false فقط لنقاط نهاية HTTPS خاصة موثوق بها صراحة |
clientCert / clientKey |
مسارات شهادة ومفتاح عميل mTLS |
supportsParallelToolCalls |
تلميح إلى أن الاستدعاءات المتزامنة آمنة لهذا الخادم |
مثال:
{ "mcp": { "servers": { "remote-tools": { "url": "https://mcp.example.com", "auth": "oauth", "timeout": 20, "headers": { "Authorization": "Bearer <token>" } } } }}تُنقّح القيم الحساسة في url (userinfo) وheaders في السجلات وإخراج الحالة. يحذر openclaw mcp doctor عندما تحتوي إدخالات headers أو env التي تبدو حساسة على قيم نصية صريحة، حتى يتمكن المشغلون من نقل تلك القيم خارج التكوين المثبت.
سير عمل OAuth
OAuth مخصص لخوادم MCP عبر HTTP التي تعلن عن تدفق MCP OAuth. تُتجاهل ترويسات Authorization الثابتة لخادم ما أثناء تفعيل auth: "oauth".
Save the server
أضف الخادم أو حدّثه باستخدام auth: "oauth" وأي بيانات وصفية اختيارية لـ OAuth.
openclaw mcp set docs '{"url":"https://mcp.example.com/mcp","transport":"streamable-http","auth":"oauth","oauth":{"scope":"docs.read"}}'Start login
شغّل تسجيل الدخول لإنشاء طلب التفويض.
openclaw mcp login docsيطبع OpenClaw عنوان URL للتفويض ويخزن حالة محقق OAuth المؤقتة تحت دليل حالة OpenClaw.
Finish with the code
بعد الموافقة في المتصفح، مرر الرمز المُعاد إلى OpenClaw.
openclaw mcp login docs --code abc123Check authorization
استخدم الحالة أو doctor لتأكيد وجود الرموز.
openclaw mcp status --verboseopenclaw mcp doctor docs --probeClear credentials
يزيل تسجيل الخروج بيانات اعتماد OAuth المخزنة لكنه يبقي تعريف الخادم المحفوظ.
openclaw mcp logout docsإذا كان المزود يدوّر الرموز أو علقت حالة التفويض، فشغّل openclaw mcp logout <name>، ثم كرر login. يستطيع logout مسح بيانات الاعتماد لخادم HTTP محفوظ حتى بعد إزالة auth: "oauth" من التكوين، ما دام اسم الخادم وعنوان URL لا يزالان يحددان إدخال مخزن بيانات الاعتماد.
نقل Streamable HTTP
streamable-http خيار نقل إضافي إلى جانب sse وstdio. يستخدم بث HTTP للتواصل ثنائي الاتجاه مع خوادم MCP البعيدة.
| الحقل | الوصف |
|---|---|
url |
عنوان URL بنمط HTTP أو HTTPS للخادم البعيد (مطلوب) |
transport |
اضبطه على "streamable-http" لاختيار هذا النقل؛ عند إغفاله، يستخدم OpenClaw sse |
headers |
خريطة اختيارية من مفاتيح وقيم لترويسات HTTP (مثل رموز المصادقة) |
connectionTimeoutMs |
مهلة الاتصال لكل خادم بالمللي ثانية (اختياري) |
connectTimeout |
مهلة الاتصال لكل خادم بالثواني (اختياري) |
timeout / requestTimeoutMs |
مهلة طلب MCP لكل خادم بالثواني أو المللي ثانية |
auth: "oauth" |
استخدم تخزين رموز MCP OAuth وopenclaw mcp login |
sslVerify |
عيّنها إلى false فقط لنقاط نهاية HTTPS خاصة موثوق بها صراحة |
clientCert / clientKey |
مسارات شهادة ومفتاح عميل mTLS |
supportsParallelToolCalls |
تلميح إلى أن الاستدعاءات المتزامنة آمنة لهذا الخادم |
يستخدم تكوين OpenClaw transport: "streamable-http" كتهجئة معيارية. تُقبل قيم MCP الأصلية في CLI من نوع type: "http" عند حفظها عبر openclaw mcp set ويصلحها openclaw doctor --fix في التكوين الموجود، لكن transport هو ما يستهلكه OpenClaw المضمّن مباشرة.
مثال:
{ "mcp": { "servers": { "streaming-tools": { "url": "https://mcp.example.com/stream", "transport": "streamable-http", "connectTimeout": 10, "timeout": 30, "headers": { "Authorization": "Bearer <token>" } } } }}واجهة التحكم
تتضمن واجهة التحكم في المتصفح صفحة مخصصة لإعدادات MCP على /mcp. تعرض الصفحة أعداد الخوادم المكوّنة، وملخصات التفعيل/OAuth/المرشحات، وصفوف النقل لكل خادم، وعناصر تحكم التفعيل/التعطيل، وأوامر CLI الشائعة، ومحررا محدود النطاق لقسم تكوين mcp.
استخدم الصفحة لتعديلات المشغل والجرد السريع. استخدم openclaw mcp doctor --probe أو openclaw mcp probe عندما تحتاج إلى إثبات حي للخادم.
سير عمل المشغل:
- افتح واجهة التحكم واختر MCP.
- راجع بطاقات الملخص لإجمالي الخوادم والمفعّلة منها وخوادم OAuth والخوادم التي تمت تصفيتها.
- استخدم كل صف خادم للاطلاع على تلميحات النقل والمصادقة والمرشح والمهلة والأوامر.
- بدّل التفعيل عندما تريد الاحتفاظ بتعريف مع استبعاده من اكتشاف وقت التشغيل.
- حرّر قسم تكوين
mcpمحدود النطاق لإجراء تغييرات بنيوية مثل إضافة خوادم أو ترويسات أو TLS أو بيانات OAuth الوصفية أو مرشحات الأدوات. - اختر حفظ للاحتفاظ بالتكوين فقط، أو حفظ ونشر للتطبيق عبر مسار تكوين Gateway.
- شغّل
openclaw mcp doctor --probeعندما تحتاج إلى إثبات مباشر بأن الخادم المحرر يبدأ العمل ويعرض الأدوات.
ملاحظات:
- تقتبس مقتطفات الأوامر أسماء الخوادم حتى تظل الأسماء غير المعتادة قابلة للنسخ في الصدفة
- تُحجب القيم التي تبدو كعناوين URL قبل العرض عندما تحتوي على بيانات اعتماد مضمّنة
- لا تبدأ الصفحة عمليات نقل MCP من تلقاء نفسها
- قد تحتاج أوقات التشغيل النشطة إلى
openclaw mcp reloadأو نشر تكوين Gateway أو إعادة تشغيل العملية، بحسب العملية التي تملك عملاء MCP
الحدود الحالية
توثّق هذه الصفحة الجسر كما هو مشحون اليوم.
الحدود الحالية:
- يعتمد اكتشاف المحادثات على بيانات وصفية موجودة لمسار جلسة Gateway
- لا يوجد بروتوكول دفع عام يتجاوز المحوّل الخاص بـ Claude
- لا توجد أدوات لتعديل الرسائل أو التفاعل معها بعد
- يتصل نقل HTTP/SSE/streamable-http بخادم بعيد واحد؛ ولا يوجد منبع متعدد الإرسال بعد
- لا يتضمن
permissions_list_openسوى الموافقات التي تمت ملاحظتها أثناء اتصال الجسر