Conecte agentes a ferramentas de terceiros com Serviços MCP
Beta
Este recurso está em Beta. Os administradores da account podem controlar o acesso a este recurso na página Prévias do console da account. Consulte Gerenciar prévias do Databricks.
Um serviço MCP é um securable do Unity Catalog que faz o registro de um servidor MCP externo e governa como os agentes o utilizam. O senhor o acessa pelo seu nome de três níveis, catalog.schema.mcp_service, e o invoca através do Unity AI Gateway, o plano de controle para gerenciar o tráfego de AI.
O registro de um servidor MCP como um item protegível do Unity Catalog significa que você o gerencia com as mesmas primitivas que protegem seus outros ativos do Unity Catalog. Isso inclui concessões para controlar quem pode invocá-lo, seleção de ferramentas para limitar quais ferramentas ele expõe, políticas de serviço para permitir ou negar chamadas de ferramenta individuais e registro de auditoria e uso para acompanhar cada invocação.
Existem duas maneiras de usar Serviços MCP:
Abordagem | Quando usar |
|---|---|
Deseja uma ferramenta comum de software como serviço (SaaS)—Slack, GitHub, Google Drive e outras—sem configuração. Nenhum servidor para hospedar e nenhuma conexão para criar. | |
Você tem um servidor MCP auto-hospedado ou de terceiros para governar como um securable do Unity Catalog. |
Os Serviços MCP conectam agentes a serviços externos. Para uso de dados do Databricks, utilize servidores MCP gerenciados; para hospedar suas próprias ferramentas, utilize um servidor MCP personalizado.
Veja de ponta a ponta
Para um exemplo completo—registre o servidor GitHub MCP, restrinja suas ferramentas, bloqueie chamadas destrutivas com uma política de serviço e audite o uso—siga Tutorial: Gerencie o acesso GitHub MCP de um agente de codificação.
Como funciona
Um agente chama um serviço MCP pela sua URL do Unity AI Gateway, e cada chamada flui pelo mesmo caminho governado:
- Invocar : O agente envia uma solicitação MCP para a URL do AI Gateway do serviço Unity, autenticado com a identidade Databricks do chamador.
- Autorize e governe : O gateway verifica se o chamador tem
EXECUTEno Serviço MCP no Unity Catalog. O serviço expõe apenas as ferramentas que você selecionou e avalia qualquer política de serviço anexada, que pode permitir, negar, exigir aprovação ou transformar a chamada. - Proxy com credenciais gerenciadas : A solicitação é encaminhada para o servidor MCP externo através da conexão HTTP do serviço. A Databricks armazena as credenciais e lida com os fluxos OAuth e o refresh de tokens, para que o agente nunca as veja.
- Log uso, auditoria e rastreamentos : cada invocação é registrada em tabelas do sistema, para que você possa monitorar o uso e a atividade de auditoria ao longo do tempo.
Requisitos
-
Um workspace habilitado para o Unity Catalog.
-
Para governar um servidor MCP externo como um serviço MCP, o Unity AI Gateway Beta e a prévia de Servidores MCP Gerenciados devem estar habilitados para sua account. Consulte Gerenciar prévias do Databricks.
-
Um workspace em uma região onde o Model Serving é compatível. Consulte disponibilidade de recursos de serviço de modelo.
Serviços MCP fornecidos pela Databricks
O Databricks oferece serviço MCP pronto para uso no esquema system.ai para aplicações SaaS comuns, para que os agentes possam acessar essas ferramentas sem hospedar ou fazer o registro de seu próprio servidor MCP. Cada um é um Serviço MCP integrado que você acessa pelo nome do Unity Catalog. Para conceder acesso a um agente, conceda EXECUTE no serviço (por exemplo, system.ai.github) — nenhuma configuração de conexão é necessária. Serviços integrados são fornecidos com ferramentas gerenciadas pela plataforma e uma política de serviço integrada, como uma para bloquear operações de gravação. Gerencie-os com concessões, em vez de com a seleção de ferramentas personalizadas ou funções de política.
Serviço MCP | Conecta-se a |
|---|---|
| Slack |
| GitHub |
| Jira e Confluence |
| Google Drive |
| Google Agenda |
| Gmail |
| Microsoft SharePoint |
Para Google Drive, Gmail, Google Calendar ou SharePoint, esses serviços integrados lidam com o OAuth para você, sem a necessidade de registro de aplicativo.
Registro de um servidor MCP externo
Registre seu próprio servidor MCP externo como um Serviço MCP em cinco passos:
- Crie uma conexão do Unity Catalog com o servidor MCP.
- Crie o serviço MCP dessa conexão.
- Autentique-se, se a conexão usar OAuth por usuário.
- Conceda acesso a seus colegas de equipe.
- Invoque o serviço, então governe-o com seleção de ferramentas e políticas de serviço.
O servidor MCP externo deve usar o mecanismo de transporte HTTP streaming. São necessárias as seguintes permissões:
- Para criar a conexão ,
CREATE CONNECTIONno esquema onde a criar. - Para criar um serviço MCP,
USE CATALOGeUSE SCHEMAno catálogo e esquema pai,CREATE SERVICEno esquema eUSE CONNECTIONna conexão que o serviço MCP referencia. - Para invocar um serviço MCP,
EXECUTEno serviço MCP,USE CATALOGeUSE SCHEMAem seu catálogo e esquema pai, e atribuição ao workspace onde você emite a solicitação.
A invocação de um serviço MCP exige **nenhum privilégio na conexão subjacente** —EXECUTE no serviço MCP é suficiente. Não conceda USE CONNECTION aos usuários finais: isso permite que eles chamem o servidor externo diretamente pela conexão, ou façam o registro do seu próprio serviço MCP nele, ignorando a seleção de ferramentas, políticas de serviço e auditoria do seu serviço MCP. Reserve o acesso à conexão para autores de serviço e administradores.
Criar uma conexão
Um Serviço MCP faz referência a uma conexão HTTP do Unity Catalog que armazena com segurança o endpoint e as credenciais do servidor externo. O Databricks executa um proxy gerenciado à frente dele para lidar com a autenticação e o refresh de tokens, para que você não incorpore credenciais no seu agente ou código de cliente.
Crie a conexão no nível de esquema para que seja governada juntamente com o Serviço MCP. Você pode configurá-lo com antecedência com os passos abaixo, ou criar um enquanto você cria o Serviço MCP clicando em Criar nova conexão . As conexões em nível de metastore são suportadas, mas não recomendadas.
Escolha uma das duas maneiras:
- Create an HTTP connection
- Install from Marketplace
Para qualquer servidor MCP, incluindo servidores próprios ou de terceiros:
- Vá para Catálogo > Conexões > Criar conexão .
- Selecione **HTTP** como o tipo de conexão.
- Digite a URL do servidor MCP.
- Escolha um tipo de autenticação: bearer token, OAuth M2M, OAuth U2M ou Dynamic Client Registration. Para obter detalhes de configuração, consulte Crie uma conexão com o serviço externo.
Para provedores de OAuth gerenciados—Glean, GitHub, Atlassian e Slack—o Databricks gerencia as credenciais, então você não registra seu próprio aplicativo OAuth. Consulte Provedores de OAuth gerenciados.
Use um servidor MCP selecionado do Databricks Marketplace com uma conexão pré-configurada. Consulte Obter acesso a servidores MCP externos.
Criar o Serviço MCP
Você pode criar um Serviço MCP da IU ou com a API REST. O Beta não oferece suporte a SQL DDL para Serviços MCP.
- UI
- REST API
- Em seu workspace Databricks, vá para AI Gateway > MCPs > Registro Servidor MCP , ou vá para Catálogo , selecione um esquema e clique em Criar > Serviço MCP .
- Insira o catálogo, o esquema e um nome para o serviço MCP. O nome não pode ser alterado após a criação.
- Selecione uma conexão HTTP existente para o servidor MCP, ou clique em **Criar nova conexão** para criar uma. Navegue sob um esquema para selecionar uma conexão em nível de esquema; para usar uma conexão em nível de metastore, desative **Navegar sob um esquema**.
- Em **Ferramentas**, selecione quais ferramentas disponibilizar. Consulte Selecionar quais ferramentas são expostas.
- Opcionalmente, adicione um comentário que descreva o Serviço MCP.
- Clique em Criar . O Serviço MCP é publicado no catálogo e esquema que o senhor especificou.
Crie um Serviço MCP que faça referência a uma conexão HTTP existente do Unity Catalog. Defina parent para o esquema de destino e mcp_service_id para o nome do serviço:
databricks api post \
"/api/2.1/unity-catalog/mcp-services?parent=schemas/main.default&mcp_service_id=my_mcp" \
--json '{
"comment": "External MCP server",
"config": {
"connection": {
"name": "connections/main.default.my_connection"
},
"include_tool_selectors": []
}
}'
include_tool_selectors controla quais ferramentas o serviço expõe. Uma lista vazia expõe todas as ferramentas. Consulte Selecionar as ferramentas expostas.
Atualize um serviço MCP existente com uma solicitação PATCH e uma update_mask que nomeie os campos a serem alterados:
databricks api patch \
"/api/2.1/unity-catalog/mcp-services/main.default.my_mcp?update_mask=comment" \
--json '{ "comment": "Updated description" }'
Autenticar
Se o Serviço MCP referencia uma conexão que usa OAuth por usuário, conclua um login único antes da primeira chamada:
- Abra a página de detalhes do serviço MCP no Catalog Explorer.
- Clique em Fazer login e conclua o fluxo de consentimento OAuth do provedor.
- Após o login, a página de detalhes exibe automaticamente a lista de ferramentas descobertas.
O Unity Catalog armazena os tokens associados à sua identidade. Se você chamar o Serviço MCP antes de fazer login, o AI Gateway retornará um erro solicitando que você se autentique.
Conceder acesso a colegas de equipe
Por default, somente o proprietário do Serviço MCP pode invocá-lo. Conceda EXECUTE para que outros usuários, grupos ou entidades de serviço invoquem o serviço. Uma única concessão de EXECUTE cobre todas as ferramentas do serviço.
- UI
- REST API
- Abra o serviço MCP no Catalog Explorer, ou vá para AI Gateway > MCPs e selecione o serviço.
- Vá para a Permissões tab.
- Clique em Conceder .
- Selecione os usuários, grupos ou entidades de serviço aos quais conceder acesso.
- Selecione o privilégio de EXECUÇÃO .
- Clique em Conceder .
databricks api patch \
"/api/2.1/unity-catalog/permissions/mcp_service/main.default.my_mcp" \
--json '{
"changes": [
{ "principal": "data-team", "add": ["EXECUTE"] }
]
}'
Invocar um Serviço MCP
Experimente um serviço MCP no AI Playground, da linha de comando, ou do código do seu agente ou cliente.
Teste o serviço MCP
- AI Playground
- CURL
Teste as ferramentas de um serviço MCP na UI sem escrever código:
- Acesse o AI Playground em seu workspace da Databricks.
- Selecione um modelo com o rótulo Ferramentas ativadas .
- Clique em Ferramentas > + Adicionar ferramenta e selecione Servidores MCP .
- Selecione Servidores MCP externos e, em seguida, selecione o Serviço MCP.
- Converse com o modelo para ver como ele chama as ferramentas do Serviço MCP.
É possível também testar de Genie Code — consulte Adicionar servidores MCP ao Assistente.
Para uma verificação rápida por linha de comando, use a solicitação gerada na página de detalhes do Serviço MCP. Em **Começar**, clique em **Gerar Access Token** para copiar um access token para os exemplos de solicitação. Os exemplos passam o token como um bearer token no cabeçalho Authorization.
É possível também autenticar a CLI do Databricks em seu workspace e, em seguida, usar databricks auth token para obter um access token OAuth:
databricks auth login --host https://<workspace-url>
Todas as solicitações vão para o mesmo endpoint do Serviço MCP—o JSON-RPC method no corpo da solicitação seleciona a operação. Liste as ferramentas que o serviço expõe:
TOKEN=$(databricks auth token | jq -r .access_token)
curl -s -X POST \
"https://<workspace-url>/ai-gateway/mcp-services/main.default.my_mcp" \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json, text/event-stream" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'
Chamar uma ferramenta:
curl -s -X POST \
"https://<workspace-url>/ai-gateway/mcp-services/main.default.my_mcp" \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json, text/event-stream" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"<tool_name>","arguments":{'
Utilize a partir do código de agente ou de um agente de codificação
- Código do agente (OpenAI Agents SDK, LangGraph ou Model Serving): consulte Usar servidores MCP em agentes.
- Assistentes de AI e agentes de codificação (Claude, Claude Code, Cursor): consulte Conectar MCPs a assistentes de AI e agentes de codificação.
Gerencie um serviço MCP
Selecione quais ferramentas são expostas
Por default, um Serviço MCP disponibiliza todas as ferramentas que o servidor MCP fornece. Para disponibilizar apenas um subconjunto, selecione as ferramentas ao criar o Serviço MCP, ou atualize a seleção posteriormente. Cada seletor é correspondido a nomes de ferramentas: um padrão que termina em * é uma correspondência de prefixo (get_* corresponde a get_me e get_issue), e qualquer outro valor é uma correspondência exata (search_repositories corresponde apenas a essa ferramenta).
- UI
- REST API
No fluxo de criação, em Ferramentas :
- Selecione Selecionar manualmente para selecionar cada ferramenta individualmente.
- Selecione **Avançado** para inserir padrões de seleção, usando as regras de prefixo e de correspondência exata descritas acima.
- Ative **Incluir ferramentas adicionadas a este servidor automaticamente no futuro** para disponibilizar novas ferramentas à medida que o servidor MCP as adicionar.
Para alterar a seleção de ferramentas após a criação, defina include_tool_selectors com uma solicitação de PATCH. Restringir um serviço a somente get_* ferramentas:
databricks api patch \
"/api/2.1/unity-catalog/mcp-services/main.default.my_mcp?update_mask=config.include_tool_selectors" \
--json '{
"config": {
"include_tool_selectors": ["get_*"]
}
}'
Reset para disponibilizar todas as ferramentas definindo include_tool_selectors para uma lista vazia.
As ferramentas que você não selecionar não aparecem em tools/list, e o serviço MCP rejeita um tools/call para uma ferramenta não selecionada:
{ "code": -32003, "message": "Tool not allowed by MCP service configuration." }
Aplicar uma política de serviço
Uma política de serviço avalia cada chamada de ferramenta antes de sua execução (ON CALL) e, opcionalmente, seu resultado (ON RESULT). Uma política pode permitir, negar, exigir aprovação humana ou transformar a solicitação — por exemplo, para bloquear operações destrutivas ou ocultar PII — sem alterar as ferramentas disponíveis. As políticas de serviço fazem parte da governança de AI no Unity Catalog.
Para escrever uma função de política e anexá-la a um serviço MCP, consulte Políticas de serviço para securables de AI e Criar e anexar uma política de serviço.
Definir limites de taxa
Limite a frequência com que os agentes podem chamar um Serviço MCP para controlar custos e proteger o servidor externo. Consulte Configurar limites de taxa para serviços de AI usando o Unity AI Gateway.
Monitore o uso
O Unity AI Gateway registra a atividade de cada serviço MCP nas tabelas do sistema do Unity Catalog:
- **Uso**: volume de chamadas, erros e latência em
system.ai_gateway.usageservice_type = 'MCP_SERVICE'(filtrar). Consulte Uso do modelo para serviços do Unity AI Gateway. - Auditoria : alterações no plano de controle (
createMcpService,updateMcpService,deleteMcpService) e cada invocação (mcpCall) emsystem.access.audit. Consulte a referência da tabela do sistema de log de auditoria. - Rastreamentos : as solicitações de chamada de ferramentas, respostas e decisões de política são capturadas pelo registro em log de rastreamento, que é habilitado uma vez no nível da conta e compartilhado em todos os Serviços MCP.
- Dashboard : o tráfego do servidor MCP externo aparece no painel de uso integrado do Unity AI Gateway. Consulte Painel de uso integrado.
Para todas as tabelas do sistema do Unity Catalog, consulte Referência de tabelas do sistema. Para uma visão geral da governança do tráfego de AI, consulte governança de AI no Unity Catalog.
Autenticação e segurança
Databricks usa proxies MCP gerenciados e conexões HTTP do Unity Catalog para lidar com segurança com a autenticação em servidores MCP externos.
- Autenticação Principal Compartilhada : todos os usuários compartilham as mesmas credenciais ao acessar o serviço externo. Isso inclui token Bearer, OAuth Machine-to-Machine (M2M) e autenticação OAuth compartilhada de usuário para máquina. Use isso quando o serviço externo não exigir acesso específico do usuário, ou quando uma única account de serviço for suficiente.
- **Autenticação por usuário (OAuth U2M por usuário)**: Cada usuário se autentica com suas próprias credenciais. O serviço externo recebe solicitações em nome do usuário individual, permitindo controle de acesso, auditoria e responsabilidade específicos do usuário. Use isto ao acessar recursos específicos do usuário, como os repositórios GitHub, mensagens do Slack ou calendário de um usuário.
A Databricks lida com os fluxos OAuth e o refresh de tokens, então os usuários finais não veem os tokens. Você visualiza e gerencia suas conexões MCP externas juntamente com seus endpoints de LLM no Unity AI Gateway. Para instruções de configuração detalhadas para cada método de autenticação, consulte conexões HTTP.
Limitações
Durante a fase Beta, aplicam-se as seguintes limitações aos serviços MCP:
- O SQL DDL para serviços MCP (por exemplo,
CREATE MCP SERVICE) não está disponível. Crie e gerencie serviços MCP com a interface do usuário ou a API REST. - Você pode registrar apenas servidores MCP externos como seu próprio Serviço MCP. O registro de fontes de entidade do Genie, Aplicativos ou Unity Catalog como um Serviço MCP não é atualmente suportado. A Databricks também fornece Serviços MCP integrados para aplicativos SaaS comuns.
- A seleção de ferramentas suporta padrões de prefixo (
get_*) e de correspondência exata. Padrões de exclusão (por exemplo,!delete_*) não são suportados. - A Pesquisa Global do Unity Catalog não exibe Serviços MCP.
Conexões de servidor MCP externo também têm as seguintes limitações:
- Servidores MCP externos estão disponíveis apenas em regiões onde o Model Serving é suportado, incluindo o uso em AI Playground, Genie Code e Chat no Genie. Consulte disponibilidade dos recursos de servindo modelo.
- A conectividade privada a recurso em sua cloud privada virtual (VPC) usando o Private Service Connect não é suportada. Entre em contato com sua equipe de suporte se precisar dessa funcionalidade.
Próximos os passos
- Usar servidores MCP em agentes para chamar um serviço MCP programaticamente a partir do código do agente.
- Conecte MCPs a assistentes de AI e agentes de codificação para conectar agentes de codificação e assistentes de AI.
- Unity AI Gateway para governar servidores MCP e endpoint de LLM a partir de um local central.
- Governança de AI no Unity Catalog para uma visão geral da governança de ativos de AI e do tráfego de AI.