Le défi de la migration vers Fluent UI Blazor V5
Microsoft Fluent UI Blazor version 5 apporte une multitude de nouvelles fonctionnalités, de breaking changes et de refactorisations. Avec plus de 142 composants disponibles, parcourir la documentation pour trouver le bon paramètre, comprendre une enum ou adapter votre code existant peut vite devenir chronophage.
Et si votre assistant IA — GitHub Copilot, Claude, Cursor — pouvait accéder directement à la documentation complète de chaque composant, y compris aux guides de migration ?
C’est exactement ce que propose le Fluent UI Blazor MCP Server.
Qu’est-ce qu’un serveur MCP ?
Le Model Context Protocol (MCP) est un standard ouvert qui permet aux agents IA d’accéder à des sources de données externes — outils, API, documentation — via un protocole unifié. Concrètement, un serveur MCP expose des tools (invoqués automatiquement par l’IA) et des resources (attachées manuellement à une conversation) que votre IDE peut exploiter.
Au lieu de copier-coller la documentation dans votre prompt, le serveur MCP la rend nativement accessible à l’IA.
Le Fluent UI Blazor MCP Server
J’ai contribué à la création de ce serveur MCP, désormais disponible sous forme de package NuGet officiel. Il donne à votre assistant IA un accès complet à la documentation de Fluent UI Blazor V5 :
Tools disponibles (invoqués automatiquement par l’IA)
| Tool | Description |
|---|---|
ListComponents |
Liste tous les composants disponibles, avec filtrage optionnel par catégorie |
GetComponentDetails |
Documentation complète d’un composant (paramètres, événements, méthodes) |
SearchComponents |
Recherche de composants par nom ou description |
GetEnumValues |
Explore les types enum et leurs valeurs |
GetComponentEnums |
Liste les enums utilisées par un composant donné |
ListDocumentationTopics |
Liste tous les sujets de documentation |
GetDocumentationTopic |
Documentation détaillée sur un sujet (installation, localisation, styles…) |
SearchDocumentation |
Recherche dans la documentation par mot-clé |
GetMigrationGuide |
Guide de migration complet vers la V5 |
Resources disponibles (attachées par l’utilisateur)
| URI | Description |
|---|---|
fluentui://components |
Liste complète de tous les composants par catégorie |
fluentui://categories |
Liste des catégories avec le nombre de composants |
fluentui://enums |
Liste complète de tous les types enum avec leurs valeurs |
fluentui://component/{name} |
Documentation détaillée d’un composant spécifique |
fluentui://category/{name} |
Composants d’une catégorie donnée |
fluentui://enum/{name} |
Détails d’un type enum |
fluentui://documentation |
Liste de tous les sujets de documentation |
fluentui://documentation/{topic} |
Documentation d’un sujet spécifique |
fluentui://documentation/migration |
Guide de migration vers la V5 |
Installation
Option 1 : outil global .NET (recommandé)
Installez le serveur MCP en tant qu’outil global :
dotnet tool install -g Microsoft.FluentUI.AspNetCore.McpServer
Configurez ensuite votre fichier .vscode/mcp.json :
{
"servers": {
"fluent-ui-blazor": {
"command": "fluentui-mcp"
}
}
}
Option 2 : utiliser dnx (aucune installation requise)
Si vous utilisez .NET 10+, vous pouvez recourir au script dnx pour exécuter le serveur à la volée :
{
"servers": {
"fluent-ui-blazor": {
"type": "stdio",
"command": "dnx",
"args": [
"Microsoft.FluentUI.AspNetCore.McpServer",
"--yes"
]
}
}
}
Cette méthode télécharge automatiquement la dernière version depuis NuGet.org. Vous pouvez aussi épingler une version précise :
dnx Microsoft.FluentUI.AspNetCore.McpServer@5.0.1
Option 3 : compiler depuis les sources
Pour contribuer au serveur ou le personnaliser :
cd src/Tools/McpServer
dotnet build
{
"servers": {
"fluent-ui-blazor": {
"type": "stdio",
"command": "dotnet",
"args": [
"run",
"--project",
"src/Tools/McpServer/Microsoft.FluentUI.AspNetCore.McpServer.csproj"
],
"env": {
"DOTNET_ENVIRONMENT": "Development"
}
}
}
}
Exemples d’utilisation concrets
Une fois le serveur MCP configuré, votre assistant IA peut répondre à des questions comme :
« Quels composants de type Button sont disponibles ? »
→ L’IA invoque automatiquement ListComponents(category: "Button") et renvoie la liste complète.
« Comment utiliser FluentDataGrid avec tri et pagination ? »
→ L’IA appelle GetComponentDetails(componentName: "FluentDataGrid") et récupère tous les paramètres, événements et méthodes documentés.
« Quelle enum utiliser pour l’apparence d’un bouton ? »
→ GetEnumValues(enumName: "Appearance") renvoie toutes les valeurs possibles.
« Comment migrer mon code de la V4 vers la V5 ? »
→ GetMigrationGuide() fournit le guide de migration complet directement dans le contexte de l’IA.
Architecture : sécurité et performance
Le serveur MCP a été conçu selon des principes de sécurité stricts :
| Caractéristique | Détail |
|---|---|
| Lecture seule | Aucune modification du système de fichiers |
| Aucun accès réseau | Fonctionne entièrement hors ligne |
| Documentation pré-générée | Aucune exécution de code au runtime |
| Exécution sandboxée | S’exécute comme processus enfant de votre IDE |
| Aucune donnée sensible | Ne sert que la documentation publique de l’API |
| Open source | Code entièrement auditable sur GitHub |
L’architecture repose sur un JSON de documentation pré-généré au build time à partir de la documentation XML du projet, puis embarqué comme ressource dans le package. Cela garantit un démarrage rapide et une documentation toujours cohérente avec la version du package.
┌─────────────────────────────────────────────────┐
│ FluentUI.Demo.DocApiGen (Build Time) │
│ ├── Uses LoxSmoke.DocXml │
│ └── Generates FluentUIComponentsDocumentation.json
└─────────────────────────────────────────────────┘
│
▼ (PreBuild / EmbeddedResource)
┌─────────────────────────────────────────────────┐
│ McpServer (Runtime) │
│ └── Reads JSON from embedded resource │
└─────────────────────────────────────────────────┘
Compatible avec Visual Studio Code ET Visual Studio 2026
Le serveur MCP fonctionne avec :
- Visual Studio Code via
.vscode/mcp.json - Visual Studio 2026 via
.mcp.jsonà la racine de la solution - Tout client MCP compatible (MCP Inspector, Claude Desktop, etc.)
Pourquoi c’est un game-changer pour la V5
Migrer vers une nouvelle version majeure d’une bibliothèque de composants est toujours un moment délicat. Avec le Fluent UI Blazor MCP Server :
- Fini les recherches dans la doc — L’IA a un accès natif à toute la documentation
- Guide de migration intégré —
GetMigrationGuide()fournit les breaking changes et les étapes de migration - Découverte des composants — Vous ne connaissez pas encore les 142+ composants ? L’IA peut les présenter par catégorie
- Prototypage accéléré — Demandez à l’IA de générer un
FluentDataGridavec pagination — elle connaît tous les paramètres
Liens utiles
- Package NuGet — Microsoft.FluentUI.AspNetCore.McpServer
- Dépôt GitHub — microsoft/fluentui-blazor
- Site de démo Fluent UI Blazor
- What’s New — Fluent UI Blazor
- Model Context Protocol — Spécification
- Documentation dnx (.NET 10)
Conclusion
Le Fluent UI Blazor MCP Server transforme votre assistant IA en expert Fluent UI Blazor. Fini les allers-retours entre votre IDE et la documentation — tout est directement accessible au sein de votre conversation avec l’IA.
Si vous démarrez votre migration vers la V5 ou lancez un nouveau projet Blazor avec Fluent UI, installez le serveur MCP — votre productivité vous remerciera.
dotnet tool install -g Microsoft.FluentUI.AspNetCore.McpServer
Happy coding !