Pular para o conteúdo principal

Use servidores MCP em agentes

info

Visualização

Este recurso está em Pré-lançamento público.

Conecte o código do agente a qualquer servidor MCP no Databricks — servidores gerenciados pelo Databricks, servidores MCP externos registrados como serviços MCP e servidores personalizados hospedados como aplicativos Databricks. Todos eles expõem a mesma interface MCP, portanto, o código do agente é o mesmo. O que difere é a **URL do servidor** e como autenticar.

A biblioteca Python databricks-mcp lida com a autenticação para servidores MCP do Databricks, então o mesmo código de cliente funciona em todos os três tipos de servidor.

Obter o seu URL do servidor

Configure primeiro o servidor MCP e, em seguida, utilize o URL dele nos exemplos a seguir:

Tipo de servidor

Padrão de URL

Configuração

Gerenciadas

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

Servidores gerenciados disponíveis

Externo (Serviço MCP)

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

Conecte agentes a ferramentas de terceiros com os Serviços MCP

Personalizada

https://<app-url>/mcp

Hospede seu próprio servidor MCP

Configure seu ambiente

  1. Use OAuth para autenticar-se no seu workspace:

    Bash
    databricks auth login --host https://<workspace-hostname>
  2. Quando solicitado, insira um nome de perfil e anote-o para mais tarde. O nome de perfil default é DEFAULT.

  3. Verifique se você tem um ambiente local com Python 3.12 ou acima, em seguida, instale as dependências:

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

Conectar e listar ferramentas

Crie um DatabricksMCPClient com a URL do servidor e liste suas ferramentas. O mesmo cliente funciona para URLs de servidor gerenciadas, externas (serviço MCP) e personalizadas:

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]}")

Para chamar uma ferramenta diretamente:

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

O compute serverless deve ser habilitado em seu workspace para executar system.ai ferramentas gerenciadas.

Autenticar

Selecione o método de autenticação que corresponde ao local onde seu agente está em execução. Para um Serviço MCP externo, o chamador também deve ter EXECUTE no serviço. O Gateway de AI aplica esta permissão em cada chamada.

Autentique-se em seu workspace com OAuth (consulte Configurar seu ambiente) e passe o perfil para o cliente:

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

Construir um agente

Use uma estrutura de agente para transformar as ferramentas do servidor MCP em um agente. Aponte a estrutura para a URL do servidor e passe seus WorkspaceClient autenticados.

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())

Notebooks de exemplo

Os Notebooks a seguir mostram como criar agentes LangGraph e OpenAI que chamam ferramentas MCP em servidores MCP gerenciados, externos e personalizados:

Agente de chamada de ferramentas LangGraph MCP

Abrir notebook em uma nova aba

Agente de chamada de ferramentas MCP da OpenAI

Abrir notebook em uma nova aba

Agente de invocação de ferramentas do SDK MCP

Abrir notebook em uma nova aba

Implante seu agente

A Databricks recomenda implantar agentes no Databricks Apps, o que permite o código do agente, a configuração do servidor e o controle de versão baseado em Git totalmente gerenciados. Alternativamente, implantado no Model Serving.

Qualquer que seja a sua seleção, conceda ao agente acesso a cada recurso do qual seus servidores MCP dependem—por exemplo, CAN_RUN em um Genie Space ou SELECT em um índice de pesquisa de AI.

Declare cada recurso que seu agente usa—incluindo o recurso por trás de cada servidor MCP—em resources.apps.<app>.resources em databricks.yml, então o pacote foi implantado para conceder acesso à entidade de serviço Databricks do aplicativo. Por exemplo, para um agente que usa os servidores Genie e AI Search gerenciados:

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

Para o fluxo de trabalho completo de autoria e implantação, consulte Crie um agente de AI e implante-o em Databricks Apps. Para todos os tipos de recurso e valores de permissão, consulte Autenticação para agentes de IA.

Próximos os passos