Exposer les services C# existants en tant qu'outils MCP
Quand l'utiliser : Vous disposez d’une bibliothèque métier fonctionnelle en C# et devez la rendre accessible aux agents.
Prérequis
- SDK .NET 8+ — https://dotnet.microsoft.com/download
- Forfait MCPSharp — dotnet ajouter le package MCPSharp
Déroulement
-
Méthodes de décorationAjoutez [McpTool] aux méthodes publiques que je souhaite exposer dans mon OrdersService. Conservez les signatures ; laissez MCPSharp valider.✓ Copié→ Attributs appliqués, documents XML utilisés comme descriptions
-
Démarrer le serveurAjoutez un point d'entrée Program.cs qui appelle MCPServer.StartAsync("orders", "1.0.0").✓ Copié→ Fonctionne via dotnet ; Les clients MCP peuvent découvrir des outils
-
Connectez-vous à Claude DesktopÉmettez un extrait de code claude_desktop_config.json qui lance mon binaire dotnet.✓ Copié→ Bloc de configuration avec command=dotnet args=[run --project, path]
Résultat : Un serveur MCP alimenté par vos services C#, avec peu de nouveau code.
Pièges
- Rendre de gros objets sans les façonner — Renvoyez les DTO - ne sérialisez pas les entités EF avec des propriétés de navigation, vous ferez exploser les réponses