بناء خادم MCP في .NET يكشف عن خدماتك الموجودة
متى تستخدمه: إذا كنت تعمل مع .NET وتريد كشف منطق الأعمال للوكلاء بدون إعادة كتابة.
المتطلبات الأساسية
- .NET 8+ SDK —
dotnet --version
الخطوات
-
إنشاء المشروعdotnet new console -n MyMcpServer. أضف
ModelContextProtocolNuGet. استخدم قالب الاستضافة البسيط لـ MCP.✓ تم النسخ→ ملف csproj و Program.cs مع خدمة MCP مستضافة -
إضافة أداةأنشئ فئة ثابتة بـ
[McpServerToolType]. أضف دالةGetOrder(string id)مزينة بـ[McpServerTool(Description="...")]تستدعي OrderService الموجود لديك عبر DI.✓ تم النسخ→ تجميع الأداة بنجاح، والوصف يأتي من السمة -
الاختبار باستخدام المفتشقم بتشغيل الخادم كـ stdio. شغل مفتش MCP عبر
npx @modelcontextprotocol/inspector dotnet run. استدعِ GetOrder.✓ تم النسخ→ استدعاء الأداة يعيد JSON الطلب
النتيجة: خادم MCP مترجم ومكتوب بشكل آمن يعيد استخدام خدمات .NET الموجودة وحاوية حقن التبعيات.
المزالق
- أساليب الأداة التي تكون أساليب نسخة على فئة تحتاج حقن التبعيات للعمل — سجل الفئة المالكة في ServiceCollection؛ يحل SDK عبر حقن التبعيات
- الأساليب غير المتزامنة بدون رموز الإلغاء المناسبة تتعطل عند الإيقاف — قبول
CancellationToken ctكمعامل أخير على كل أداة — SDK يحقنها