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.
Hospede sus propios servidores MCP personalizados o de terceros como aplicaciones de Databricks. Los servidores MCP personalizados son útiles si ya tiene un servidor MCP que desea implementar o si desea ejecutar un servidor MCP de terceros como origen de herramientas.
Requirements
- Un servidor MCP hospedado como una aplicación de Databricks debe implementar un transporte compatible con HTTP, como el transporte HTTP que se puede transmitir.
Hospedar un servidor MCP como una aplicación de Databricks
Consulte GitHub: plantilla de servidor MCP personalizada para obtener un ejemplo de cómo escribir su propio servidor MCP e implementarlo como una aplicación de Databricks.
Para hospedar un servidor MCP de Python existente como una aplicación de Databricks, siga estos pasos:
Configuración del entorno
Antes de implementar el servidor MCP, autentíquese en el área de trabajo mediante OAuth.
Ejecute lo siguiente en un terminal local:
databricks auth login --host https://<your-workspace-hostname>
Configuración del servidor MCP
Use uv para la administración de dependencias y las herramientas unificadas al implementar el servidor MCP.
Agregue un
requirements.txtelemento al directorio raíz del servidor MCP e incluyauvcomo dependencia.Al agregar
uva requirements.txt, controla la instalación de dependencias adicionales definidas en la configuración del proyecto.uvCree un
pyproject.tomlarchivo que defina un punto de entrada de script para el servidor.Ejemplo
pyproject.toml:[project.scripts] custom-server = "server.main:main"En este ejemplo:
-
custom-serveres el nombre del script que se usa conuv run -
server.main:mainespecifica la ruta de acceso del módulo (server/main.py) y la función (main) que se van a ejecutar.
-
Agregue un
app.yamlarchivo que especifique el comando de la CLI para ejecutar el servidor MCP medianteuv run.De forma predeterminada, las aplicaciones de Databricks escuchan en el puerto 8000. Si el servidor escucha en un puerto diferente, establézcalo mediante una invalidación de variable de entorno en el
app.yamlarchivo.Ejemplo
app.yaml:command: [ 'uv', 'run', 'custom-server', # This must match a script defined in pyproject.toml ]
Al ejecutar uv run custom-server, uv busca la definición del script, busca la ruta de acceso del módulo y llama a la main() función .
Implementación del servidor MCP como una aplicación de Databricks
Cree una aplicación de Databricks para hospedar el servidor MCP:
databricks apps create custom-mcp-serverCargue el código fuente en Databricks e implemente la aplicación ejecutando los siguientes comandos desde el directorio que contiene
app.yamlel archivo:DATABRICKS_USERNAME=$(databricks current-user me | jq -r .userName) databricks sync . "/Users/$DATABRICKS_USERNAME/custom-mcp-server" databricks apps deploy custom-mcp-server --source-code-path "/Workspace/Users/$DATABRICKS_USERNAME/custom-mcp-server"
Búsqueda de la dirección URL de la aplicación implementada
Después de la implementación, puede encontrar la dirección URL de la aplicación en la interfaz de usuario de Databricks. El punto de conexión del servidor MCP está disponible en https://<app-url>/mcp.
Conexión al servidor MCP personalizado
Haga clic en las pestañas para ver cómo conectarse a un servidor MCP desde varios entornos.
Entorno local
Autentíquese en el área de trabajo mediante OAuth, como se describe en Configuración del entorno.
En el ejemplo siguiente se muestra cómo conectarse al servidor MCP personalizado y enumerar las herramientas disponibles:
from databricks_mcp import DatabricksMCPClient
from databricks.sdk import WorkspaceClient
# Replace with your deployed app URL
# Example: https://custom-mcp-server-6051921418418893.staging.aws.databricksapps.com/mcp
mcp_server_url = "https://<app-url>/mcp"
databricks_cli_profile = "DEFAULT"
workspace_client = WorkspaceClient(profile=databricks_cli_profile)
mcp_client = DatabricksMCPClient(server_url=mcp_server_url, workspace_client=workspace_client)
# List available tools
tools = mcp_client.list_tools()
print(f"Available tools: {tools}")
Notebook (principal de servicio)
Use un principal de servicio para acceder a la aplicación de Databricks hospedada en un notebook de Databricks.
from databricks_mcp import DatabricksMCPClient
from databricks.sdk import WorkspaceClient
# Replace with your deployed app URL
mcp_server_url = "https://<app-url>/mcp"
workspace_client = WorkspaceClient(
host="<workspace-url>",
client_id="<client-id>",
client_secret="<client-secret>"
)
mcp_client = DatabricksMCPClient(server_url=mcp_server_url, workspace_client=workspace_client)
# List available tools
tools = mcp_client.list_tools()
print(f"Available tools: {tools}")
Código del agente (en nombre del usuario)
Configure la autorización en nombre del usuario. Ver Autenticación en nombre del usuario.
En el ejemplo siguiente se muestra cómo habilitar el acceso en nombre del usuario mediante ModelServingUserCredentials para acceder a la aplicación hospedada de Databricks desde un agente:
from databricks_mcp import DatabricksMCPClient
from databricks.sdk import WorkspaceClient
from databricks.sdk.credentials_provider import ModelServingUserCredentials
# Replace with your deployed app URL
mcp_server_url = "https://app-url>/mcp"
workspace_client = WorkspaceClient(credentials_strategy=ModelServingUserCredentials())
mcp_client = DatabricksMCPClient(server_url=mcp_server_url, workspace_client=workspace_client)
# List available tools
tools = mcp_client.list_tools()
print(f"Available tools: {tools}")
Registre el modelo del agente mediante el ámbito apps.apps. Ver Autenticación en nombre del usuario.
Código del agente (principal de servicio)
Habilite la autenticación del sistema utilizando una entidad de servicio para acceder a la aplicación hospedada de Databricks desde un agente:
from databricks_mcp import DatabricksMCPClient
from databricks.sdk import WorkspaceClient
# Replace with your deployed app URL
mcp_server_url = "https://<app-url>/mcp"
workspace_client = WorkspaceClient()
mcp_client = DatabricksMCPClient(server_url=mcp_server_url, workspace_client=workspace_client)
# List available tools
tools = mcp_client.list_tools()
print(f"Available tools: {tools}")
Registre el modelo del agente como un recurso mediante DatabricksApps. Consulte Paso automático de autenticación.
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 con servidores MCP personalizados hospedados en aplicaciones de Databricks.
Agente de llamada a herramientas MCP de LangGraph
Agente de llamada a herramientas de MCP de OpenAI
Recursos adicionales
El libro de recetas de aplicaciones proporciona ejemplos de código de un extremo a otro para integrar servidores MCP con diferentes marcos:
Para obtener código fuente completo y ejemplos adicionales, consulte el repositorio Cookbook de Aplicaciones de Databricks.