Le protocole MCP continue toujours de gagner en popularité. Au travers de Copilot Studio, Microsoft propose, jour après jour, de plus en plus de connecteurs MCP, disponibles directement sur étagère. Mais qu’en est-il, lorsque le connecteur MCP vers la solution souhaitée n’existe pas encore ? Rassurez-vous, la mise en place d’un serveur MCP personnalisé est tout à fait possible dans Copilot Studio.

Il s’agit du 3ème article parlant du Model Context Protocol (MCP) écrit sur ce blog, dont voici un rappel des deux premiers :
Enfin, un autre article détaille le principe des instructions personnalisées et la mémoire disponibles sur Microsoft 365 Copilot et accessibles juste ici.
Mais qu’est-ce que MCP ?
Le Model Context Protocol (MCP) est un protocole qui permet à des assistants IA de se connecter de façon sécurisée à des sources de données et outils externes… bla bla … 🤣

Mais, si cette notion est nouvelle pour vous, je ne peux vous conseiller que de commencer par regarder cette excellente vidéo :
Comment tester un serveur MCP sur Copilot ?
Il est très simple et très rapide de tester un serveur MCP depuis l’application Desktop de Claude.
Les démonstrations mixant un serveur Custom MCP et Copilot sont encore un peu rares pour le moment, mais elles vont vite devenir légion. Mais, durant mes recherches, je suis tombé sur cet exercice, disponible sur un Bootcamp Copilot créé par Microsoft :
Cette petite démonstration MCP n’est pas révolutionnaire en soi, mais je la trouve bien pensée, car elle est très simple à mettre en place, et elle permet de comprendre comment Copilot va pouvoir se connecter avec les données de test via le serveur MCP.
Que contient cette démonstration ?
Nous allons commencer par déployer un serveur MCP de test servant à la gestion fictive de candidats RH. Le serveur est basé sur du .NET, et s’appuie sur le SDK MCP pour C#. Le serveur fournit des outils permettant de gérer la liste de candidats HR :
- Lister les candidats
- Rechercher un candidat
- Ajouter un candidat
- Mettre à jour un candidat
- Supprimer un candidat
Une fois le serveur MCP en place, on va à l’intégrer à Microsoft 365 Copilot, via Copilot Studio, afin de gérer la liste de candidats RH via des prompts appelant ces outils MCP.
Aussi je vous propose donc de faire cet exercice ensemble 😎
- Etape 0 – Rappel des prérequis
- Etape I – Mise en place du serveur MCP
- Etape II – Création de l’agent Copilot
- Etape III – Connexion entre l’agent et le serveur MCP
- Etape IV – Publication de l’agent
- Etape V – Tests dans Teams et Microsoft 365 Copilot
Etape 0 – Rappel des prérequis :
Pour réaliser cet exercice, il vous faudra disposer des outils suivants sur votre poste :
Une fois ces prérequis installés sur votre poste. Nous allons pouvoir continuer en commençant par installer et configurer notre serveur MCP.
Etape I – Mise en place du serveur MCP :
Commencez par téléchargez l’archive du serveur MCP via ce lien GitHub :

Une fois l’archive ZIP sur votre poste, pensez à débloquer celle-ci via ses propriétés :

Décompressez-la dans un dossier local de votre choix :

Ouvrez Visual Studio Code, puis cliquez sur “Ouvrir un dossier” afin de sélectionner le dossier que vous venez de décompresser :

Prenez un moment pour parcourir la structure du projet.
Vous y trouverez :
- un dossier Configuration avec le fichier HRMCPServerConfiguration.cs,
- un dossier Data contenant candidates.json,
- un dossier Services avec l’interface et l’implémentation CandidateService.cs,
- un dossier Tools avec les définitions des outils et modèles (HRTools.cs, Models.cs),
- et le fichier Program.cs, point d’entrée du projet.

Ouvrez une fenêtre de terminal intégrée dans Visual Studio Code, puis exécutez la commande suivante :
dotnet run

