Usar o Looker com o MCP, a CLI do Gemini e outros agentes

Nesta página, mostramos como conectar sua instância do Looker a várias ferramentas para desenvolvedores.

Para ter a experiência mais eficiente e integrada, recomendamos usar a extensão dedicada do Looker para a CLI do Gemini. Use a camada semântica do Looker para fornecer à CLI do Gemini acesso seguro, controlado e sob demanda a dados confiáveis e acelere os fluxos de trabalho automatizando a criação de relatórios, visualizações e painéis com comandos de linguagem natural. Como a interface de linha de comando de próxima geração do Google Cloud, a CLI do Gemini é a ferramenta recomendada para interagir com suas instâncias do Looker pela linha de comando.

Você também pode conectar outros ambientes de desenvolvimento integrado (IDEs) e ferramentas para desenvolvedores que oferecem suporte ao Protocolo de Contexto de Modelo (MCP) usando a Caixa de ferramentas do MCP para bancos de dados de uso geral. A MCP Toolbox é um servidor MCP de código aberto que simplifica a conexão de agentes de IA aos seus dados, lidando com complexidades como autenticação e pool de conexões. Assim, você pode interagir com seus dados usando a linguagem natural diretamente do seu ambiente de desenvolvimento integrado (IDE, na sigla em inglês). Para essas ferramentas, esse método oferece recursos principais de interação com o banco de dados.

Sobre a CLI do Gemini e as extensões

A CLI do Gemini é um agente de IA de código aberto projetado para acelerar os fluxos de trabalho de desenvolvimento, ajudando na programação, depuração, análise de dados e criação de conteúdo. A missão dele é oferecer uma experiência elegante para interagir com serviços de nuvem de dados e bancos de dados de código aberto conhecidos.

Como as extensões funcionam

A CLI do Gemini é altamente extensível, permitindo a adição de novas ferramentas e recursos por meio de extensões. Essas extensões são fáceis de instalar. É possível carregá-los de um URL do GitHub, um diretório local ou um registro configurável. Essas extensões oferecem um conjunto avançado de recursos, incluindo novas ferramentas, comandos de barra e comandos para simplificar seu fluxo de trabalho.

Configurar o Looker

  1. Receba um ID e uma chave secreta do cliente do Looker. Siga as instruções na página de documentação Autenticação da API Looker.
  2. Tenha o URL de base da sua instância do Looker disponível. Provavelmente é algo como https://looker.example.com. Em alguns casos, a API detecta uma porta diferente, e você precisa usar https://looker.example.com:19999.

Instalar a MCP Toolbox

  1. Faça o download da versão mais recente da MCP Toolbox como um binário. Selecione o binário que corresponde à arquitetura do SO e da CPU. Use a versão V0.14.0 ou mais recente da caixa de ferramentas do MCP.

    linux/amd64

    curl -O https://storage.googleapis.com/genai-toolbox/v0.14.0/linux/amd64/toolbox

    darwin/arm64

    curl -O https://storage.googleapis.com/genai-toolbox/v0.14.0/darwin/arm64/toolbox

    darwin/amd64

    curl -O https://storage.googleapis.com/genai-toolbox/v0.14.0/darwin/amd64/toolbox

    windows/amd64

    curl -O https://storage.googleapis.com/genai-toolbox/v0.14.0/windows/amd64/toolbox.exe

  2. Torne o binário executável.

    chmod +x toolbox
    
  3. Verifique a instalação.

    ./toolbox --version
    

Configurar o cliente MCP

