Managed Airflow (3e génération) | Managed Airflow (2e génération) | Managed Airflow (ancienne 1re génération)
Ce document explique comment utiliser le serveur MCP (Model Context Protocol) distant Managed Service pour Apache Airflow afin de se connecter à Managed Service pour Apache Airflow à partir d'applications d'IA telles que Gemini CLI, ChatGPT, Claude ou dans des applications d'IA que vous développez. Le serveur MCP Managed Airflow vous permet de gérer les environnements Managed Airflow et d'obtenir des informations sur les exécutions DAG et les tâches Airflow.
Le Model Context Protocol (MCP) standardise la façon dont les grands modèles de langage (LLM) et les applications ou agents d'IA se connectent à des sources de données externes. Les serveurs MCP vous permettent d'utiliser leurs outils, ressources et requêtes pour effectuer des actions et obtenir des données à jour à partir de leur service de backend.
Quelle est la différence entre les serveurs MCP locaux et distants ?
- Serveurs MCP locaux
- S'exécutent généralement sur votre machine locale et utilisent les flux d'entrée et de sortie standards (stdio) pour la communication entre les services sur le même appareil.
- Serveurs MCP distants
- s'exécute sur l'infrastructure du service et propose un point de terminaison HTTP aux applications d'IA pour la communication entre le client AI MCP et le serveur MCP. Pour en savoir plus sur l'architecture MCP, consultez Architecture MCP.
Google et les serveurs MCP distants Google Cloud
Les serveurs MCP Google et Google Cloud distants présentent les fonctionnalités et avantages suivants :- Découverte simplifiée et centralisée
- Points de terminaison HTTP mondiaux ou régionaux gérés
- Autorisations précises
- Sécurité facultative des requêtes et des réponses avec la protection Model Armor
- Journalisation d'audit centralisée
Pour en savoir plus sur les autres serveurs MCP, ainsi que sur les contrôles de sécurité et de gouvernance disponibles pour les serveurs MCP Google Cloud, consultez Présentation des serveurs MCP Google Cloud.
Avant de commencer
- Connectez-vous à votre compte Google Cloud . Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits sans frais pour exécuter, tester et déployer des charges de travail.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.
Enable the Managed Airflow API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
Installez la Google Cloud CLI.
-
Si vous utilisez un fournisseur d'identité (IdP) externe, vous devez d'abord vous connecter à la gcloud CLI avec votre identité fédérée.
-
Pour initialiser la gcloud CLI, exécutez la commande suivante :
gcloud init -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.
Enable the Managed Airflow API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
Installez la Google Cloud CLI.
-
Si vous utilisez un fournisseur d'identité (IdP) externe, vous devez d'abord vous connecter à la gcloud CLI avec votre identité fédérée.
-
Pour initialiser la gcloud CLI, exécutez la commande suivante :
gcloud init
Rôles requis
Pour obtenir les autorisations nécessaires pour activer le serveur MCP Managed Service for Apache Airflow, demandez à votre administrateur de vous accorder les rôles IAM suivants sur le projet dans lequel vous souhaitez activer le serveur MCP Managed Service for Apache Airflow :
- Administrateur Service Usage (
roles/serviceusage.serviceUsageAdmin) -
Effectuer des appels d'outils MCP :
Utilisateur de l'outil MCP (
roles/mcp.toolUser)
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.
Authentification et autorisation
Le serveur MCP distant Managed Service for Apache Airflow utilise le protocole OAuth 2.0 avec Identity and Access Management (IAM) pour l'authentification et l'autorisation. Toutes les Google Cloud identités sont acceptées pour l'authentification auprès des serveurs MCP.Nous vous recommandons de créer une identité distincte pour les agents qui utilisent les outils MCP afin de pouvoir contrôler et surveiller l'accès aux ressources. Pour en savoir plus sur l'authentification, consultez S'authentifier auprès des serveurs MCP.
Niveaux d'accès OAuth du MCP Managed Service pour Apache Airflow
OAuth 2.0 utilise des niveaux d'accès et des identifiants pour déterminer si un compte principal authentifié est autorisé à effectuer une action spécifique sur une ressource. Pour en savoir plus sur les champs d'application OAuth 2.0 chez Google, consultez Utiliser OAuth 2.0 pour accéder aux API Google.
Managed Service pour Apache Airflow dispose des champs d'application OAuth suivants pour l'outil MCP :
| URI du champ d'application pour gcloud CLI | Description |
|---|---|
https://www.googleapis.com/auth/cloudcomposer.readonly |
Octroie un accès ne permettant que de lire les données. |
https://www.googleapis.com/auth/cloudcomposer |
Octroie un accès permettant de lire et de modifier les données. |
Configurer un client MCP pour utiliser le serveur MCP Managed Service pour Apache Airflow
Les applications et agents d'IA, tels que Claude ou Gemini CLI, peuvent instancier un client MCP qui se connecte à un seul serveur MCP. Une application d'IA peut avoir plusieurs clients qui se connectent à différents serveurs MCP. Pour se connecter à un serveur MCP distant, le client MCP doit connaître l'URL du serveur MCP distant.
Dans votre application d'IA, recherchez un moyen de vous connecter à un serveur MCP distant. Vous êtes invité à saisir des informations sur le serveur, comme son nom et son URL.
Pour le serveur MCP Managed Service pour Apache Airflow, saisissez les informations requises :
- Nom du serveur : serveur MCP Managed Service pour Apache Airflow
- Point de terminaison : composer.{region}.rep.googleapis.com/mcp
- Transport : HTTP
- Informations d'authentification : selon la méthode d'authentification que vous souhaitez utiliser, vous pouvez saisir vos identifiants Google Cloud , votre ID client et votre code secret OAuth, ou l'identité et les identifiants d'un agent. Pour en savoir plus sur l'authentification, consultez S'authentifier auprès des serveurs MCP.
- Champ d'application OAuth : champ d'application OAuth 2.0 que vous souhaitez utiliser lorsque vous vous connectez au serveur MCP Managed Service for Apache Airflow.
Pour obtenir des conseils spécifiques à l'hôte sur la configuration et la connexion au serveur MCP, consultez les articles suivants :
Pour obtenir des conseils plus généraux, consultez les ressources suivantes :
Outils disponibles
Les outils MCP en lecture seule ont l'attribut MCP mcp.tool.isReadOnly défini sur true. Vous pouvez choisir d'autoriser uniquement les outils en lecture seule dans certains environnements via la règle de votre organisation.
Pour afficher les détails des outils MCP disponibles et leurs descriptions pour le serveur MCP Managed Service pour Apache Airflow, consultez la documentation de référence sur le serveur MCP Managed Service pour Apache Airflow.
Outils de liste
Utilisez l'inspecteur MCP pour lister les outils ou envoyez une requête HTTP tools/list directement au serveur MCP distant Managed Service pour Apache Airflow. La méthode tools/list ne nécessite pas d'authentification.
POST /mcp HTTP/1.1
Host: composer.{region}.rep.googleapis.com/mcp
Content-Type: application/json
{
"jsonrpc": "2.0",
"method": "tools/list",
}
Exemples de cas d'utilisation
Voici quelques exemples de cas d'utilisation du serveur MCP Managed Service pour Apache Airflow :
Décrire l'état de l'environnement
Dans cet exemple de cas d'utilisation, vous posez des questions sur les environnements de votre projet.
Recherchez tous les environnements Managed Airflow dans us-central1 qui ne sont pas en cours d'exécution pour le moment. Si l'un d'eux est en état d'erreur, indique-moi l'heure à laquelle cet environnement a été mis à jour pour la dernière fois et la configuration des charges de travail de l'environnement.
Workflow : la description des environnements Managed Airflow peut ressembler à ce qui suit.
- Afficher la liste des environnements : l'agent utilise
list_environmentspour obtenir la liste des environnements dans la région spécifiée, ainsi que des informations sur la date de la dernière mise à jour.
Créer un environnement Managed Airflow avec des packages PyPI personnalisés
Dans cet exemple d'utilisation, vous allez créer un environnement Managed Airflow, puis y installer des packages PyPI personnalisés.
Exemple de requête :
Créez un environnement Managed Airflow (3e génération) avec Airflow 2 dans votre projet. Installez ensuite le package nltk[machine_learning].
Utilisez l'adresse example-account@example-project.iam.gserviceaccount.com
compte de service de l'environnement.
Workflow : la création d'un environnement Managed Airflow et l'installation de packages PyPI personnalisés peuvent se présenter comme suit.
Créer un environnement : l'agent utilise
create_environmentpour créer un environnement avec les paramètres de configuration fournis. L'agent demande des paramètres de configuration supplémentaires, tels que la liste des adresses IP autorisées à accéder à l'interface utilisateur Airflow.Installer des packages : l'agent appelle
manage_pypi_packagespour installer le package PyPI spécifié.
Résoudre les problèmes liés aux exécutions et aux tâches de DAG ayant échoué
Vérifiez l'environnement Managed Airflow example-environment-name dans
us-central1. Le DAG example_dag échoue. Je veux savoir pourquoi et à quelle tâche précisément. Indique-moi également les autres DAG qui ont échoué dans cet environnement au cours des dernières 24 heures.
Workflow : voici un exemple de dépannage des exécutions de DAG ayant échoué.
Obtenir les exécutions de DAG ayant échoué : l'agent utilise
find_last_failed_dag_runspour obtenir la liste des exécutions de DAG ayant échoué pour le DAGexample_dagdans l'environnement spécifié. L'agent utilise le même outil pour obtenir la liste de toutes les exécutions de DAG ayant échoué.Inspectez l'exécution du DAG ayant échoué : l'agent appelle
list_failed_task_instancespour obtenir la liste des instances de tâches de l'exécution du DAG qui sont à l'état "Échec".Analyser les journaux des tâches ayant échoué : l'agent utilise
get_task_instancepour obtenir les détails de l'instance de tâche ayant échoué, y compris les données requises pour récupérer les journaux.Inspecter le code source du DAG : l'agent utilise
get_dag_source_codepour analyser le code source de la tâche ayant échoué et détecter les erreurs.
Configurations de sécurité et de protection facultatives
MCP introduit de nouveaux risques et considérations de sécurité en raison de la grande variété d'actions que vous pouvez effectuer avec les outils MCP. Pour minimiser et gérer ces risques,Google Cloud propose des paramètres par défaut et des règles personnalisables permettant de contrôler l'utilisation des outils MCP dans votre organisation ou votre projet Google Cloud.
Pour en savoir plus sur la sécurité et la gouvernance de MCP, consultez Sécurité et sûreté de l'IA.
Utiliser Model Armor
Model Armor est un serviceGoogle Cloud conçu pour améliorer la sécurité de vos applications d'IA. Il fonctionne en analysant de manière proactive les requêtes et les réponses des LLM, en protégeant contre divers risques et en favorisant les pratiques d'IA responsable. Que vous déployiez l'IA dans votre environnement cloud ou chez des fournisseurs de services cloud externes, Model Armor peut vous aider à prévenir les entrées malveillantes, à vérifier la sécurité du contenu, à protéger les données sensibles, à assurer la conformité et à appliquer vos règles de sécurité de l'IA de manière cohérente dans votre paysage d'IA diversifié.
Lorsque Model Armor est activé avec la journalisation activée, il enregistre l'intégralité de la charge utile. Cela peut exposer des informations sensibles dans vos journaux.
Activer Model Armor
Vous devez activer les API Model Armor avant de pouvoir utiliser Model Armor.
Console
Activez l'API Model Armor.
Rôles requis pour activer les API
Pour activer les API, vous avez besoin du rôle IAM Administrateur Service Usage (
roles/serviceusage.serviceUsageAdmin), qui contient l'autorisationserviceusage.services.enable. Découvrez comment attribuer des rôles.Sélectionnez le projet dans lequel vous souhaitez activer Model Armor.
gcloud
Avant de commencer, suivez ces étapes à l'aide de la Google Cloud CLI avec l'API Model Armor :
Dans la console Google Cloud , activez Cloud Shell.
En bas de la console Google Cloud , une session Cloud Shell démarre et affiche une invite de ligne de commande. Cloud Shell est un environnement shell dans lequel Google Cloud CLI est déjà installé, et dans lequel des valeurs sont déjà définies pour votre projet actuel. L'initialisation de la session peut prendre quelques secondes.
-
Exécutez la commande suivante pour définir le point de terminaison de l'API pour le service Model Armor.
gcloud config set api_endpoint_overrides/modelarmor "https://modelarmor.LOCATION.rep.googleapis.com/"
Remplacez
LOCATIONpar la région dans laquelle vous souhaitez utiliser Model Armor.
Configurer la protection pour les serveurs MCP Google et Google Cloud distants
Pour protéger les appels et les réponses de votre outil MCP, vous pouvez utiliser les paramètres de plancher Model Armor. Un paramètre de plancher définit les filtres de sécurité minimaux qui s'appliquent à l'ensemble du projet. Cette configuration applique un ensemble cohérent de filtres à tous les appels et réponses d'outils MCP du projet.
Configurez un paramètre plancher Model Armor avec la désinfection MCP activée. Pour en savoir plus, consultez Configurer les paramètres de plancher Model Armor.
Consultez l'exemple de commande suivant :
gcloud model-armor floorsettings update \ --full-uri='projects/PROJECT_ID/locations/global/floorSetting' \ --enable-floor-setting-enforcement=TRUE \ --add-integrated-services=GOOGLE_MCP_SERVER \ --google-mcp-server-enforcement-type=INSPECT_AND_BLOCK \ --enable-google-mcp-server-cloud-logging \ --malicious-uri-filter-settings-enforcement=ENABLED \ --add-rai-settings-filters='[{"confidenceLevel": "MEDIUM_AND_ABOVE", "filterType": "DANGEROUS"}]'
Remplacez PROJECT_ID par l'ID du projet Google Cloud .
Notez les paramètres suivants :
INSPECT_AND_BLOCK: type d'application qui inspecte le contenu du serveur MCP Google et bloque les requêtes et les réponses qui correspondent aux filtres.ENABLED: paramètre qui active un filtre ou une application forcée.MEDIUM_AND_ABOVE: niveau de confiance pour les paramètres du filtre "IA responsable – Dangereux". Vous pouvez modifier ce paramètre, mais des valeurs plus faibles peuvent entraîner davantage de faux positifs. Pour en savoir plus, consultez Niveaux de confiance de Model Armor.
Désactiver l'analyse du trafic MCP avec Model Armor
Pour empêcher Model Armor d'analyser automatiquement le trafic vers et depuis les serveurs MCP Google en fonction des paramètres de plancher du projet, exécutez la commande suivante :
gcloud model-armor floorsettings update \
--full-uri='projects/PROJECT_ID/locations/global/floorSetting' \
--remove-integrated-services=GOOGLE_MCP_SERVER
Remplacez PROJECT_ID par l'ID du projet Google Cloud . Model Armor n'applique pas automatiquement les règles définies dans les paramètres de plancher de ce projet au trafic des serveurs MCP Google.
Les paramètres de plancher et la configuration générale de Model Armor peuvent avoir un impact au-delà du MCP. Comme Model Armor s'intègre à des services tels que Vertex AI, toute modification apportée aux paramètres de seuil peut affecter l'analyse du trafic et les comportements de sécurité dans tous les services intégrés, et pas seulement dans MCP.
Contrôler l'utilisation du MCP avec des stratégies de refus IAM
Les stratégies de refus Identity and Access Management (IAM) vous aident à sécuriser les serveurs MCP à distance Google Cloud . Configurez ces règles pour bloquer l'accès indésirable aux outils MCP.
Par exemple, vous pouvez refuser ou autoriser l'accès en fonction des critères suivants :
- Le compte principal
- Propriétés de l'outil, comme la lecture seule
- ID client OAuth de l'application
Pour en savoir plus, consultez Contrôler l'utilisation de MCP avec Identity and Access Management.
Étapes suivantes
- Consultez la documentation de référence sur le MCP Managed Service pour Apache Airflow.
- En savoir plus sur les serveurs MCP Google Cloud