Servidor MCP gerenciado pelo Looker
O servidor MCP gerenciado pelo Looker é uma integração integrada que incorpora um servidor do Protocolo de Contexto de Modelo (MCP) diretamente na plataforma Looker. Ele permite que agentes de IA, como a CLI do Gemini, o Claude Desktop, o Cursor e o Copilot, se conectem com segurança a uma instância do Looker e interajam com dados comerciais e modelos LookML.
Ao hospedar o servidor, o Looker elimina a necessidade de implantar e manter sua própria infraestrutura de middleware, oferecendo um gateway plug-and-play, seguro e controlado para insights de negócios confiáveis.
O servidor MCP gerenciado pelo Looker está em pré-lançamento para instâncias do Looker (Google Cloud Core) e do Looker (original). As instâncias hospedadas pelo cliente (no local) estão indisponíveis para esta prévia.
Se você estiver usando uma instância hospedada pelo cliente ou preferir gerenciar sua própria infraestrutura, conecte-se usando a MCP Toolbox for Databases independente. A MCP Toolbox é um servidor MCP de código aberto que pode ser executado no seu computador local ou em um servidor próprio para atuar como uma ponte entre agentes de IA e sua instância do Looker. Consulte a página de documentação Usar o Looker com MCP, CLI do Gemini e outros agentes para mais informações.
Antes de começar
Para usar o servidor MCP gerenciado pelo Looker, você precisa atender aos seguintes requisitos:
Requisitos de instância
- Você precisa usar uma instância do Looker (Google Cloud Core) ou do Looker (original).
- A instância precisa ser hospedada pelo Looker.
Permissões necessárias
- Para gerenciar o acesso à ferramenta: você precisa ter a função Administrador do Looker.
- Para registrar seu agente de IA como um cliente OAuth usando o APIs Explorer, você precisa ter a função Administrador do Looker.
- Para conectar um agente de IA ao servidor MCP gerenciado pelo Looker: você precisa das suas credenciais de login padrão do Looker para autenticar durante o processo de conexão do OAuth. O agente de IA precisa ser registrado como um cliente OAuth por um administrador do Looker. Depois de conectado, o agente de IA vai herdar as funções e o acesso do Looker do usuário que fez a autenticação.
Configurar o servidor MCP gerenciado
Configure o acesso à ferramenta para configurar o servidor MCP gerenciado.
Configurar as ferramentas
Por padrão, todas as ferramentas estão desativadas para o servidor MCP gerenciado. Os administradores do Looker precisam ativar explicitamente as ferramentas que os agentes de IA podem usar. Consulte a página de documentação Configurações de administrador - Protocolo de Contexto de Modelo (MCP) para saber como ativar as ferramentas.
Configurar as definições do CORS
Se o cliente MCP estiver sendo executado diretamente em um navegador da Web e quiser se comunicar com o servidor MCP gerenciado pelo Looker usando CORS, o administrador do Looker precisará adicionar o domínio do site do cliente à lista de permissões de domínio incorporado no painel Administrador.
Registrar um agente de IA usando OAuth
Durante o lançamento da prévia, os administradores do Looker precisam registrar manualmente um agente de IA para conectá-lo ao servidor MCP gerenciado.
Abra o API Explorer do Looker.
Se a instância do Looker já tiver o API Explorer instalado, acesse-o com este formato de URL:
LOOKER_INSTANCE_URL/extensions/marketplace_extension_api_explorer::api-explorer/Se a sua instância do Looker não tiver o API Explorer, instale-o no Marketplace do Looker. Consulte a página Como usar o API Explorer para mais informações.
Se você estiver usando uma instância de conexões particulares do Looker (Google Cloud Core) que usa o acesso a serviços particulares, o Marketplace do Looker e o API Explorer não serão compatíveis. Para registrar um agente de IA, chame o endpoint de API
oauth_client_appsdiretamente. Se você usar esse método, pule o procedimento do API Explorer a seguir e vá direto para a seção Configurar um cliente MCP.Expanda esta seção para ver um exemplo de comando
curlque pode ser usado com o endpointoauth_client_appspara registrar o agente.curl -X POST "https://LOOKER_INSTANCE_URL/api/4.0/oauth_client_apps/CLIENT_GUID" \ -H "Authorization: token ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "redirect_uri": "REDIRECT_URI", "display_name": "CLIENT_NAME", "description": "OAuth client to access MCP server using CLIENT_NAME", "enabled": true }'
No método Auth, encontre o endpoint de API Registrar app OAuth. Você também pode pesquisar "app OAuth" no campo Pesquisar.
Na página Registrar app OAuth, clique no botão Executar.
Na guia Solicitação da caixa de diálogo Executar, insira as seguintes informações nos campos correspondentes:
Para o campo
CLIENT_GUID, siga estas etapas:- Se o agente prescrever um ID do cliente específico, use esse ID do cliente.
- Se o agente não prescrever um ID do cliente específico, use qualquer ID globalmente exclusivo.
- Prepare-se para distribuir o ID a todos os desenvolvedores do LookML que quiserem usar o agente.
Para o
redirect_uri, o URI varia de acordo com o aplicativo do agente de IA. Consulte a documentação de autenticação OAuth do seu agente para conferir o URL de redirecionamento específico. O formato pode ser parecido com um dos seguintes exemplos:CLI do Gemini
http://localhost:7777/oauth/callback
Gemini Code Assist
http://localhost:7777/oauth/callback
Recomendamos usar a CLI do Gemini com o Gemini Code Assist. Nesse caso, eles compartilham o mesmo servidor de callback local e a mesma configuração de porta.
Gemini Enterprise
https://vertexaisearch.cloud.google.com/oauth-redirect
Código do Claude
O Claude Code usa uma porta disponível aleatória para o callback do OAuth, mas você precisa corrigir isso usando a flag
ou a configuração--callback-port 8080callbackPortemmcp.jsonpara corresponder ao URI registrado.http://localhost:8080/callback
VS Code
Para o VS Code, use o seguinte URI.
http://127.0.0.1:33418/
Apps hospedados na nuvem
Para aplicativos hospedados na nuvem, ele pode parecer um URL HTTPS seguro:
https://AI_AGENT_URL/oauth2callback
Apps locais
Para aplicativos executados localmente, ele precisa ser um URL de localhost com uma porta estática:
http://localhost:7777/oauth/callback
Conclua
display_nameedescriptionconforme descrito na documentação Registrar um aplicativo cliente OAuth.
Marque a caixa de seleção Entendo que este endpoint de API vai mudar os dados.
Clique em Executar.
Para verificar se você configurou a autenticação corretamente, use o método
Get OAuth Client Appno API Explorer seguindo estas etapas:- No campo Pesquisar do API Explorer, insira Get OAuth Client App.
- Clique em Executar.
No campo CLIENT_GUID, insira o valor usado ao registrar o OAuth:
CLIENT_GUID
Se você configurar o OAuth corretamente, a guia Resposta vai retornar os valores inseridos ao registrar o app.
(Opcional) É possível ativar o usuário do app OAuth com antecedência usando o método
Activate App Userno APIs Explorer. Para isso, siga estas etapas:- No campo Pesquisar do API Explorer, insira Activate App User.
- Clique em Executar.
No campo CLIENT_GUID, insira o valor usado ao registrar o app OAuth:
CLIENT_GUIDNo campo user_id, insira o ID do usuário do Looker.
Clique em Executar.
Configurar o cliente MCP
Depois que o agente de IA for registrado, você poderá conectá-lo ao endpoint MCP gerenciado como um cliente MCP. Consulte a documentação do seu agente para concluir a configuração do cliente.
- URL do servidor:
LOOKER_INSTANCE_URL/mcp - Autenticação:OAuth 2.1
Exemplos de configurações (mcp.json)
Nesta seção, descrevemos como configurar várias ferramentas para desenvolvedores e se conectar à sua instância do Looker usando o servidor MCP gerenciado pelo Looker. O servidor MCP fica entre seu ambiente de desenvolvimento integrado (IDE) e o Looker, oferecendo um plano de controle seguro e eficiente para suas ferramentas de IA. Selecione a guia da sua ferramenta específica para conferir as instruções de configuração.
CLI do Gemini
Configure a CLI do Gemini para se conectar diretamente ao servidor MCP gerenciado pelo Looker.
- Instale a CLI do Gemini.
- Adicione o servidor MCP remoto usando o comando a seguir, substituindo
LOOKER_INSTANCE_URLpelo URL da sua instância do Looker:gemini mcp add --transport http looker LOOKER_INSTANCE_URL/mcp
Como alternativa, você pode configurar isso manualmente adicionando a seguinte configuração ao arquivo
settings.json(localizado em~/.gemini/settings.jsonou no diretório do projeto):{ "mcpServers": { "looker": { "httpUrl": "LOOKER_INSTANCE_URL/mcp", "oauth": { "clientId": "CLIENT_GUID" } } } } - Inicie a CLI do Gemini no modo interativo:
Quando solicitado a se conectar, a CLI inicia o fluxo de autorização do OAuth para fazer a autenticação com segurança na sua instância do Looker.gemini
Gemini Code Assist
Recomendamos que você configure o Gemini Code Assist para usar a CLI do Gemini. Essa abordagem elimina a necessidade de configurar manualmente um servidor MCP.
- Verifique se você instalou e configurou a CLI do Gemini e o servidor MCP gerenciado pelo Looker.
- Configure o Gemini Code Assist para usar a CLI do Gemini.
- Comece a interagir com sua instância do Looker usando linguagem natural diretamente no chat do Gemini Code Assist.
Gemini Enterprise
Configure o Gemini Enterprise para se conectar ao servidor MCP gerenciado pelo Looker como um repositório de dados de servidor MCP personalizado.
- Siga a documentação oficial para criar um repositório de dados de servidor MCP personalizado no Gemini Enterprise.
- Para a configuração do armazenamento de dados, use os valores a seguir, substituindo
LOOKER_INSTANCE_URLpelo URL da instância do Looker eCLIENT_GUIDpela string exata usada durante o registro do app OAuth:{ "instance_uri": "LOOKER_INSTANCE_URL/mcp", "auth_uri": "LOOKER_INSTANCE_URL/auth", "auth_uri_params": "&response_type=code&code_challenge_method=S256", "token_uri": "LOOKER_INSTANCE_URL/api/token", "client_id": "CLIENT_GUID", "client_secret": "none", "scopes": "cors_api", "pkce_support_enabled": "true" }O PKCE não exige uma chave secreta do cliente OAuth, mas o Gemini Enterprise requer um valor no campo
client_secret. Você pode inserirnone, conforme mostrado no exemplo de configuração. - Faça a autenticação pelo OAuth para continuar.
- Defina a descrição do servidor MCP para ajudar o Gemini a entender quando invocar o servidor. Exemplo:
Looker Agent with API access to various aspects of Looker. Primarily used to fetch data and run dashboards from Looker.
- Defina as instruções do agente do servidor MCP. Exemplo:
Use this server exclusively to interact with the Looker instance for monitoring health, checking status, and retrieving data. Invoke the Looker MCP server for the following request categories: - Instance Health Checks: Auditing connection status, uptime, performance metrics, or system errors. - Analytics Queries & Data Retrieval: Fetching live business metrics from Explores, Looks, or Dashboards. Strict Constraints: - No Local Estimation: Do not guess. Always fetch real-time data via MCP tools. - Fallback Behavior: Inform the user of connectivity failures immediately.
- Navegue até a guia Ações no repositório de dados MCP personalizado que você acabou de criar e ative as ferramentas que quer que o Gemini Enterprise use.
- Para finalizar a configuração, acesse o Gemini Enterprise, clique no ícone Conector e autorize o servidor MCP.
Código do Claude
- Instale o Claude Code.
- Crie o arquivo
.mcp.jsonna raiz do projeto, se ele não existir. - Adicione a seguinte configuração, substituindo
LOOKER_INSTANCE_URLpelo URL da sua instância do Looker eCLIENT_GUIDpelo GUID do cliente OAuth. Depois, salve.
{
"mcpServers": {
"looker": {
"type": "http",
"url": "LOOKER_INSTANCE_URL/mcp",
"oauth": {
"clientId": "CLIENT_GUID",
"callbackPort": 8080
}
}
}
}
Claude para computador
- No Claude para computador, acesse Configurações e selecione Conectores.
- Escolha Adicionar conector personalizado e insira um nome (por exemplo, Looker).
- No URL, insira o URL da sua instância do Looker com o caminho
/mcpanexado (por exemplo,https://looker.example.com/mcp). - Em Configurações avançadas, insira a string exata que você usou para o
CLIENT_GUIDdurante o registro do app OAuth. Deixe a chave secreta do cliente OAuth em branco. - Selecione Adicionar para salvar o conector. Quando solicitado a se conectar, o Claude para computador inicia com segurança o fluxo de autorização PKCE pelo navegador.
- Reinicie o Claude para computador.
Cline
- Abra a extensão Cline no seu ambiente de desenvolvimento integrado e clique no ícone Servidores MCP.
- Clique em Configurar servidores MCP para abrir o arquivo de configuração.
- Adicione a seguinte configuração, substituindo
LOOKER_INSTANCE_URLpelo URL do Looker e salve.
{
"mcpServers": {
"looker": {
"type": "http",
"url": "LOOKER_INSTANCE_URL/mcp"
}
}
}
Cursor
- Crie o diretório
.cursorna raiz do projeto, se ele não existir. - Crie o arquivo
.cursor/mcp.json, se ele não existir, e abra-o. - Adicione a seguinte configuração, substituindo
LOOKER_INSTANCE_URLpelo URL do Looker e salve.
{
"mcpServers": {
"looker": {
"url": "LOOKER_INSTANCE_URL/mcp",
auth: {
"CLIENT_ID": "CLIENT_GUID"
}
}
}
}
- Abra Cursor e navegue até Configurações > Configurações do cursor > MCP. Um status ativo verde aparece quando o servidor se conecta.
Visual Studio Code (Copilot)
- Abra o VS Code e crie o diretório
.vscodena raiz do projeto, se ele não existir. - Crie o arquivo
.vscode/mcp.json, se ele não existir, e abra-o. - Adicione a configuração a seguir, substituindo
LOOKER_INSTANCE_URLpelo URL da sua instância do Looker e salve.
{
"servers": {
"looker": {
"type": "http",
"url": "LOOKER_INSTANCE_URL/mcp"
}
}
}
Windsurf
- Abra o Windsurf e navegue até o assistente do Cascade.
- Clique no ícone do MCP e em Configurar para abrir o arquivo de configuração.
- Adicione a seguinte configuração, substituindo
LOOKER_INSTANCE_URLpelo URL da sua instância do Looker e salve.
{
"mcpServers": {
"looker": {
"type": "http",
"url": "LOOKER_INSTANCE_URL/mcp"
}
}
}
Autenticar com o cliente
Depois de configurar o cliente do MCP com as configurações mcp.json, a primeira vez que você tentar interagir com o Looker usando esse cliente, ele vai iniciar o fluxo de autenticação do OAuth 2.1. Normalmente, isso envolve o cliente abrir uma janela do navegador em que você precisa fazer login na sua instância do Looker usando suas credenciais padrão e conceder ao aplicativo permissão para acessar o Looker em seu nome.
Esse processo de login é a etapa de autenticação interativa que permite ao cliente do MCP receber um token de acesso para fazer solicitações futuras.
Consulte a documentação do cliente para mais detalhes.
Depois de conectado, o cliente vai herdar suas funções e acesso ao conteúdo do Looker. O cliente também terá acesso às ferramentas de IA que o administrador do Looker ativou para o servidor MCP. Para uma lista de todas as ferramentas possíveis, consulte a documentação Usar ferramentas de IA.
Segurança e governança
O servidor MCP gerenciado foi projetado para herdar a estrutura de segurança e governança do Looker.
- Limite de permissões:o servidor aplica permissões rigorosas no nível do usuário. Um agente de IA não pode acessar dados ou modelos que o usuário autenticado não tem autorização para ver.
- VPC Service Controls:para instâncias do Looker (Google Cloud Core) que usam o VPC Service Controls, o endpoint do MCP gerenciado respeita os limites atuais do VPC Service Controls sem exigir outras políticas ou configurações.
- Chaves de criptografia gerenciadas pelo cliente (CMEK): para instâncias do Looker (Google Cloud Core) que usam CMEK, o servidor MCP gerenciado está em conformidade com a CMEK sem políticas ou configurações adicionais necessárias.
- Listas de permissões de IP:para instâncias que usam uma lista de permissões de IP no Looker (Google Cloud Core) ou no Looker (original), o endpoint MCP gerenciado respeita as regras de lista de permissões de IP atuais sem exigir configurações adicionais.
Registro de auditoria
Todas as ações realizadas por um agente de IA são registradas na atividade do sistema do Looker e nos registros de auditoria do Cloud.
Atividade do sistema
A atividade do servidor MCP gerenciado pelo Looker é rastreada nas Análises detalhadas de Histórico e Atributo do evento. A página de documentação Monitorar o uso do Looker com as análises detalhadas da atividade do sistema fornece os seguintes exemplos de consultas:
- Quais chamadas de API foram iniciadas pelo servidor MCP gerenciado pelo Looker?
- Quais eventos estão relacionados a uma solicitação do servidor MCP gerenciado pelo Looker?
- Quais atualizações foram feitas nas configurações da ferramenta do servidor MCP gerenciado pelo Looker pelos administradores do Looker?
- Quais consultas foram executadas pelos usuários do servidor MCP gerenciado pelo Looker?
Registros de auditoria do Cloud
As instâncias do Looker (Google Cloud Core) também rastreiam a atividade do servidor MCP gerenciado pelo Looker usando os Registros de auditoria do Cloud. A página de documentação Registro de auditoria do Looker (Google Cloud Core) oferece consultas de exemplo.
Limitações
- Escopos refinados:os escopos do OAuth ainda não são compatíveis com o servidor MCP gerenciado. O controle de acesso depende da lista de permissões global da ferramenta e das permissões básicas do usuário.
- Registro dinâmico:o Registro Dinâmico de Clientes está indisponível na prévia.
- Atualização do cliente:as mudanças na lista de permissões de ferramentas não são enviadas automaticamente aos clientes conectados. Os usuários precisam esperar 30 segundos depois de fazer uma mudança na lista de ferramentas e reconectar o cliente para atualizar o manifesto de ferramentas. Consulte a documentação do cliente para saber como se reconectar ao servidor MCP.
- Capacidade do servidor: durante a fase de prévia, o servidor MCP gerenciado é configurado com uma capacidade fixa para nos ajudar a coletar dados de performance. Durante períodos de pico de uso, você pode ter tempos limite ocasionais. Esse é o comportamento esperado.
Preços e cotas
O servidor MCP gerenciado pelo Looker está disponível sem custo financeiro extra. No entanto, as chamadas de ferramentas feitas por agentes de IA consomem as cotas padrão de API administrativas e baseadas em consultas da instância. A alta atividade do agente pode afetar sua cota de API disponível.