Nesta seção, descrevemos como configurar várias ferramentas de desenvolvedor para se conectar à sua instância do Looker usando a MCP Toolbox para bancos de dados. A caixa de ferramentas funciona como um servidor Protocolo de Contexto de Modelo (MCP) de código aberto que fica entre seu ambiente de desenvolvimento integrado (IDE) e seu banco de dados, fornecendo 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

  1. Instale a CLI do Gemini.
  2. Instale a extensão do Looker para a CLI do Gemini no repositório do GitHub usando o seguinte comando:
    gemini extensions install https://github.com/gemini-cli-extensions/looker
    
  3. Defina variáveis de ambiente para se conectar à sua instância do Looker, substituindo as seguintes variáveis de ambiente pelos seus valores:
    • LOOKER_URL: o URL da sua instância do Looker.
    • CLIENT_ID e CLIENT_SECRET: a chave de API usada para acessar a API do Looker.
    • VERIFY_SSL: true ou false, dependendo se você usa criptografia SSL para conectar seu banco de dados à instância do Looker.
    export LOOKER_BASE_URL="LOOKER_URL"
    export LOOKER_CLIENT_ID="CLIENT_ID"
    export LOOKER_CLIENT_SECRET="CLIENT_SECRET"
    export LOOKER_VERIFY_SSL="VERIFY_SSL"
    
  4. Inicie a CLI do Gemini no modo interativo:
    gemini
    
    A CLI carrega automaticamente a extensão do Looker para a CLI do Gemini e as ferramentas dela, que podem ser usadas para interagir com sua instância do Looker.

Gemini Code Assist

Recomendamos configurar o Gemini Code Assist para usar a CLI do Gemini. Essa abordagem elimina a necessidade de configurar manualmente um servidor MCP.

  1. Confira se você instalou e configurou a CLI do Gemini e a extensão looker.
  2. Configure o Gemini Code Assist para usar a CLI do Gemini.
  3. Comece a interagir com sua instância do Looker usando linguagem natural diretamente no chat do Gemini Code Assist.

Código do Claude

  1. Instale o Claude Code.
  2. Crie o arquivo .mcp.json na raiz do projeto, se ele não existir.
  3. Adicione a seguinte configuração, substituindo as variáveis de ambiente pelos seus valores e salve.
    • LOOKER_URL: o URL da sua instância do Looker.
    • CLIENT_ID e CLIENT_SECRET: a chave de API usada para acessar a API do Looker.
    • VERIFY_SSL: true ou false, dependendo se você usa criptografia SSL para conectar seu banco de dados à instância do Looker.

      {
        "mcpServers": {
          "looker-toolbox": {
            "command": "./PATH/TO/toolbox",
            "args": ["--stdio", "--prebuilt", "looker"],
            "env": {
                "LOOKER_BASE_URL": "LOOKER_URL",
                "LOOKER_CLIENT_ID": "CLIENT_ID",
                "LOOKER_CLIENT_SECRET": "CLIENT_SECRET",
                "LOOKER_VERIFY_SSL": "VERIFY_SSL",
          }
          }
        }
      }
  

Claude para computador

  1. Abra o Claude para computador e acesse Configurações.
  2. Na guia Desenvolvedor, clique em Editar configuração para abrir o arquivo de configuração.
  3. Adicione a seguinte configuração, substituindo as variáveis de ambiente pelos seus valores e salve.
    • LOOKER_URL: o URL da sua instância do Looker.
    • CLIENT_ID e CLIENT_SECRET: a chave de API usada para acessar a API do Looker.
    • VERIFY_SSL: true ou false, dependendo se você usa criptografia SSL para conectar seu banco de dados à instância do Looker.

      {
        "mcpServers": {
          "looker-toolbox": {
            "command": "./PATH/TO/toolbox",
            "args": ["--stdio", "--prebuilt", "looker"],
            "env": {
                "LOOKER_BASE_URL": "LOOKER_URL",
                "LOOKER_CLIENT_ID": "CLIENT_ID",
                "LOOKER_CLIENT_SECRET": "CLIENT_SECRET",
                "LOOKER_VERIFY_SSL": "VERIFY_SSL",
          }
          }
        }
      }
  
  1. Reinicie o Claude para computador.
  2. A nova tela de chat mostra um ícone de martelo (MCP) com o novo servidor MCP.

