Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Importante
Esta característica se encuentra en su versión beta. Los administradores del área de trabajo pueden controlar el acceso a esta característica desde la página Vistas previas . Consulte Administración de versiones preliminares de Azure Databricks.
Conecte Databricks a servidores externos del Protocolo de contexto de modelo (MCP) para conceder a los agentes acceso a una gama más amplia de herramientas hospedadas fuera de Databricks. Los servidores MCP externos son servidores MCP de terceros hospedados fuera de Databricks a los que se conecta a través de servidores proxy administrados por Databricks.
Autenticación y seguridad
Databricks usa servidores proxy de MCP administrados y conexiones HTTP del catálogo de Unity para controlar de forma segura la autenticación en el área de trabajo:
- Administración segura de tokens: Databricks controla automáticamente todos los flujos de OAuth y la actualización de tokens.
- Sin credenciales expuestas: los tokens nunca se exponen a los usuarios finales
- Autenticación centralizada: patrones de autenticación coherentes mediante conexiones de Catálogo de Unity
Requisitos
- Un área de trabajo con la versión preliminar de servidores MCP administrados habilitada. Consulte Administración de versiones preliminares de Azure Databricks.
- Debe tener
CREATE CONNECTIONprivilegio en el metastore del catálogo de Unity que almacena la información de conexión de MCP. - El servidor MCP debe usar el mecanismo de transporte HTTP para streaming
Instalación de un servidor MCP externo
Tiene tres opciones para instalar servidores MCP externos para usarlos con los agentes. Todos los métodos crean una conexión de Catálogo de Unity que permite el acceso seguro y autenticado al servidor MCP.
Elija el método de instalación en función del servidor MCP:
Desde el Marketplace de Databricks
Importante
Esta característica está en versión preliminar pública.
Instale servidores MCP mantenidos y preconfigurados directamente desde Azure Databricks Marketplace:
En el área de trabajo de Azure Databricks, vaya a la pestaña Marketplace>Agentes>Servidores MCP.
Busque el servidor MCP que desea instalar y haga clic en Instalar.
En el cuadro de diálogo de instalación, configure la conexión:
-
Nombre de conexión: escriba un nombre para la conexión del catálogo de Unity (por ejemplo,
github_connection). - Host: El dominio de host se rellena previamente para los servidores seleccionados.
- Ruta de acceso base: la ruta de acceso base se rellena previamente para los servidores curados.
Credenciales: escriba las credenciales de autenticación. Los campos obligatorios dependen del tipo de credencial del servidor:
- Para la autenticación con bearer token: proporcione el bearer token.
- Para la autenticación OAuth U2M: proporcione el identificador de cliente y el secreto de cliente.
Consulte la documentación del proveedor de servidores MCP para obtener instrucciones sobre cómo obtener estas credenciales.
-
Nombre de conexión: escriba un nombre para la conexión del catálogo de Unity (por ejemplo,
Haga clic en Instalar para crear la conexión.
Para obtener más información sobre la instalación de Marketplace, consulte Obtener acceso a servidores MCP externos.
Conexión HTTP personalizada
Cree una conexión HTTP del catálogo de Unity para instalar cualquier servidor MCP, incluidos los servidores autohospedados o de terceros que no estén disponibles en Marketplace.
Cree una conexión HTTP. Consulte Conexión HTTP.
Al crear la conexión HTTP, active la casilla Es conexión MCP para habilitar la funcionalidad de MCP.
Compruebe que la dirección URL de conexión apunta a un punto de conexión de servidor MCP válido.
Registro de cliente dinámico (experimental)
Importante
Esta característica está en versión preliminar pública.
Use el registro dinámico de cliente (DCR) para registrar e instalar automáticamente servidores MCP que admitan DCR de OAuth 2.0 (RFC7591).
DCR controla automáticamente la detección de OAuth, el registro de cliente y la creación de conexiones del catálogo de Unity sin necesidad de configuración manual de credenciales.
Para usar DCR, debe cumplir los siguientes requisitos:
- El servidor MCP debe admitir la autorización DCR y OAuth 2.0.
- El servidor MCP debe exponer puntos de conexión de metadatos de OAuth.
Instale o actualice el
databricks-mcppaquete para obtener la versión más reciente:%pip install -U databricks-mcp %restart_pythonUtilice la función de registro de DCR para crear una conexión de Unity Catalog.
from databricks.sdk import WorkspaceClient from databricks_mcp import register_mcp_server_via_dcr # Initialize workspace client workspace_client = WorkspaceClient() # Register MCP server via DCR connection_url = register_mcp_server_via_dcr( connection_name="my_mcp_server", mcp_url="https://mcp.example.com/api", workspace_client=workspace_client ) print(f"Connection created: {connection_url}")
Después de completar cualquier método de instalación:
Se crea una conexión con Catálogo de Unity utilizando la información de su servidor MCP.
Azure Databricks aprovisiona un punto de conexión de proxy administrado que controla de forma segura la autenticación y la administración de tokens.
El servidor MCP está disponible en AI Playground y se puede usar mediante programación en los agentes.
Puede conceder a otros usuarios acceso a la conexión a través de permisos de Catálogo de Unity.
La dirección URL del punto de conexión de proxy sigue este formato:
https://<workspace-hostname>/api/2.0/mcp/external/{connection_name}
Para ver el servidor MCP, vaya al área de trabajo >Agentes>MCP Servers
Uso compartido de la conexión del servidor MCP
Conceda USE CONNECTION privilegios a los principales de identidad que necesitan usar la conexión al servidor MCP:
- En su área de trabajo, vaya a Catálogo>Conexiones> Sus > de conexión.
- Otorgue a las identidades el acceso adecuado a la conexión del catálogo de Unity.
Prueba de servidores MCP con AI Playground
Pruebe los servidores MCP directamente en AI Playground sin escribir ningún código:
Vaya a AI Playground en el área de trabajo de Databricks.
Elija un modelo con la etiqueta Herramientas habilitada .
Haga clic en Herramientas > + Agregar herramienta y seleccione Servidores MCP en las opciones de herramientas disponibles.
En la sección Servidores MCP , seleccione Servidores MCP externos para examinar las conexiones disponibles.
Elija la conexión de Catálogo de Unity que instaló anteriormente (por ejemplo,
github_connection).Chatear con LLM para probar cómo interactúa con sus herramientas de servidor MCP. AI Playground detecta automáticamente las herramientas disponibles del servidor MCP y las pone a disposición del LLM.
Esto le permite crear rápidamente prototipos y probar integraciones de servidor MCP antes de compilar agentes completos o implementar en producción.
Uso de servidores MCP mediante programación
Después de instalar un servidor MCP, úselo mediante programación en el código del agente mediante la conexión a la dirección URL del proxy. El proxy de Databricks hace que los servidores externos se comporten como servidores MCP administrados, controlando la autenticación y la administración de tokens.
Cliente MCP de Databricks
El enfoque recomendado trata los servidores MCP externos como servidores gestionados por Databricks agregando el punto de conexión de proxy a la lista MANAGED_MCP_SERVER_URLS.
from databricks.sdk import WorkspaceClient
from databricks_mcp import DatabricksMCPClient
# Initialize workspace client
workspace_client = WorkspaceClient()
host = workspace_client.config.host
# External MCP servers are proxied as managed servers, allowing you
# to use the same API for both managed and external servers
MANAGED_MCP_SERVER_URLS = [
f"{host}/api/2.0/mcp/functions/system/ai", # Default managed MCP
f"{host}/api/2.0/mcp/external/github_connection" # External MCP proxy
]
Para usar el servidor MCP en un agente, pase la dirección URL del proxy al managed_server_urls parámetro :
# Use with agents - external servers work just like managed ones
import asyncio
from your_agent_code import create_mcp_tools # Your agent's tool creation function
# Create tools from both managed and external (proxied) servers
mcp_tools = asyncio.run(
create_mcp_tools(
ws=workspace_client,
managed_server_urls=MANAGED_MCP_SERVER_URLS
)
)
También puede llamar a la herramienta directamente mediante el cliente MCP de Databricks:
# Direct tool call using DatabricksMCPClient
mcp_client = DatabricksMCPClient(
server_url=f"{host}/api/2.0/mcp/external/github_connection",
workspace_client=workspace_client
)
# List available tools
tools = mcp_client.list_tools()
print(f"Available tools: {[tool.name for tool in tools]}")
# Call a tool
response = mcp_client.call_tool(
"list_commits",
{"owner": "mlflow", "repo": "mlflow", "sha": "master"}
)
print(response.content[0].text)
SDK de MCP estándar
Conéctese a servidores MCP mediante el SDK de MCP estándar con async/await:
%pip install -U databricks-sdk databricks_mcp tabulate databricks_ai_bridge
%restart_python
import json
from databricks.sdk import WorkspaceClient
from databricks_mcp import DatabricksOAuthClientProvider
from databricks.sdk.credentials_provider import ModelServingUserCredentials
from mcp.client.streamable_http import streamablehttp_client as connect
from mcp import ClientSession
from tabulate import tabulate
async def main():
app_url = "https://<workspace-hostname>/api/2.0/mcp/external/github_connection"
client = WorkspaceClient()
async with connect(app_url, auth=DatabricksOAuthClientProvider(client)) as (
read_stream,
write_stream,
_,
):
async with ClientSession(read_stream, write_stream) as session:
init = await session.initialize()
print(json.dumps(init.model_dump(), indent=2))
tools = await session.list_tools()
print(json.dumps(tools.model_dump(), indent=2))
arguments = {
"owner": "mlflow",
"repo": "mlflow",
"sha": "master"
}
response = await session.call_tool(name="list_commits", arguments=arguments)
data = json.loads(response.content[0].text)
rows = []
for commit in data:
author = commit.get("commit", {}).get("author", {}).get("name")
message = commit.get("commit", {}).get("message", "").split("\n")[0]
html_url = commit.get("html_url", "")
rows.append([author, message, html_url])
# Print as table
print(tabulate(rows, headers=["Author", "Message", "Commit URL"], tablefmt="github"))
await main()
Cuadernos de ejemplo: Compilación de un agente con servidores MCP de Databricks
En los cuadernos siguientes se muestra cómo crear agentes langGraph y OpenAI que llaman a herramientas de MCP, incluidos los servidores MCP externos a los que se accede a través de puntos de conexión de proxy de Databricks.
Agente de llamada a herramientas MCP de LangGraph
Agente de llamada a herramientas de MCP de OpenAI
Limitaciones
- No se admite la conectividad privada a los recursos de tu VPC utilizando Private Link. Póngase en contacto con el equipo de soporte técnico si necesita esta funcionalidad.
- Databricks solo admite servidores MCP externos que usan el mecanismo de transporte HTTP que se puede transmitir.
Pasos siguientes
- Uso de servidores MCP administrados junto con servidores externos
- Conexión de clientes a servidores MCP para acceder a la infraestructura de MCP de Databricks
- Creación de servidores MCP personalizados para las necesidades de la organización
- Implementación de agentes que usan servidores MCP externos