Aller au contenu principal

Connecter les agents aux outils

Connecter vos agents à des outils leur confère des capacités pratiques allant au-delà de la génération de texte, comme la recherche de documents, l'interrogation de tables, l'appel d'APIs externes ou l'exécution de code personnalisé.

Votre code d’agent, construit avec des frameworks comme LangGraph ou le SDK OpenAI, et des assistants de codage comme Claude Code et Cursor appellent des outils via MCP par trois routes gouvernées dans Databricks : les services MCP pour les outils tiers comme GitHub et Slack, votre propre serveur MCP hébergé sur Databricks Apps pour les outils personnalisés, et les serveurs MCP gérés pour les données et le code Databricks, le tout gouverné dans Unity Catalog avec des octrois, des politiques et un audit.

Le diagramme montre l’itinéraire MCP, que Databricks recommande pour la plupart des intégrations. Le MCP est l’un des nombreux moyens de connecter les agents à des services externes. En plus des services MCP, vous pouvez appeler les APIs REST directement via une connexion HTTP Unity Catalog. Sélectionnez Managed OAuth pour l’authentification par utilisateur, le proxy de connexions Unity Catalog pour appeler les APIs à partir du code de l’agent, ou les outils de fonction Unity Catalog qui encapsulent http_request(). Le tableau suivant récapitule chaque façon de se connecter, des données Databricks aux services externes :

Approche

Cas d'usage recommandé

Serveurs MCP gérés pour les données Databricks

Utilisez cette approche pour query les données Databricks et exécuter des fonctions gouvernées avec les serveurs MCP de fonction prêts à l'emploi Genie, Databricks AI Search, Databricks SQL et Unity Catalog.

Serveurs MCP externes

Utilisez cette approche pour les services qui publient un serveur MCP. Il offre la découverte automatique d'outils et un accès gouverné via Unity AI Gateway.

OAuth géré

Utilisez cette approche pour les intégrations Google Drive ou SharePoint. Databricks gère les informations d'identification OAuth, par conséquent aucune inscription d'application n'est requise.

Proxy de connexions Unity Catalog

Utilisez cette approche pour effectuer des appels d'API REST directs à partir du code d'agent à l'aide du SDK client propre au service externe.

Outils de fonction Unity Catalog

Utilisez cette approche pour les définitions d'outils basées sur SQL qui encapsulent la fonction http_request().

Approche

Cas d'usage recommandé

Serveurs MCP gérés pour les données Databricks

Utilisez cette approche pour query les données Databricks et exécuter des fonctions gouvernées avec les serveurs MCP de fonction prêts à l'emploi Genie, Databricks AI Search, Databricks SQL et Unity Catalog.

Serveurs MCP externes

Utilisez cette approche pour les services qui publient un serveur MCP. Il offre la découverte automatique d'outils et un accès gouverné via Unity AI Gateway.

OAuth géré

Utilisez cette approche pour les intégrations Google Drive ou SharePoint. Databricks gère les informations d'identification OAuth, par conséquent aucune inscription d'application n'est requise.

Proxy de connexions Unity Catalog

Utilisez cette approche pour effectuer des appels d'API REST directs à partir du code d'agent à l'aide du SDK client propre au service externe.

Outils de fonction Unity Catalog

Utilisez cette approche pour les définitions d'outils basées sur SQL qui encapsulent la fonction http_request().

Serveurs MCP gérés pour les données Databricks

Databricks propose des serveurs MCP gérés prêts à l'emploi qui offrent aux agents un accès gouverné aux données et aux fonctions de votre Workspace, sans serveur à construire ou à héberger. Chaque serveur dispose d’une URL dédiée et d’un périmètre OAuth, et Unity Catalog régit l’accès :

  • Genie : query les données structurées dans les agents Genie et les tables Unity Catalog en langage naturel.
  • **Databricks AI Search (recherche vectorielle)** : rechercher des documents dans les index de recherche vectorielle.
  • Databricks SQL : exécutez des requêtes SQL sur les tables Unity Catalog.
  • Fonctions Unity Catalog : Appelez des fonctions Python et SQL personnalisées enregistrées dans Unity Catalog.

Pour les URL de serveur, les étendues OAuth et le catalogue complet, consultez Serveurs MCP gérés Databricks. Pour appeler ces serveurs à partir du code de l’agent, consultez Utiliser les serveurs MCP dans les agents.

Serveurs MCP externes

Connectez vos agents à des applications externes comme Slack, Google Agenda, ou tout service doté d'une API. Databricks propose plusieurs approches selon que le service externe dispose d'un serveur MCP, que vous ayez besoin d'une authentification par utilisateur ou que vous préfériez appeler les APIs directement depuis le code de l'agent. Toutes les approches reposent sur une connexion HTTP Unity Catalog, qui assure une gestion sécurisée et régie des identifiants et prend en charge plusieurs méthodes d'authentification, y compris l'authentification OAuth 2.0 utilisateur-machine (U2M) et machine-machine (M2M).