Cline

  1. Abra a extensão Cline no VS Code e clique no ícone Servidores MCP.
  2. Clique em Configurar servidores MCP para abrir o arquivo de configuração.
  3. Adicione a seguinte configuração, substituindo as variáveis de ambiente pelos seus valores e salve.
    • LOOKER_URL: o URL da sua instância do Looker.
    • CLIENT_ID e CLIENT_SECRET: a chave de API usada para acessar a API do Looker.
    • VERIFY_SSL: true ou false, dependendo se você usa criptografia SSL para conectar seu banco de dados à instância do Looker.

      {
        "mcpServers": {
          "looker-toolbox": {
            "command": "./PATH/TO/toolbox",
            "args": ["--stdio", "--prebuilt", "looker"],
            "env": {
                "LOOKER_BASE_URL": "LOOKER_URL",
                "LOOKER_CLIENT_ID": "CLIENT_ID",
                "LOOKER_CLIENT_SECRET": "CLIENT_SECRET",
                "LOOKER_VERIFY_SSL": "VERIFY_SSL",
          }
          }
        }
      }
  

Um status ativo verde aparece depois que o servidor se conecta.

Cursor

  1. Crie o diretório .cursor na raiz do projeto, se ele não existir.
  2. Crie o arquivo .cursor/mcp.json, se ele não existir, e abra-o.
  3. Adicione a seguinte configuração, substituindo as variáveis de ambiente pelos seus valores e salve.
    • LOOKER_URL: o URL da sua instância do Looker.
    • CLIENT_ID e CLIENT_SECRET: a chave de API usada para acessar a API do Looker.
    • VERIFY_SSL: true ou false, dependendo se você usa criptografia SSL para conectar seu banco de dados à instância do Looker.
      {
        "mcpServers": {
          "looker-toolbox": {
            "command": "./PATH/TO/toolbox",
            "args": ["--stdio", "--prebuilt", "looker"],
            "env": {
                "LOOKER_BASE_URL": "LOOKER_URL",
                "LOOKER_CLIENT_ID": "CLIENT_ID",
                "LOOKER_CLIENT_SECRET": "CLIENT_SECRET",
                "LOOKER_VERIFY_SSL": "VERIFY_SSL",
          }
          }
        }
      }
  
  1. 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)

  1. Abra o VS Code e crie o diretório .vscode na raiz do projeto, se ele não existir.
  2. Crie o arquivo .vscode/mcp.json, se ele não existir, e abra-o.
  3. Adicione a seguinte configuração, substituindo as variáveis de ambiente pelos seus valores e salve.
    • LOOKER_URL: o URL da sua instância do Looker.
    • CLIENT_ID e CLIENT_SECRET: a chave de API usada para acessar a API do Looker.
    • VERIFY_SSL: true ou false, dependendo se você usa criptografia SSL para conectar seu banco de dados à instância do Looker.
      {
        "mcpServers": {
          "looker-toolbox": {
            "command": "./PATH/TO/toolbox",
            "args": ["--stdio", "--prebuilt", "looker"],
            "env": {
                "LOOKER_BASE_URL": "LOOKER_URL",
                "LOOKER_CLIENT_ID": "CLIENT_ID",
                "LOOKER_CLIENT_SECRET": "CLIENT_SECRET",
                "LOOKER_VERIFY_SSL": "VERIFY_SSL",
          }
          }
        }
      }
  

