Partager via


Exposer l’API REST dans Gestion des API en tant que serveur MCP

S’APPLIQUE À : De base | Standard | Premium

Dans Gestion des API, vous pouvez exposer une API REST gérée dans Gestion des API en tant que serveur MCP (Remote Model Context Protocol). Exposez une ou plusieurs opérations d’API en tant qu’outils que les clients MCP peuvent appeler à l’aide du protocole MCP.

L’utilisation de Gestion des API pour exposer des serveurs MCP distants offre un contrôle centralisé sur l’authentification, l’autorisation et la surveillance. Il simplifie le processus d’exposition d’API en tant que serveurs MCP tout en aidant à atténuer les risques de sécurité courants et à garantir l’extensibilité.

Remarque

Cette fonctionnalité est actuellement en préversion. Il est publié en premier dans AI Gateway Earlygroupe de mises à jour. Après avoir rejoint le groupe, l’accès aux fonctionnalités du serveur MCP peut prendre 2 heures.

Dans cet article, vous allez apprendre à :

  • Exposer une API REST dans Gestion des API en tant que serveur MCP
  • Configurer des stratégies pour le serveur MCP
  • Tester le serveur MCP généré à partir d’un client MCP

À propos des serveurs MCP

Les agents IA sont de plus en plus largement adoptés en raison des fonctionnalités améliorées du modèle de langage volumineux (LLM). Toutefois, même les modèles les plus avancés sont confrontés à des limitations en raison de leur isolation à partir de données externes. Chaque nouvelle source de données nécessite potentiellement des implémentations personnalisées pour extraire, préparer et rendre les données accessibles pour les modèles.

Le protocole MCP ( Model Context Protocol ) permet de résoudre ce problème. MCP est une norme ouverte pour connecter des modèles et des agents IA avec des sources de données externes telles que des sources de données locales (bases de données ou fichiers ordinateurs) ou des services distants (systèmes disponibles sur Internet, tels que des bases de données ou des API distantes).

Architecture MCP

Le diagramme suivant illustre l’architecture MCP :

Diagramme de l’architecture MCP (Model Context Protocol).

L’architecture est constituée des composants suivants :

Composant Descriptif
Hôtes MCP Applications LLM telles que les applications de conversation ou les assistants IA dans vos IDE (comme GitHub Copilot dans Visual Studio Code) qui doivent accéder aux fonctionnalités externes
Clients MCP Clients de protocole, à l’intérieur de l’application hôte, qui gèrent des connexions 1:1 avec des serveurs
Serveurs MCP Programmes légers qui exposent chacune des fonctionnalités spécifiques et fournissent un contexte, des outils et des invites aux clients
Protocole MCP Couche de transport au milieu

MCP suit une architecture client-serveur où une application hôte peut se connecter à plusieurs serveurs. Chaque fois que votre hôte ou client MCP a besoin d’un outil, il se connecte au serveur MCP. Le serveur MCP se connecte ensuite à une base de données ou une API, par exemple. Les hôtes et serveurs MCP se connectent les uns avec les autres via le protocole MCP.

Serveurs MCP distants et locaux

MCP utilise une architecture client-hôte-serveur basée sur JSON-RPC 2.0 pour la messagerie. La communication entre les clients et les serveurs se produit sur des couches de transport définies et prend en charge principalement deux modes d’opération :

  • Serveurs MCP distants : les clients MCP se connectent aux serveurs MCP via Internet, établissent une connexion à l’aide d’événements HTTP et envoyés par le serveur (SSE) et autorisent l’accès du client MCP aux ressources sur le compte de l’utilisateur à l’aide d’OAuth.

  • Serveurs MCP locaux Les clients MCP se connectent aux serveurs MCP sur le même ordinateur, à l’aide d’une entrée/sortie standard comme méthode de transport locale.

Conditions préalables

  • Suivez le guide de démarrage rapide suivant : Créer une instance du service Gestion des API Azure. Actuellement, seuls les niveaux Premium, Standard et De base de gestion des API prennent en charge les serveurs MCP.
  • Assurez-vous que votre instance gère une API REST que vous souhaitez exposer en tant que serveur MCP. Pour importer un exemple d’API, consultez Importer et publier votre première API.

    Remarque

    Seules les API HTTP de Gestion des API peuvent être exposées en tant que serveurs MCP.

  • Pour tester le serveur MCP, vous pouvez utiliser Visual Studio Code avec l’accès à GitHub Copilot.

Exposer l’API en tant que serveur MCP

  1. Dans le portail Azure, accédez à la préversion du serveur MCP à l’URL suivante :

    https://portal.azure.com/?Microsoft_Azure_ApiManagement=mcp
    
  2. Accédez à votre instance API Management.

  3. Dans le menu de gauche, sélectionnez API>Serveurs> MCP+ Créer un serveur MCP.

  4. Dans l’API, sélectionnez une API REST à exposer en tant que serveur MCP.

  5. Sélectionnez une ou plusieurs opérations d’API à exposer en tant qu’outils. Vous pouvez sélectionner toutes les opérations ou uniquement des opérations spécifiques.

  6. Cliquez sur Créer.