Copiez l’URL locale qui s’affiche dans le terminal :
http://localhost:47002/
Ouvrez le navigateur internet de votre choix, puis collez l’URL. Vous devriez voir apparaître un message d’erreur au format JSON : c’est le comportement attendu et cela confirme que le serveur est bien démarré.

Ngrok est un outil de tunnellisation qui permet d’exposer de manière sécurisée un serveur local à Internet via une URL publique, sans avoir à configurer manuellement votre réseau ou à ouvrir des ports dans votre pare-feu.
Pour cela, rendez-vous sur le site de Ngrok, puis inscrivez-vous chez eux afin d’avoir un compte gratuit :

Sur leur site, téléchargez l’installateur de Ngrok selon votre OS :

Copiez la commande suivante affichée sous l’installateur pour finaliser la configuration de votre Ngrok :

Depuis votre ordinateur, ouvrez Windows PowerShell, puis lancez la commande précédemment copiée afin de terminer la configuration Ngrok :

Créez un tunnel ngrok sécurisé depuis Internet vers votre serveur local qui écoute sur le port 47002, en générant une URL publique accessible depuis n’importe quel navigateur :
ngrok http http://localhost:47002

Copiez le nom de domaine commençant par https et finissant par ngrok-fre.app. Ne fermez pas cette fenêtre tant que le processus d’enrôlement API n’est pas entièrement fini :

Cliquez sur le lien public affiché par votre tunnel (ngrok / Dev Tunnel) afin de vérifier que l’URL redirige bien vers votre service local.

Constatez l’affichage de la même réponse JSON “d’erreur” que sur localhost : cela confirme que la liaison via le tunnel fonctionne correctement.

Ouvrez une fenêtre PowerShell, lancez la commande suivante afin de télécharger et exécuter le binaire MCP Inspector sans installation globale
npx @modelcontextprotocol/inspector
Patientez quelques secondes : MCP Inspector génère son URL locale et un token d’accès.

MCP ouvre automatiquement le navigateur web, collez l’URL publique de votre serveur MCP ngrok, puis cliquez sur Connecter :

Une fois connecté, cliquez sur le bouton pour lister les outils disponibles exposés par ce serveur MCP.

Sélectionnez un des outils proposés (par exemple list_candidates), puis cliquez ici pour l’exécuter :

Constatez l’apparition des résultats liés aux candidats RH retournés par le serveur MCP.

Le serveur MCP est opérationnel ; poursuivez dans Copilot Studio afin de créer votre agent et consommer les outils exposés par ce serveur.
Etape II – Création de l’agent Copilot :
Ouvrez le portail Microsoft Copilot Studio, puis cliquez ici pour créer un nouvel agent :

Cliquez sur Configurer, renseignez les informations de base, puis cliquez sur Créer :
- Nom :
HR Candidate Management
- Description :
An AI assistant that helps manage HR candidates using MCP server integration for comprehensive candidate management
- Instructions :
You are a helpful HR assistant that specializes in candidate management. You can help users search for candidates, check their availability, get detailed candidate information, and add new
candidates to the system.
Always provide clear and helpful information about candidates, including their skills, experience, contact details, and availability status.

Attendez environ 1 minute que la création se termine, sans fermer la page.

Descendez en bas de la page, ajoutez des “Prompts suggérés” en lien avec la gestion des candidats RH , puis sauvegardez :
- List all candidates
List all the candidates
Search candidates
Search for candidates with name [NAME_TO_SEARCH]
Add new candidate
Add a candidate with firstname [FIRSTNAME], lastname [LASTNAME], e-mail [EMAIL], role [ROLE], spoken languages [LANGUAGES], and skills [SKILLS]

Votre agent de base est prêt ; vous allez maintenant lui ajouter de la puissance en intégrant le serveur MCP.
Etape III – Connexion entre l’agent et le serveur MCP :
Toujours sur votre agent dans Copilot Studio, ouvrez l’onglet Outils, puis cliquez ici pour ajouter un nouvel outil :

Cliquez ici afin de créer un outil personnalisé :