Si le service externe dispose d’un serveur MCP disponible, Databricks recommande de l’enregistrer comme service MCP dans Unity Catalog. Les services MCP fournissent la découverte automatique d’outils, l’authentification par utilisateur et la gouvernance via Unity AI Gateway avec des octrois, la sélection d’outils et les politiques de service.

Pour les outils logiciel-service (SaaS) courants tels que Slack, GitHub et Google Drive, Databricks fournit des services MCP prêts à l'emploi et sans aucune configuration. Consultez les services MCP fournis par Databricks.

OAuth géré

Databricks propose des flux OAuth gérés pour certains fournisseurs d'outils API. Vous n'avez pas besoin d'enregistrer votre propre application OAuth ou de gérer les identifiants. Databricks recommande OAuth géré pour le développement et les tests. Si les cas d'utilisation en production nécessitent de générer des identifiants OAuth personnalisés, consultez la documentation des fournisseurs pour plus d'informations.

Les intégrations suivantes utilisent des identifiants OAuth que Databricks gère et stocke de manière sécurisée dans le backend.

Fournisseur

Notes de configuration

Portées prises en charge

Description

API Google Drive

Aucun

https://www.googleapis.com/auth/drive.readonly https://www.googleapis.com/auth/documents.readonly https://www.googleapis.com/auth/spreadsheets.readonly offline_access

Accès en lecture seule aux fichiers Google Drive, y compris Google Docs et Google Sheets.

API Gmail

Aucun

https://www.googleapis.com/auth/gmail.readonly offline_access

Accès en lecture seule aux messages, fils de discussion, brouillons et étiquettes Gmail.

API Google Calendar

Aucun

https://www.googleapis.com/auth/calendar.readonly offline_access

Accès en lecture seule aux événements Google Agenda, aux agendas et aux informations de disponibilité.

API SharePoint

Aucun

https://graph.microsoft.com/User.Read https://graph.microsoft.com/User.ReadBasic.All https://graph.microsoft.com/Sites.Read.All https://graph.microsoft.com/Files.Read https://graph.microsoft.com/Files.Read.All https://graph.microsoft.com/Mail.Read https://graph.microsoft.com/Mail.ReadBasic https://graph.microsoft.com/Mail.Read.Shared https://graph.microsoft.com/MailboxFolder.Read https://graph.microsoft.com/MailboxItem.Read https://graph.microsoft.com/Calendars.Read https://graph.microsoft.com/Calendars.Read.Shared https://graph.microsoft.com/Chat.Read https://graph.microsoft.com/Chat.ReadBasic https://graph.microsoft.com/ChatMember.Read https://graph.microsoft.com/ChatMessage.Read https://graph.microsoft.com/Channel.ReadBasic.All https://graph.microsoft.com/ChannelMessage.Read.All https://graph.microsoft.com/OnlineMeetings.Read https://graph.microsoft.com/OnlineMeetingTranscript.Read.All https://graph.microsoft.com/OnlineMeetingAiInsight.Read https://graph.microsoft.com/OnlineMeetingArtifact.Read.All https://graph.microsoft.com/OnlineMeetingRecording.Read.All offline_access openid profile email

Accès en lecture seule via Microsoft Graph aux fichiers SharePoint et OneDrive, aux mails et calendriers Outlook, ainsi qu'aux discussions, canaux et réunions Microsoft Teams.

Fournisseur

Notes de configuration

Portées prises en charge

Description

API Google Drive

Aucun

https://www.googleapis.com/auth/drive.readonly https://www.googleapis.com/auth/documents.readonly https://www.googleapis.com/auth/spreadsheets.readonly offline_access

Accès en lecture seule aux fichiers Google Drive, y compris Google Docs et Google Sheets.

API Gmail

Aucun

https://www.googleapis.com/auth/gmail.readonly offline_access

Accès en lecture seule aux messages, fils de discussion, brouillons et étiquettes Gmail.

API Google Calendar

Aucun

https://www.googleapis.com/auth/calendar.readonly offline_access

Accès en lecture seule aux événements Google Agenda, aux agendas et aux informations de disponibilité.

API SharePoint

Aucun

https://graph.microsoft.com/User.Read https://graph.microsoft.com/User.ReadBasic.All https://graph.microsoft.com/Sites.Read.All https://graph.microsoft.com/Files.Read https://graph.microsoft.com/Files.Read.All https://graph.microsoft.com/Mail.Read https://graph.microsoft.com/Mail.ReadBasic https://graph.microsoft.com/Mail.Read.Shared https://graph.microsoft.com/MailboxFolder.Read https://graph.microsoft.com/MailboxItem.Read https://graph.microsoft.com/Calendars.Read https://graph.microsoft.com/Calendars.Read.Shared https://graph.microsoft.com/Chat.Read https://graph.microsoft.com/Chat.ReadBasic https://graph.microsoft.com/ChatMember.Read https://graph.microsoft.com/ChatMessage.Read https://graph.microsoft.com/Channel.ReadBasic.All https://graph.microsoft.com/ChannelMessage.Read.All https://graph.microsoft.com/OnlineMeetings.Read https://graph.microsoft.com/OnlineMeetingTranscript.Read.All https://graph.microsoft.com/OnlineMeetingAiInsight.Read https://graph.microsoft.com/OnlineMeetingArtifact.Read.All https://graph.microsoft.com/OnlineMeetingRecording.Read.All offline_access openid profile email

