فشل تسجيل MCP OAuth عند الاتصال بـ Claude.ai

أحاول توصيل Claude.ai بمثيل n8n ذاتي الاستضافة (v2.30.7) باستخدام ميزة Instance-level MCP (Preview)، لكنني أتلقى هذا الخطأ من Claude:
“لم يتمكن من التسجيل في خدمة تسجيل الدخول في n8n. يمكنك المحاولة مرة أخرى، أو إضافة معرّف عميل OAuth في إعدادات الموصل.”
تفاصيل الإعداد:

  • n8n مستضاف ذاتياً، يعمل محلياً، معرّض عبر ngrok (نفق https)
  • Instance-level MCP مفعّل
  • لقد أضفت عنوان URL إعادة التوجيه المطلوب (https://claude.ai/api/mcp/auth_callback) ضمن إعدادات OAuth وحفظته بنجاح
  • لدي سير عمل واحد منشور مع Chat Trigger، وكان الوصول إلى MCP مفعّلاً
  • تظهر سجلات ngrok أن Claude تقوم بجلب /.well-known/oauth-authorization-server و /.well-known/oauth-protected-resource بنجاح (200 OK)، لكن لا يظهر أي طلب POST إلى نقطة نهاية /register أبداً — متبوعاً بـ 401 Unauthorized على /mcp-server/http
  • تبويب “العملاء المتصلين” يظهر دائماً “لا توجد عملاء OAuth متصلون”
    يبدو أن Claude غير قادرة على إكمال تسجيل العميل الديناميكي مع مثيل n8n الخاص بي. هل هذا تحديد معروف لميزة MCP في الإصدار الأولي، أم هناك طريقة يدوية لتسجيل عميل OAuth / الحصول على معرّف عميل وسر لـ n8n حتى أتمكن من إدخاله يدوياً على جانب Claude؟
    شكراً لك مقدماً!

وصف المشكلة/الخطأ/السؤال

ما هي رسالة الخطأ (إن وجدت)؟

يرجى مشاركة سير عملك

(حدد العقد على قماشك واستخدم اختصارات لوحة المفاتيح CMD+C/CTRL+C و CMD+V/CTRL+V لنسخ ولصق سير العمل.)

شارك الإخراج الذي أرجعته العقدة الأخيرة

معلومات عن إعداد n8n الخاص بك

  • إصدار n8n:
  • قاعدة البيانات (الافتراضي: SQLite):
  • إعداد n8n EXECUTIONS_PROCESS (الافتراضي: own, main):
  • تشغيل n8n عبر (Docker, npm, n8n cloud, تطبيق سطح المكتب):
  • نظام التشغيل:

مرحباً @Elma_Akter أهلاً وسهلاً!
n8n يبني عناوين URL لنقطة نهاية OAuth التي يعلنها في مستندات .well-known (authorize و token ونقطة نهاية التسجيل الديناميكي) من عنوان URL الأساسي الخاص به، وهو خلف ngrok لا يزال يعتمد افتراضياً على http://localhost:5678. يجلب Claude هذه المستندات بشكل جيد عبر النفق، وهو ما يمثل 200s الخاص بك، ثم ينشر تسجيل العميل إلى نقطة نهاية التسجيل localhost التي قرأها منها، لذا فإن الطلب لا يصل أبداً إلى مثيلك، ولا يظهر أي استدعاء /register في ngrok، وتعيد /mcp-server/http 401 بدون عميل متصل.

وجّه عنوان URL العام إلى عنوان https الخاص بك في ngrok حتى تكون نقاط النهاية المعلنة قابلة للوصول، ثم أعد التشغيل:

N8N_HOST=<your-subdomain>.ngrok-free.app
N8N_PROTOCOL=https
N8N_EDITOR_BASE_URL=https://<your-subdomain>.ngrok-free.app/
WEBHOOK_URL=https://<your-subdomain>.ngrok-free.app/
N8N_PROXY_HOPS=1

أعد تشغيل n8n، وأعد فتح Settings > Instance-level MCP، وانسخ عنوان URL لخادم OAuth مرة أخرى، وأعد الاتصال من Claude. سيقوم التسجيل الديناميكي للعميل الآن بنشر نقطة نهاية ngrok العامة وسيتم تسجيل العميل، لذا لن تحتاج إلى إدخال معرّف العميل يدويًا.