Capture d’écran de la création d’un serveur MCP dans le portail.

Le serveur MCP est créé et les opérations d’API sont exposées en tant qu’outils. Le serveur MCP est répertorié dans le volet Serveurs MCP . La colonne URL affiche le point de terminaison du serveur MCP que vous pouvez appeler pour tester ou dans une application cliente.

Capture d’écran de la liste des serveurs MCP dans le portail.

Configurer des stratégies pour le serveur MCP

Configurez une ou plusieurs stratégies gestion des API pour vous aider à gérer le serveur MCP. Les stratégies sont appliquées à toutes les opérations d’API exposées en tant qu’outils dans le serveur MCP et peuvent être utilisées pour contrôler l’accès, l’authentification et d’autres aspects des outils.

Pour obtenir un didacticiel sur la configuration des stratégies, consultez Transformer et protéger votre API.

Pour configurer des stratégies pour le serveur MCP :

  1. Dans le portail, sous API, sélectionnez Serveurs MCP.

  2. Sélectionnez le serveur MCP que vous avez créé.

  3. Dans le menu de gauche, sous MCP, sélectionnez Stratégies.

  4. Dans l’éditeur de stratégie, ajoutez ou modifiez les stratégies que vous souhaitez appliquer aux outils du serveur MCP. Les stratégies sont définies au format XML. Par exemple, vous pouvez ajouter une stratégie pour limiter les appels aux outils du serveur MCP (dans cet exemple, 5 appels par 30 secondes par adresse IP du client).

     <rate-limit-by-key calls="5" renewal-period="30" counter-key="@(context.Request.IpAddress)" remaining-calls-variable-name="remainingCallsPerIP" />
    

    Capture d’écran de l’éditeur de stratégie pour un serveur MCP.

Tester et utiliser le serveur MCP

Pour vérifier que le serveur MCP fonctionne, vous pouvez utiliser Visual Studio Code pour envoyer des demandes aux outils serveur MCP.

Dans Visual Studio Code, utilisez la conversation GitHub Copilot en mode agent (préversion) pour ajouter le serveur MCP et utiliser les outils. Pour plus d’informations sur les serveurs MCP dans Visual Studio Code, consultez Utiliser des serveurs MCP dans VS Code (préversion).

Conseil / Astuce

Si vous utilisez l’inspecteur MCP pour tester un serveur MCP créé par Gestion des API, nous vous recommandons d’utiliser la version 0.9.0.

Ajouter le serveur MCP dans Visual Studio Code

Pour ajouter le serveur MCP dans Visual Studio Code :

  1. Utilisez la commande MCP : Ajouter un serveur à partir de la palette de commandes.

  2. Lorsque vous y êtes invité, sélectionnez le type de serveur : HTTP (HTTP ou Événements envoyés du serveur).

  3. Entrez l’URL du serveur MCP dans Gestion des API. Exemple : https://<apim-service-name>.azure-api.net/<api-name>-mcp/sse (pour le point de terminaison SSE) ou https://<apim-service-name>.azure-api.net/<api-name>-mcp/mcp (pour le point de terminaison MCP)

  4. Entrez un ID de serveur de votre choix.

  5. Indiquez si vous souhaitez enregistrer la configuration dans les paramètres de votre espace de travail ou les paramètres utilisateur.

    • Paramètres de l’espace de travail : la configuration du serveur est enregistrée dans un .vscode/mcp.json fichier disponible uniquement dans l’espace de travail actuel.

    • Paramètres utilisateur : la configuration du serveur est ajoutée à votre fichier global settings.json et est disponible dans tous les espaces de travail. La configuration ressemble à ce qui suit :

    Capture d’écran des serveurs MCP configurés dans Visual Studio Code.

Ajoutez des champs à la configuration JSON pour les paramètres tels que l’en-tête d’authentification. L’exemple suivant montre la configuration d’une clé d’abonnement Gestion des API passée dans un en-tête comme valeur d’entrée. En savoir plus sur le format de configuration

Capture d’écran de la configuration de l’en-tête d’authentification pour un serveur MCP

Utiliser des outils en mode agent

Après avoir ajouté un serveur MCP, vous pouvez utiliser des outils en mode agent.

  1. Dans la conversation GitHub Copilot, sélectionnez le mode Agent et sélectionnez le bouton Outils pour afficher les outils disponibles.

    Capture d’écran du bouton Outils dans la conversation.

  2. Sélectionnez un ou plusieurs outils du serveur MCP à mettre à disposition dans la conversation.

    Capture d’écran de la sélection d’outils dans Visual Studio Code.

  3. Entrez un message dans le chat pour appeler l'outil. Par exemple, si vous avez sélectionné un outil pour obtenir des informations sur une commande, vous pouvez demander à l’agent une commande.

    Get information for order 2
    

    Sélectionnez Continuer pour afficher les résultats. L’agent utilise l’outil pour appeler le serveur MCP et retourne les résultats dans la conversation.

    Capture d’écran des résultats de conversation dans Visual Studio Code.