Sélectionnez Model Context Protocol pour ajouter un serveur MCP :

Nommez le serveur MCP, ajoutez une description, collez l’URL publique générée par votre tunnel ngrok, laissez Authentication de base, puis cliquez sur Créer :

À la création, lancez l’établissement d’une connexion entre votre agent et l’outil MCP :

Cliquez sur Créer pour créer la connexion :

Cliquez ici pour ajouter et configurer l’outil dans l’agent :

Revenez sur la liste des outils, entrez dans l’outil MCP que vous venez d’ajouter en cliquant dessus :

Vérifiez la bonne connexion via la liste des outils exposés par le serveur MCP qui doit se récupérer correctement :

La connexion au serveur MCP est en place, il ne nous reste plus qu’à publier l’agent sur des canaux comme Teams.
Etape IV – Publication de l’agent :
Cliquez sur le bouton de test afin d’envoyer un prompt simple pour vérification :

Constatez l’apparition des résultats retournés par le serveur MCP dans le panneau de test :

Cliquez sur Publier pour publier votre agent :

Confirmez votre choix dans la boîte de dialogue :

Attendez la fin du processus de publication.

Ouvrez l’onglet des Canaux, cliquez sur Teams and Microsoft 365 Copilot, cochez l’option pour rendre l’agent disponible dans Microsoft 365 Copilot, puis cliquez sur Ajouter des canaux :

Patientez pendant l’enregistrement des paramètres du canal :

Revenez à l’agent et cliquez à nouveau sur republier en tenant compte du nouveau canal :

Confirmez votre choix dans la boîte de dialogue :

Votre agent est en ligne, il ne nous reste plus qu’à le tester dans Teams et Microsoft 365 Copilot.
Etape V – Tests dans Teams et Microsoft 365 Copilot :
Toujours sur la page de l’agent créé sur le portail de Copilot Studio, cliquez ici pour ajouter cet agent dans Microsoft 365 :

Cliquez sur Ajouter afin d’ajouter l’agent à votre portail Microsoft 365 Copilot :

Retrouvez l’agent dans la liste de gauche des agents disponibles :

Revenez sur Microsoft Copilot Studio pour ajouter le canal Teams :

Sur Teams, puis cliquez sur ici afin d’ajouter cet agent :

Dans Teams ou Microsoft 365 Copilot, lancez un prompt parmi les prompts suggérés :

Constatez l’apparition du résultat MCP lié au prompt exécuté.

Demandez à l’agent de retrouver un seul candidat via des critères précis, puis validez le résultat MCP affiché :

Demandez la suppression de ce candidat, vérifiez la confirmation :

Ouvrez MCP Inspector pour constater sa disparition de la liste :

Demandez l’ajout d’une caractéristique (par ex. une langue parlée) à un candidat, puis validez la mise à jour retournée par l’agent :

Revenez dans MCP Inspector, puis confirmez que la nouvelle caractéristique apparaît bien pour ce candidat :

Demandez l’ajout d’un nouveau candidat, puis constatez la confirmation :

Vérifiez dans MCP Inspector que l’enregistrement du nouveau candidat a bien été créé :

Demandez l’ajout d’un candidat en joignant un PDF de CV en exemple, puis validez le résultat fourni par l’agent :

Dans MCP Inspector, confirmez l’apparition du candidat associé au fichier PDF précédemment téléversé :

Conclusion
Vous avez mis en place un serveur MCP en local, l’avez exposé en URL publique via un tunnel, l’avez inspecté avec MCP Inspector, puis intégré dans Copilot Studio avant de le publier et de le tester dans Teams / Microsoft 365 Copilot.
À vous maintenant de créer un véritable agent opérationnel capable d’appeler des outils MCP pour gérer vos données directement depuis l’interface Copilot.
Pour aller plus loin, je vous recommande ce tutoriel pratique de Shervin Shaffie, qui montre comment créer un agent prêt pour la production sans écrire une seule ligne de code. Il vous montre comment connecter DocuSign, de la connexion à la publication, étape par étape :
