Remarque
La stratégie des serveurs MCP dans Copilot pour les entreprises et les organisations, désactivée par défaut, contrôle l’utilisation du MCP.
À propos des capacités d'agent de Copilot et du MCP
Les capacités d'action de Copilot font référence à la capacité de travailler de manière autonome en exécutant des workflows en plusieurs étapes sans assistance constante, prendre des décisions en choisissant les outils et les approches appropriés en fonction du contexte, et itérer et adapter en adaptant son approche en fonction des commentaires et des résultats. Vous pouvez accéder à ces fonctionnalités à l’aide du mode agent.
Lorsqu'il est associé à des serveurs MCP (Model Context Protocol), le mode agent devient nettement plus puissant, permettant à Copilot d'accéder à des ressources externes sans changer de contexte. Cela permet à Copilot d'effectuer des « boucles » agissantes, au cours desquelles il peut adapter dynamiquement son approche en recherchant de manière autonome les informations pertinentes, en analysant les commentaires et en prenant des décisions éclairées. Avec MCP, Copilot peut accomplir une tâche avec une intervention humaine minimale, en ajustant continuellement sa stratégie en fonction de ce qu'il découvre.
Avantages de la combinaison de MCP avec le mode agent
Lorsque vous utilisez des serveurs MCP avec le mode agent, vous déverrouillez plusieurs avantages clés :
- **Contexte étendu **: les serveurs MCP fournissent à Copilot un accès à des sources de données externes, des API et des outils.
- **Effort manuel réduit **: Copilot peut effectuer des tâches telles que la création de tickets et l'exécution de flux de travail pendant que vous vous concentrez sur des tâches à plus forte valeur ajoutée.
- **Intégration transparente **: Copilot peut travailler sur une tâche impliquant plusieurs outils et plateformes sans changer de contexte ni nécessiter d'intégrations personnalisées.
Meilleures pratiques pour l’utilisation de MCP avec le mode agent
Suivez ces bonnes pratiques pour tirer le meilleur parti de la combinaison des serveurs MCP avec le mode agent.
Stratégies d'incitation
- Soyez spécifique sur les objectifs : définissez clairement ce que vous souhaitez accomplir dans votre invite et la sortie souhaitée.
- Fournissez desde contexte : incluez des informations d’arrière-plan pertinentes sur votre projet et les exigences, y compris des liens vers des ressources externes auxquelles Copilot peuvent accéder.
- Définir des limites : spécifiez les contraintes ou limitations de la tâche. Par exemple, si vous souhaitez que Copilot se contente de planifier une nouvelle fonctionnalité sans encore apporter de modifications, précisez-le. Vous pouvez également limiter les outils MCP activés.
- Confirmations de la requête: demandez à Copilot de confirmer sa compréhension avant de procéder à des modifications importantes.
- Utilisez des fichiers de prompt ou des instructions personnalisées.: vous pouvez créer des fichiers de messages ou des fichiers d'instructions personnalisés pour guider Copilot sur la manière de se comporter pour différents serveurs MCP. Consultez À propos de la personnalisation des réponses de GitHub Copilot Chat.
Utilisation du serveur MCP
- Choisissez les serveurs appropriés: sélectionnez et activez les serveurs MCP qui s’alignent sur vos besoins de flux de travail spécifiques.
- Démarrer simplement : commencez par quelques serveurs MCP bien établis avant d’ajouter des intégrations plus complexes.
- Tester la connectivité: vérifiez que tous les serveurs MCP sont correctement configurés et accessibles avant de démarrer les tâches en mode agent.
Considérations de sécurité
- **Utilisez OAuth lorsque cela est possible **: pour les serveurs MCP tels que GitHub MCP, privilégiez l'authentification OAuth plutôt que personal access tokens. Consultez Utilisation du serveur MCP GitHub.
- Limiter les autorisations : accordez uniquement aux serveurs MCP les autorisations minimales nécessaires pour vos tâches.
- Vérifier les connexions : auditez régulièrement les serveurs MCP qui ont accès à votre environnement de développement.
- Surveiller l’activité : suivez les actions que Copilot effectuent via des serveurs MCP.
- Empêcher les fuites de secrets : la protection d’envoi (push) empêche les secrets d’être inclus dans les réponses générées par l’IA et vous empêche d’exposer des secrets via les actions que vous effectuez à l’aide du serveur MCP GitHub. Cette fonctionnalité est actuellement disponible uniquement pour les référentiels publics. Consultez À propos de la protection push.
Exemple de scénario : Implémentation de la conformité de l’accessibilité
Remarque
Le scénario suivant est destiné uniquement à illustrer les modèles et les stratégies que vous pouvez utiliser avec le mode agent et les serveurs MCP pour effectuer une tâche du début à la fin ; le scénario, les invites et les réponses ne sont que des exemples.
Supposons que votre équipe a reçu des commentaires indiquant que votre portail client doit être mis à jour pour se conformer aux dernières normes d’accessibilité. Vous avez été chargé d’améliorer l’accessibilité dans l’application avec les instructions suivantes :
- Liste des spécifications définies par l’équipe de conception.
- Problèmes créés dans le référentiel de votre projet après un audit d’accessibilité.
Vous pouvez utiliser le mode agent Copilot pour exploiter plusieurs serveurs MCP afin de mettre en œuvre efficacement des améliorations en matière d'accessibilité.
Le scénario ci-dessous montre comment utiliser des invites distinctes pour différentes phases (recherche, planification, implémentation et validation), ce qui entraîne l’alignement libre de plusieurs « boucles » agentiques avec les phases de cycle de vie du développement logiciel. Cette approche crée des points de contrôle naturels où vous pouvez examiner les progrès réalisés, fournir des commentaires et ajuster vos exigences avant que Copilot ne passe à la phase suivante.
- Conditions préalables
- Configuration des serveurs MCP
- Étape 1 : Boucle de recherche - Analyse des exigences d’accessibilité
- Étape 2 : Boucle de planification - Stratégie d’implémentation de l’accessibilité
- Étape 3 : Boucle d’implémentation - Amélioration de l’accessibilité
- Étape 4 : Boucle de test - Vérification de l’accessibilité avec Playwright
- Étape 5 : Mise à jour des problèmes GitHub
- Pour aller plus loin
Prérequis
Avant d’utiliser le mode agent avec MCP, vérifiez que vous disposez des points suivants :
- Un IDE avec intégration Copilot et prise en charge MCP (tel que Visual Studio Code)
- Mode agent activé
- Accès aux serveurs MCP requis que vous souhaitez utiliser
Configuration des serveurs MCP
Tout d'abord, vous devez configurer les serveurs MCP dont vous pensez que Copilot aura besoin. Pour cet exemple, nous utiliserons :
-
**GitHub Serveur MCP **: Configurez le serveur MCP GitHub pour permettre à Copilot d'accéder à votre référentiel, d'examiner votre base de code, de rechercher les problèmes existants, de créer des branches et de gérer les requêtes de tirage. Consultez Utilisation du serveur MCP GitHub.
-
**Serveur Figma MCP **: Configurez le serveur Figma MCP pour permettre à Copilot d'accéder aux fichiers de conception qui incluent des spécifications d'accessibilité, telles que les exigences en matière de contraste des couleurs, les états de focus et les modèles d'interaction. Voir Figma-Context-MCP ou essayez le serveur Dev Mode MCP en version bêta ouverte.
-
Serveur MCP Playwright : Configurez le serveur Playwright MCP pour permettre à Copilot d'écrire et d'exécuter des tests d'accessibilité automatisés, notamment des tests de compatibilité avec les lecteurs d'écran et de navigation au clavier. Voir mcp-playwright.
Étape 1 : Boucle de recherche - Analyse des exigences d’accessibilité
Demandez à Copilot d'analyser à la fois les exigences en matière d'accessibilité et les problèmes existants liés à l'accessibilité GitHub dans le projet.
Dans votre invite, incluez un lien vers le fichier Figma. Pour que Copilot puisse lire et analyser correctement les spécifications de conception, sélectionnez un nœud ou une couche spécifique dans le fichier afin que l’ID de nœud soit inclus dans l’URL.
Exemples d’invite 1
I need to make our customer portal WCAG 2.1 AA compliant. Use the Figma MCP to analyze our design specifications at https://figma.com/design/DESIGN-FILE-FOR-ACCESSIBILITY-SPECS?node-id=NODE_ID for accessibility requirements. Also use the GitHub MCP to find open GitHub issues with the labels accessibility or WCAG in the customer-portal repository. Then sort them into categories and list each issue that falls under the category with the issue title and number.
I need to make our customer portal WCAG 2.1 AA compliant. Use the Figma MCP to analyze our design specifications at https://figma.com/design/DESIGN-FILE-FOR-ACCESSIBILITY-SPECS?node-id=NODE_ID for accessibility requirements. Also use the GitHub MCP to find open GitHub issues with the labels accessibility or WCAG in the customer-portal repository. Then sort them into categories and list each issue that falls under the category with the issue title and number.
Exemples de réponse 1
Copilot doit d'abord répondre en demandant à exécuter les outils à partir des serveurs Figma et GitHub MCP. Une fois que vous l'avez autorisé, Copilot analysera les spécifications de conception Figma, recherchera les problèmes GitHub et les classera par catégories.
Par exemple, Copilot peut identifier le contraste des couleurs comme une catégorie en se basant sur plusieurs problèmes liés à celui-ci.
- Problèmes de contraste des couleurs
- Problème n° 134 : Rapport de contraste du texte du tableau de bord inférieur à 4,5:1
- Problème n° 156 : Les états d’erreur de formulaire ne répondent pas aux exigences de contraste
Cela vous donne un aperçu complet des exigences en matière d'accessibilité, que vous pouvez ensuite faire classer par ordre de priorité par Copilot et pour lesquelles vous pouvez établir un plan.
Étape 2 : Boucle de planification - Stratégie d’implémentation de l’accessibilité
Ensuite, demandez à Copilot de créer un plan de mise en œuvre détaillé.
Exemple d'invite 2
Based on your accessibility analysis of our Figma designs and GitHub issues, create a focused implementation plan for an immediate pull request addressing the highest priority accessibility issues. Don't make any changes yet. Also suggest follow-up issues we should create for the remaining Figma specifications.
Based on your accessibility analysis of our Figma designs and GitHub issues, create a focused implementation plan for an immediate pull request addressing the highest priority accessibility issues. Don't make any changes yet. Also suggest follow-up issues we should create for the remaining Figma specifications.
Exemple de réponse 2
Copilot répondra en créant un plan de mise en œuvre prioritaire axé sur les problèmes d'accessibilité à fort impact pour une requête de tirage immédiate, tout en suggérant des problèmes de suivi pour le travail restant.
Par exemple, Copilot peut identifier les mesures à prendre pour résoudre les problèmes liés à la catégorie « contraste des couleurs ».
- 1. Corrections du contraste des couleurs :
- Mettre à jour les variables de couleur de texte dans variables.scss pour garantir un rapport de contraste 4,5:1 pour tout le texte normal
- Modifier les couleurs des composants de l’interface utilisateur dans DashboardCard.vue et d’autres composants principaux pour répondre au ratio de contraste 3:1
- Hiérarchiser la résolution du problème #134 (contraste de texte du tableau de bord) et problème n° 156 (états d’erreur de formulaire)
Vous pouvez requêter à Copilot d'ajuster le plan en fonction de ce sur quoi vous souhaitez vous concentrer. Le résultat est un plan qui vous convient et que vous pouvez désormais requêter à Copilot de mettre en œuvre.
Étape 3 : Boucle d’implémentation - Amélioration de l’accessibilité
Le résultat est un plan qui vous convient et que vous pouvez désormais requêter à Copilot de mettre en œuvre.
Exemple de prompt 3
Create a new branch and implement the critical accessibility fixes according to your proposed implementation plan. Focus on the top three categories that you identified as highest priority. Create a pull request with proper references to the issues being fixed.
Create a new branch and implement the critical accessibility fixes according to your proposed implementation plan. Focus on the top three categories that you identified as highest priority. Create a pull request with proper references to the issues being fixed.
Exemples de réponse 3
Copilot répondra en exécutant le plan de mise en œuvre, en apportant les modifications ciblées au code afin de résoudre les problèmes d'accessibilité identifiés et en créant une requête de tirage.
Par exemple, Copilot peut créer une nouvelle branche appelée fix/critical-accessibility-issues
et apporter des modifications pour résoudre les problèmes de contraste des couleurs.
- Correction des problèmes de contraste de texte du tableau de bord (problème n° 134) :
- Variables de couleur de texte mises à jour dans
src/styles/variables.scss
de n° 767676 vers n° 595959- Texte foncé modifié sur des arrière-plans gris clair dans
DashboardCard.vue
pour garantir un rapport de 4,5:1J’ai ouvert la requête de tirage n° 213 avec ces modifications.
Étape 4 : Boucle de test - Vérification de l’accessibilité avec Playwright
Vous pouvez requêter à Copilot de créer et d'exécuter des tests d'accessibilité à l'aide du MCP Playwright.
Exemple de prompt 4
Create focused accessibility tests for the components we've updated in the pull request. Use the Playwright MCP.
Create focused accessibility tests for the components we've updated in the pull request. Use the Playwright MCP.
Exemples de réponse 4
Copilot répondra en développant des tests d'accessibilité et, si nécessaire, en créant un fichier de configuration Playwright.
Par exemple, Copilot peut créer un fichier de test sur le contraste du texte.
Implémentation de test :
- Création d’un fichier de test ciblé dans
tests/accessibility/
:
contrast.spec.ts
- Valide les ratios de contraste de texte
Une fois les tests créés, Copilot requêtera l'autorisation d'utiliser divers outils du Playwright MCP pour exécuter les tests. Notez que parfois Copilot peut effectuer des tests supplémentaires que vous n’avez pas nécessairement demandé ; vous pouvez essayer d’éviter cela en ajustant votre invite de façon à ce qu’elle soit plus stricte.
Étape 5 : Mise à jour des problèmes GitHub
Enfin, demandez à Copilot de mettre à jour les problèmes GitHub qui ont été traités dans la requête de tirage, et créez des problèmes de suivi.
Exemple de prompt 5
Update the GitHub issues we've fixed in the pull request with comments summarizing the changes. Create the follow-up issues you suggested for the remaining accessibility work.
Update the GitHub issues we've fixed in the pull request with comments summarizing the changes. Create the follow-up issues you suggested for the remaining accessibility work.
Exemples de réponse 5
Copilot répondra en demandant l'autorisation d'utiliser les outils nécessaires à partir du serveur MCP GitHub. Il mettra ensuite à jour les problèmes GitHub avec des commentaires détaillés et créera des problèmes de suivi structurés pour le travail restant.
Par exemple, Copilot ajoutera des commentaires sur les problèmes de contraste des couleurs initialement identifiés lors de l'étape de recherche.
Problèmes mis à jour avec les commentaires :
- Problème n° 134 : Rapport de contraste du texte du tableau de bord inférieur à 4,5:1’’
- Commentaire : « Corrigé dans PR n° 213 en mettant à jour les variables de couleur du texte dans variables.scss et le composant DashboardCard. Tout le texte du tableau de bord répond désormais au rapport de contraste 4,5:1, vérifié par les tests automatisés.»
Vous pouvez maintenant passer en revue la requête de tirage et effectuer les ajustements. Une fois que vous avez vérifié que les modifications sont valides, vous pouvez fusionner comme avec n’importe quelle autre requête de tirage.
Travaux pratiques
Essayez l'exercice Intégrer MCP avec GitHub Copilot Exercice de compétences pour une expérience pratique de l'intégration de MCP avec GitHub Copilot.
Pour aller plus loin
- Notions de base de MCP: pour plus d’informations sur la configuration et la configuration des serveurs MCP, consultez Étendre GitHub Copilot Chat avec le protocole MCP (Model Context Protocol).
- Utilisation des serveurs MCP : pour plus d’idées sur l’intégration de MCP à GitHub Copilot, consultez 5 façons de transformer votre flux de travail à l’aide de GitHub Copilot et MCP sur the GitHub Blog.