Aller au contenu principal

Utiliser les serveurs MCP dans les agents

info

Aperçu

Cette fonctionnalité est en aperçu public.

Connectez votre code d’agent à n’importe quel serveur MCP sur Databricks — serveurs gérés par Databricks, serveurs MCP externes enregistrés en tant que services MCP et serveurs personnalisés hébergés en tant qu’applications Databricks. Toutes exposent la même interface MCP, l'agent code est donc le même. Ce qui diffère, ce sont l'**URL du serveur** et la manière dont vous vous **authentifiez**.

La bibliothèque Python databricks-mcp gère l'authentification auprès des serveurs Databricks MCP, de sorte que le même code client fonctionne sur les trois types de serveurs.

Obtenez l'URL de votre serveur

Configurez d'abord le serveur MCP, puis utilisez son URL dans les exemples suivants :

Type de serveur

Modèle d'URL

Installer

Géré

https://<workspace-hostname>/api/2.0/mcp/<service>/<path>

Serveurs gérés disponibles

Externe (Service MCP)

https://<workspace-hostname>/ai-gateway/mcp-services/<catalog>.<schema>.<mcp-service>

Connectez les agents à des outils tiers avec les services MCP.

Personnalisé

https://<app-url>/mcp

Héberger votre propre serveur MCP

Type de serveur

Modèle d'URL

Installer

Géré

https://<workspace-hostname>/api/2.0/mcp/<service>/<path>

Serveurs gérés disponibles

Externe (Service MCP)

https://<workspace-hostname>/ai-gateway/mcp-services/<catalog>.<schema>.<mcp-service>

Connectez les agents à des outils tiers avec les services MCP.

Personnalisé

https://<app-url>/mcp

Héberger votre propre serveur MCP

Configurez votre environnement

  1. Utilisez OAuth pour vous authentifier auprès de votre Workspace :

    Bash
    databricks auth login --host https://<workspace-hostname>
  2. Lorsque vous y êtes invité, saisissez un nom de profil et notez-le pour plus tard. Le nom de profil default est DEFAULT.

  3. Vérifiez que vous disposez d’un environnement local avec Python 3.12 ou version ultérieure, puis installez les dépendances :

    Bash
    pip install -U "mcp>=1.9" "databricks-sdk[openai]" "mlflow>=3.1.0" "databricks-agents>=1.0.0" "databricks-mcp"

Connecter et répertorier des outils

Créez un DatabricksMCPClient avec l'URL du serveur et listez ses outils. Le même client fonctionne pour les URL de serveurs gérés, externes (service MCP) et personnalisés :

Python
from databricks_mcp import DatabricksMCPClient
from databricks.sdk import WorkspaceClient

workspace_client = WorkspaceClient(profile="DEFAULT")
host = workspace_client.config.host

# Use a managed, MCP Service, or custom server URL:
mcp_server_url = f"{host}/api/2.0/mcp/functions/system/ai"

mcp_client = DatabricksMCPClient(server_url=mcp_server_url, workspace_client=workspace_client)
tools = mcp_client.list_tools()
print(f"Available tools: {[t.name for t in tools]}")

Pour appeler un outil directement :

Python
result = mcp_client.call_tool("system__ai__python_exec", {"code": "print('Hello, world!')"})
print(result.content)
remarque

Le compute Serverless doit être activé dans votre Workspace pour exécuter des outils gérés system.ai.

S'authentifier

Sélectionnez la méthode d'authentification qui correspond à l'endroit où votre agent s'exécute. Pour un Service MCP externe, l'appelant doit également disposer de EXECUTE sur le service. AI Gateway applique cette autorisation à chaque appel.

Authentifiez-vous à votre workspace avec OAuth (voir Configurer votre environnement) et transmettez le profil au client :

Python
workspace_client = WorkspaceClient(profile="DEFAULT")
mcp_client = DatabricksMCPClient(server_url=mcp_server_url, workspace_client=workspace_client)

Créer un agent

Utilisez un framework d'agent pour transformer les outils du serveur MCP en un agent. Orientez le framework vers l'URL du serveur et passez votre WorkspaceClient authentifié.

Python
import asyncio
from agents import Agent, Runner
from databricks.sdk import WorkspaceClient
from databricks_openai.agents import McpServer


async def main():
workspace_client = WorkspaceClient()
host = workspace_client.config.host

async with McpServer(
url=f"{host}/ai-gateway/mcp-services/main.default.github_mcp",
name="github-mcp",
workspace_client=workspace_client,
) as mcp_server:
agent = Agent(
name="Local agent",
instructions="You are a helpful assistant with access to external services.",
model="databricks-claude-sonnet-4-5",
mcp_servers=[mcp_server],
)
result = await Runner.run(agent, "List my open GitHub pull requests.")
print(result.final_output)


asyncio.run(main())

Exemples de Notebooks

Les Notebooks suivants montrent comment créer des agents LangGraph et OpenAI qui appellent des outils MCP sur des serveurs MCP gérés, externes et personnalisés :

Agent d’appel d’outils LangGraph MCP

Agent d'appel d'outils OpenAI MCP

Agent d'appel d'outils du SDK MCP

Déployez votre agent

Databricks recommande de déployer des agents sur Databricks Apps, ce qui vous permet de gérer entièrement le code de l'agent, la configuration du serveur et le versionnement basé sur Git. Vous pouvez aussi déployer sur Model Serving.

Quelle que soit votre sélection, accordez à l'agent l'accès à toutes les ressources dont dépendent ses serveurs MCP — par exemple, CAN_RUN sur un Genie Agent ou SELECT sur un index de recherche IA.

Déclarez chaque ressource utilisée par votre agent — y compris les ressources derrière chaque serveur MCP — sous resources.apps.<app>.resources dans databricks.yml, puis déployez le bundle pour accorder l'accès au service principal Databricks de l'application. Par exemple, pour un agent qui utilise les serveurs gérés Genie et AI Search :

YAML
resources:
apps:
my_agent_app:
name: 'my-agent-app'
source_code_path: ./
resources:
- name: 'llm'
serving_endpoint:
name: 'databricks-claude-sonnet-4-5'
permission: 'CAN_QUERY'
- name: 'genie_space'
genie_space:
space_id: '<genie-space-id>'
permission: 'CAN_RUN'
- name: 'vector_index'
uc_securable:
securable_full_name: '<catalog>.<schema>.<index-name>'
securable_type: 'TABLE'
permission: 'SELECT'
Bash
databricks bundle deploy
databricks bundle run my_agent_app

Pour le workflow complet de création et de déploiement, consultez Créer un agent IA et le déployer sur Databricks Apps. Pour tous les types de Ressources et les valeurs d’autorisation, consultez Authentification pour les agents IA.

Étapes suivantes