/ الدليل / الملعب / MCP-Nest
● مجتمع rekog-labs ⚡ فوري

MCP-Nest

بواسطة rekog-labs · rekog-labs/MCP-Nest

وحدة NestJS تحول خدماتك الموجودة إلى خادم MCP — DI والحراس والتحقق الذي تستخدمه بالفعل، معروض الآن للذكاء الاصطناعي.

MCP-Nest هي وحدة NestJS (وليست MCP مستقلة) تضيف إمكانيات MCP إلى أي تطبيق Nest. تعرض الأدوات والموارد والأوامر عبر المزخرفات؛ تدعم نقل البيانات عبر stdio/HTTP+SSE/Streamable HTTP؛ تتكامل مع حراس NestJS للمصادقة. مثالية عندما يكون الخادم الخلفي لديك بالفعل Nest وتريد للوكيلات أن تستدعيها.

لماذا تستخدمه

الميزات الأساسية

عرض مباشر

كيف يبدو في الممارسة

nest.replay ▶ جاهز
0/0

التثبيت

اختر العميل

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "nest": {
      "command": "npx",
      "args": [
        "-y",
        "MCP-Nest"
      ],
      "_inferred": true
    }
  }
}

افتح Claude Desktop → Settings → Developer → Edit Config. أعد التشغيل بعد الحفظ.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "nest": {
      "command": "npx",
      "args": [
        "-y",
        "MCP-Nest"
      ],
      "_inferred": true
    }
  }
}

يستخدم Cursor نفس مخطط mcpServers مثل Claude Desktop. إعدادات المشروع أولى من الإعدادات العامة.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "nest": {
      "command": "npx",
      "args": [
        "-y",
        "MCP-Nest"
      ],
      "_inferred": true
    }
  }
}

انقر على أيقونة MCP Servers في شريط Cline الجانبي، ثم "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "nest": {
      "command": "npx",
      "args": [
        "-y",
        "MCP-Nest"
      ],
      "_inferred": true
    }
  }
}

نفس الصيغة مثل Claude Desktop. أعد تشغيل Windsurf لتطبيق التغييرات.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "nest",
      "command": "npx",
      "args": [
        "-y",
        "MCP-Nest"
      ]
    }
  ]
}

يستخدم Continue مصفوفة من كائنات الخادم بدلاً من خريطة.

~/.config/zed/settings.json
{
  "context_servers": {
    "nest": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "MCP-Nest"
        ]
      }
    }
  }
}

أضف إلى context_servers. يعيد Zed التحميل تلقائيًا عند الحفظ.

claude mcp add nest -- npx -y MCP-Nest

أمر من سطر واحد. تحقق باستخدام claude mcp list. احذف باستخدام claude mcp remove.

حالات الاستخدام

استخدامات عملية: MCP-Nest

اعرض خادمك الخلفي NestJS الموجود كـ MCP

👤 فرق NestJS التي تحتاج وكلاؤها إلى استدعاء واجهات برمجية داخلية ⏱ ~45 min intermediate

متى تستخدمه: إذا كنت لا تريد إعادة كتابة منطق الخدمة في Python أو TS MCP SDK — أعد استخدام ما تم اختباره بالفعل.

المتطلبات الأساسية
  • تطبيق NestJS 10+ — مشروعك الموجود
  • تثبيت @rekog/mcp-nest — npm i @rekog/mcp-nest
الخطوات
  1. سجل الوحدة
    أضف McpModule.forRoot({name: 'acme', version: '1.0'}) إلى app.module.ts.✓ تم النسخ
    → يبدأ التطبيق؛ نقطة نهاية /mcp موجودة
  2. زخرف طريقة الخدمة كأداة
    في TicketsService، زخرف searchTickets مع @Tool({name:'search_tickets', description:'...'}) وموضع Zod. تنطبق حراس المصادقة الموجودة بالفعل.✓ تم النسخ
    → تظهر الأداة في قائمة أدوات Claude
  3. وصل المصادقة
    طبق JwtAuthGuard الموجود على متحكم MCP بحيث تحتاج الوكيلات إلى رمز حامل صالح.✓ تم النسخ
    → تعود استدعاءات غير مصرح بها 401

النتيجة: تستهلك وكلاؤك الخادم الخلفي الحقيقي — نفس التحقق، نفس المصادقة، لا يوجد تكرار خدمة.

المزالق
  • مزج الأدوات المحددة بنطاق المستخدم والخدمة يخلق التباسًا في المصادقة — قسم إلى وحدتي MCP: واحدة مع JWT المستخدم، وواحدة مع رمز الخدمة

بناء أداة تفاعلية تطلب من المستخدم المدخلات أثناء الاستدعاء

👤 مطورو Nest الذين ينشئون تدفقات وكيل متقدمة ⏱ ~30 min advanced

