Aller au contenu principal

Connecter des agents aux outils

Connecter vos agents à des outils leur offre des capacités pratiques 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, créé avec des frameworks tels que 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 managé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. MCP est l'un des nombreux moyens de connecter les agents aux services externes. Parallèlement aux services MCP, vous pouvez appeler les APIs REST directement via une connexion HTTP Unity Catalog. Sélectionnez OAuth géré 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 interroger les données Databricks et exécuter des fonctions régies avec les serveurs MCP de fonctions 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 une 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 identifiants OAuth, de sorte qu'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 de l'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 interroger les données Databricks et exécuter des fonctions régies avec les serveurs MCP de fonctions 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 une 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 identifiants OAuth, de sorte qu'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 de l'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 donnent 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'une portée OAuth, et Unity Catalog gouverne l'accès :

  • Genie : interrogez les données structurées dans les agents Genie et les tables Unity Catalog avec le langage naturel.
  • Databricks AI Search (recherche vectorielle) : recherchez 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 par Databricks. Pour appeler ces serveurs depuis le 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 s'appuient sur une connexion HTTP Unity Catalog, qui offre une gestion sécurisée et gouvernée des informations d'identification et prend en charge plusieurs méthodes d'authentification, y compris l'authentification OAuth 2.0 utilisateur-vers-machine (U2M) et machine-vers-machine (M2M).

Si le service externe dispose d'un serveur MCP disponible, Databricks recommande de l'enregistrer en tant que 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 autorisations, la sélection d'outils et des stratégies de service.

Pour les outils de software-as-a-service (SaaS) courants tels que Slack, GitHub et Google Drive, Databricks fournit des services MCP prêts à l’emploi 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 ni de gérer les identifiants. Databricks recommande l'OAuth géré pour le développement et les tests. Si les cas d'utilisation en production nécessitent la génération d'identifiants OAuth personnalisés, veuillez consulter la documentation des fournisseurs pour plus d'informations.

Les intégrations suivantes utilisent des informations d'identification OAuth que Databricks gère et stocke en toute sécurité 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 Gmail, aux conversations, aux brouillons et aux libellés.

API Google Calendar

Aucun

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

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

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 Graphe aux fichiers SharePoint et OneDrive, au courrier et au calendrier Outlook, ainsi qu’aux conversations, canaux de distribution 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 Gmail, aux conversations, aux brouillons et aux libellés.

API Google Calendar

Aucun

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

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

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 Graphe aux fichiers SharePoint et OneDrive, au courrier et au calendrier Outlook, ainsi qu’aux conversations, canaux de distribution 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 les étapes détaillées, consultez Créer une connexion au service externe.

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

Si nécessaire, autorisez 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 identifiants OAuth lorsque vous enregistrez le serveur en tant que service MCP. Voir fournisseurs OAuth gérés.

Endpoint proxy des connexions Unity Catalog

Utilisez l'Endpoint proxy de connexions Unity Catalog avec le SDK client propre au service externe pour appeler directement des APIs REST à partir du code de l'agent. Pointez 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 des 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>')
);

Ensuite, installez le package databricks-openai et utilisez l'URL de 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 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 encapsule 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 procédure détaillée, y compris l'exemple SQL et les limites liées au type 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'agents IA qui se connectent à Slack, OpenAI et Azure AI Search.

Outil d'agent de messagerie Slack

Outil d'agent API Microsoft Graphe

Outil d'agent Azure AI Search

Ressources supplémentaires