Windsurf

  1. Abra o Windsurf e navegue até o assistente do Cascade.
  2. Clique no ícone do MCP e em Configurar para abrir o arquivo de configuração.
  3. Adicione a seguinte configuração, substituindo as variáveis de ambiente pelos seus valores e salve.
    • LOOKER_URL: o URL da sua instância do Looker.
    • CLIENT_ID e CLIENT_SECRET: a chave de API usada para acessar a API do Looker.
    • VERIFY_SSL: true ou false, dependendo se você usa criptografia SSL para conectar seu banco de dados à instância do Looker.
      {
        "mcpServers": {
          "looker-toolbox": {
            "command": "./PATH/TO/toolbox",
            "args": ["--stdio", "--prebuilt", "looker"],
            "env": {
                "LOOKER_BASE_URL": "LOOKER_URL",
                "LOOKER_CLIENT_ID": "CLIENT_ID",
                "LOOKER_CLIENT_SECRET": "CLIENT_SECRET",
                "LOOKER_VERIFY_SSL": "VERIFY_SSL",
          }
          }
        }
      }
  

Usar ferramentas de IA

Sua ferramenta de IA agora está conectada ao Looker usando o MCP. Peça ao seu assistente de IA para listar modelos, análises detalhadas, dimensões e métricas. Você também pode executar uma consulta recuperando o SQL de uma consulta ou executando um Look salvo.

As seguintes ferramentas estão disponíveis para o LLM:

Ferramentas de consulta e modelo do Looker

Essas ferramentas são usadas para receber informações sobre um modelo do Looker e executar consultas nele.

  • get_models: liste todos os modelos do LookML na sua instância do Looker.
  • get_explores: lista as análises detalhadas em um determinado modelo.
  • get_dimensions: lista as dimensões em uma análise detalhada específica.
  • get_measures: lista as medidas em uma análise específica.
  • get_filters: lista os filtros em uma análise detalhada.
  • get_parameters: lista os parâmetros em uma análise detalhada específica.
  • query: execute uma consulta e retorne os dados.
  • query_sql: retorna o SQL gerado pelo Looker para uma consulta.
  • query_url: retorna um link para a consulta no Looker para mais análises.

Ferramentas de conteúdo do Looker

Essas ferramentas recebem conteúdo salvo (Looks e dashboards) de uma instância do Looker e criam novos conteúdos salvos.

  • get_looks: retorna os Looks salvos que correspondem a um título ou descrição.
  • run_look: executa uma análise salva e retorna os dados.
  • make_look: crie um Look salvo no Looker e retorne o URL.
  • get_dashboards: retorna os painéis salvos que correspondem a um título ou descrição.
  • make_dashboard: crie um painel salvo no Looker e retorne o URL.
  • add_dashboard_element: adicione um bloco a um painel.

Ferramentas de integridade da instância do Looker

Essas ferramentas oferecem os mesmos algoritmos de verificação de integridade da CLI Henry.

  • health_pulse: confira a integridade de uma instância do Looker.
  • health_analyze: analise o uso de um objeto do Looker.
  • health_vacuum: encontre elementos da LookML que podem não estar sendo usados.

Ferramentas de criação do LookML

Com essas ferramentas, o usuário pode escrever e modificar arquivos LookML, além de receber o esquema de banco de dados necessário para escrever LookML de maneira eficaz.

  • dev_mode: ative e desative o Modo de desenvolvimento para a sessão. A criação de LookML precisa ser feita no modo de desenvolvimento. As consultas executadas no modo de desenvolvimento usam o LookML modificado para que você possa testar o impacto das mudanças.
  • get_projects: receba a lista de projetos do LookML disponíveis.
  • get_project_files: recebe a lista de arquivos do LookML em um projeto.
  • get_project_file: recebe o conteúdo de um arquivo do LookML.
  • create_project_file: crie um arquivo do LookML.
  • update_project_file: modifique um arquivo do LookML.
  • delete_project_file: exclui um arquivo LookML.
  • get_connections: receba a lista de conexões.
  • get_connection_schemas: recebe a lista de esquemas de uma conexão.
  • get_connection_databases: receba a lista de bancos de dados de uma conexão.
  • get_connection_tables: recebe a lista de tabelas de uma conexão.
  • get_connection_table_columns: recebe a lista de colunas de uma tabela em uma conexão.