متى تستخدمه: تحتاج أداتك إلى تأكيد أو سر لا يجب أن يمتلكه الوكيل بشكل افتراضي.

الخطوات
  1. استخدم واجهة برمجية الاستخراج داخل أداة
    في أداة delete_account، قبل الحذف، استخرج تأكيدًا مكتوبًا من المستخدم (الشخص الحقيقي، وليس الوكيل).✓ تم النسخ
    → يطالب الوكيل المستخدم في الدردشة؛ يستمر فقط عند التأكيد

النتيجة: الإجراءات التي لا يمكن عكسها محمية بمدخلات بشرية حتى من خلال وكيل.

قدم بيانات Nest الديناميكية كموارد MCP

👤 الفرق التي تريد للوكيلات أن تقرأ بيانات حديثة، وليس لقطات قديمة ⏱ ~35 min advanced

متى تستخدمه: تحتاج الوكيلات إلى رؤية الحالة المباشرة (بناء، نشر، قائمة انتظار التذاكر) كسياق، وليس عبر استدعاء أداة.

الخطوات
  1. أعلن عن قالب مورد
    أنشئ @Resource('ticket://{id}') يعيد JSON التذكرة بواسطة id.✓ تم النسخ
    → يمكن للوكيل الإشارة إلى ticket://123 والحصول على محتوى مباشر
  2. اشترك في التحديثات
    أصدر تحديثات عندما تتغير التذكرة بحيث يرى المشتركون الحالة الطازجة دون الاستقصاء✓ تم النسخ
    → إشعارات MCP الفورية للعملاء المشتركين

النتيجة: سياق مباشر بدلاً من اللقطات — يرى الوكيل ما يراه المستخدم.

التركيبات

اجمعها مع خوادم MCP أخرى لتحقيق نتائج x10

nest + golf

متجر Python + متجر TS يبنيان MCPs بنفس طريقة الإطار أولاً

انقل ميزات Python Golf MCP الخاصة بنا إلى خادم MCP-Nest لفريق Nest — قارن سهولة الاستخدام.✓ تم النسخ
nest + mcptools

تحقق من مخططات الأدوات أثناء CI قبل النشر

في CI، شغل MCP Nest وشغل mcp tools للتأكد من قائمة الأدوات المتوقعة.✓ تم النسخ

الأدوات

ما يوفره هذا الـ MCP

الأداةالمدخلاتمتى تستدعيهاالتكلفة
@Tool({...}) decorator method args validated via Zod schema ضع علامة على أي طريقة خدمة Nest كأداة MCP standard Nest method cost
@Resource({...}) decorator URI template params اعرض الموارد الديناميكية والثابتة standard Nest cost
@Prompt({...}) decorator prompt vars شحن الأوامر كرمز مرقم 0

التكلفة والحدود

تكلفة التشغيل

حصة API
يعتمد على خدماتك
الرموز لكل استدعاء
يعتمد على إخراج الأداة
التكلفة المالية
Free, MIT
نصيحة
أضف حراس حجم الاستجابة على الأدوات التي تعيد القوائم — ستؤدي قائمة غير محدودة من التذاكر إلى نفاد ميزانيات الرموز بسرعة

الأمان

الصلاحيات والأسرار ونطاق الأثر

تخزين بيانات الاعتماد: إعداد Nest القياسي؛ استخدم @nestjs/config + مديري الأسرار
نقل البيانات الخارجي: أينما تذهب خدمات Nest الخاصة بك

استكشاف الأخطاء

الأخطاء الشائعة وحلولها

الأداة لا تظهر في Claude

تأكد من تسجيل الفئة في موفر الوحدة وأن استيراد المزخرف من @rekog/mcp-nest وليس نسخة قديمة

تحقق: curl http://localhost:3000/mcp tools/list
أخطاء التحقق من صحة Zod في وقت التشغيل

مخطط الرسم البياني الخاص بك لا يطابق المدخلات الفعلية التي يرسلها الوكيل — شدد الأوصاف بحيث يملأ النموذج الحقول الصحيحة

اتصال SSE ينقطع كل 30 ثانية

انقطاع البروكسي العكسي؛ اضبط keepalive في nginx على 60 ثانية أو أكثر أو استخدم نقل HTTP القابل للبث بدلاً من ذلك

البدائل

MCP-Nest مقابل البدائل

البديلمتى تستخدمهاالمقايضة
TS MCP SDK (رسمي)إذا كنت لا تستخدم NestJS وتريد SDK الخاملا DI، لا حراس، تسلك كل شيء
Golfخادم خلفي Pythonلغة مختلفة؛ طموحات إطار عمل مماثلة
FastMCPPython، أبسط من Golfأدوات مؤسسة أقل

المزيد

الموارد

📖 اقرأ ملف README الرسمي على GitHub

🐙 تصفح القضايا المفتوحة

🔍 تصفح أكثر من 400 خادم MCP و Skills