Use servidores MCP externos
Beta
Esse recurso está na versão beta.
Conecte o Databricks a servidores MCP (Model Context Protocol) externos para dar aos seus agentes acesso a uma variedade maior de ferramentas hospedadas fora do Databricks.
Databricks Utiliza proxies MCP gerenciar e conexões HTTP Unity Catalog para lidar com segurança com a autenticação em seu site workspace.
Requisitos
- Um workspace com a visualização gerenciar Servidores MCP ativada. Veja gerenciar Databricks Previews.
- Para se conectar a servidores MCP externos, o senhor precisa usar uma conexão HTTP do Unity Catalog. Para criar uma conexão Unity Catalog, o senhor deve ter privilégios CREATE CONNECTION no metastore Unity Catalog anexado ao workspace. Consulte Criar uma conexão HTTP do Unity Catalog para obter mais detalhes.
Criar uma conexão HTTP do Unity Catalog
Crie uma conexão HTTP seguindo a documentação sobre conexões do Unity Catalog. As conexões do Unity Catalog suportam vários mecanismos de autenticação. Escolha o mecanismo certo para seu caso de uso:
- Tokens de portador : Obter tokens de portador para autenticação simples baseada em tokens.
- OAuth 2.0 Máquina a máquina : Crie e configure um aplicativo para permitir a autenticação entre dois sistemas ou serviços sem qualquer envolvimento do usuário. Use-o quando o serviço ou os back-ends precisarem se comunicar com segurança de servidor para servidor usando apenas suas próprias identidades.
- OAuth 2.0 Usuário para máquina compartilhada : Autenticar com a interação do usuário para autorizar um serviço ou máquina sob uma identidade de usuário compartilhada (como um único administrador ou entidade de serviço). Use essa opção quando um único usuário account (como uma entidade de serviço ou administrador) puder ser autorizado uma vez e depois usado por todos os usuários em todas as máquinas ou serviços.
- OAuth 2.0 Usuário para máquina por usuário : autenticação com interação individual do usuário para estabelecer acesso entre a identidade de cada usuário e a máquina ou serviço. Use essa opção quando cada usuário precisar log in e se autenticar com suas próprias credenciais para acessar o serviço externo com sua identidade pessoal. Observação: cada usuário precisa fazer login com seu Databricks account para autenticação.
Ao criar a conexão HTTP, certifique-se de:
- Marque a caixa de seleção É conexão mcp para ativar a funcionalidade MCP.
- Verifique se o URL de conexão aponta para um endpoint de servidor MCP válido.
Com o OAuth, o Databricks lida automaticamente com a troca de tokens e a atualização no vencimento - os usuários não precisam gerenciar o tokens manualmente.
Depois que a conexão UC é criada, Databricks provisiona automaticamente um proxy endpoint. Esse endpoint faz o proxy do tráfego com segurança para o servidor MCP externo, gerenciando a injeção e a renovação de tokens nos bastidores.
- Os tokens nunca são expostos aos usuários finais.
- Databricks Gerenciar todas as operações do ciclo de vida dos tokens - incluindo fluxos e tokens OAuth refresh.
Isso garante acesso seguro e de baixo atrito ao serviço MCP externo do Notebook, agentes e fluxo de trabalho.
Os URLs do endpoint do proxy seguem este formato:
https://<workspace-hostname>/api/2.0/mcp/external/{connection_name}
Conecte-se com a AI Playground
O senhor pode testar facilmente servidores MCP externos diretamente no AI Playground sem escrever nenhum código:
-
Abra AI Playground: Navegue até AI Playground em seu Databricks workspace.
-
Selecione um modelo de chamada de ferramenta: Escolha um modelo com o rótulo Tools enabled (Ferramentas ativadas ).
-
Adicionar ferramentas MCP: Clique em Ferramentas > + Adicionar ferramenta e selecione Servidores MCP nas opções de ferramentas disponíveis.
-
Escolha o servidor MCP externo: na seção Servidores MCP, selecione Servidores MCP externos para procurar as conexões externas disponíveis.
-
Selecione sua conexão: Para se conectar ao servidor MCP externo, escolha a conexão HTTP do Unity Catalog que o senhor criou anteriormente (por exemplo,
github_u2m_connection
) para se conectar ao servidor MCP externo. -
Teste interativo: comece a conversar com o LLM para testar como ele interage com suas ferramentas externas de servidor MCP. O AI Playground descobre automaticamente as ferramentas disponíveis em seu servidor MCP externo e as disponibiliza para o LLM.
Isso permite que o senhor crie rapidamente protótipos e teste integrações de servidores MCP externos antes de criar agentes completos ou implantá-los na produção.
Use o MCP SDK de código aberto
Com o URL do proxy endpoint da conexão, o senhor pode se conectar a um servidor MCP externo usando o código aberto Python SDK para servidores e clientes do Model Context Protocol. Isso permite que seus agentes Databricks invoquem ferramentas expostas por servidores MCP externos.
O exemplo abaixo mostra como usar uma conexão Unity Catalog chamada github_u2m_connection
para se conectar a um servidor MCP GitHub, listar as ferramentas disponíveis e chamar a ferramenta list_commits
para recuperar o commit recente:
%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_u2m_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()
Benefícios de autenticação e segurança
Databricks-Gerenciar servidores MCP externos oferece várias vantagens de segurança:
- Gerenciamento seguro de tokens : o site Databricks lida com todos os fluxos e tokens do OAuth refresh automaticamente
- Nenhuma credencial exposta : Os tokens nunca são expostos aos usuários finais
- Autenticação centralizada : Use as conexões do Unity Catalog para obter padrões de autenticação consistentes
Limitações
- A conectividade privada com o recurso em seu VPC usando o Private Link não é compatível com conexões MCP externas. Para permitir o acesso, o senhor deve incluir na lista de permissões os endereços IP do plano de controle do Databricks na configuração de segurança da VPC.
Next os passos
- Usar servidores MCP gerenciar juntamente com servidores externos
- Conecte IDEs externos à sua infraestrutura de MCP
- Crie servidores MCP personalizados para as necessidades da sua organização
- Agentes implantados que usam servidores MCP externos