Accès en lecture seule via Microsoft Graph aux fichiers SharePoint et OneDrive, aux mails et calendriers Outlook, ainsi qu'aux discussions, canaux et réunions Microsoft Teams.

Pour configurer OAuth géré, créez une connexion HTTP avec le type d’authentification OAuth utilisateur à machine par utilisateur et sélectionnez votre fournisseur dans le menu déroulant Fournisseur OAuth . Pour des étapes détaillées, consultez Créer une connexion au service externe.

Le fournisseur invite chaque utilisateur à autoriser lors de la première utilisation.

Si nécessaire, mettez sur liste blanche les URI de redirection suivants qu'OAuth géré utilise :

Cloud

URI de redirection

AWS

https://oregon.cloud.databricks.com/api/2.0/http/oauth/redirect

Azure

https://westus.azuredatabricks.net/api/2.0/http/oauth/redirect

GCP

https://us-central1.gcp.databricks.com/api/2.0/http/oauth/redirect

Cloud

URI de redirection

AWS

https://oregon.cloud.databricks.com/api/2.0/http/oauth/redirect

Azure

https://westus.azuredatabricks.net/api/2.0/http/oauth/redirect

GCP

https://us-central1.gcp.databricks.com/api/2.0/http/oauth/redirect

Pour les fournisseurs OAuth gérés avec un serveur MCP publié, tels que Glean, GitHub, Atlassian et Slack, Databricks peut gérer les informations d'identification OAuth lorsque vous enregistrez le serveur en tant que service MCP. Voir Fournisseurs OAuth gérés.

Endpoint proxy de connexions Unity Catalog

Utilisez l'Endpoint proxy de connexions Unity Catalog avec le SDK client du service externe pour appeler les APIs REST directement depuis le code de l'agent. Dirigez l'URL de base du SDK vers l'Endpoint proxy et utilisez votre jeton Databricks comme clé d'API. Databricks authentifie la requête et injecte automatiquement les identifiants du service externe à partir de la connexion Unity Catalog. Votre code ne gère pas directement les jetons du service externe.

Autorisations requises : USE CONNECTION sur l'objet de connexion.

Utilisez DatabricksOpenAI pour acheminer les appels vers OpenAI externe via le proxy de connexions Unity Catalog. Tout d'abord, créez une connexion HTTP Unity Catalog à l'aide de votre clé API OpenAI stockée en tant que secret Databricks:

SQL
CREATE CONNECTION openai_connection TYPE HTTP
OPTIONS (
host 'https://api.openai.com',
base_path '/v1',
bearer_token secret ('<secret-scope>', '<secret-key>')
);

Installez ensuite le package databricks-openai et utilisez l’URL du proxy et le client Workspace dans votre code d’agent :

Bash
pip install databricks-openai
Python
from databricks_openai import DatabricksOpenAI
from databricks.sdk import WorkspaceClient

w = WorkspaceClient()

client = DatabricksOpenAI(
workspace_client=w,
base_url=f"{w.config.host}/api/2.0/unity-catalog/connections/openai_connection/proxy/",
)

response = client.chat.completions.create(
model="gpt-4o",
messages=[{"role": "user", "content": "Hello!"}],
)
print(response.choices[0].message.content)

Pour plus de détails sur l'Endpoint de proxy, les méthodes d'authentification prises en charge et la configuration de la connexion, consultez Transférer les requêtes via le proxy de connexion HTTP.

Outils de fonction Unity Catalog

remarque

Databricks recommande d'utiliser les services MCP ou le proxy de connexions Unity Catalog pour les nouvelles intégrations. Les outils de fonction Unity Catalog avec http_request restent pris en charge, mais ne sont plus l'approche recommandée.

Vous pouvez créer une fonction Unity Catalog qui enveloppe http_request() pour appeler des services externes. Cette approche est utile pour les définitions d'outils basées sur SQL, telles qu'une fonction qui publie un message sur Slack. Pour la présentation complète, y compris l'exemple SQL et les limitations liées aux types de connexion, consultez Appeler des APIs externes avec http_request (hérité).

Exemples de Notebooks

Les notebooks suivants démontrent la création d'outils d'agent IA qui se connectent à Slack, OpenAI et Azure AI Search.

Outil d'agent de messagerie Slack

Outil d'agent de l'API Microsoft Graphe

Outil d'agent Azure AI Search

Ressources supplémentaires