Utilizzare Looker con MCP, Gemini CLI e altri agenti

Questa pagina mostra come connettere l'istanza di Looker a vari strumenti per sviluppatori.

Per un'esperienza più potente e integrata, ti consigliamo di utilizzare l'estensione Looker dedicata per Gemini CLI. Utilizza il livello semantico di Looker per fornire alla CLI Gemini un accesso sicuro, controllato e on demand a dati attendibili e accelera i flussi di lavoro automatizzando la creazione di report, visualizzazioni e dashboard a partire da prompt in linguaggio naturale. In quanto interfaccia a riga di comando di nuova generazione di Google Cloud, la Gemini CLI è lo strumento consigliato per interagire con le istanze di Looker dalla riga di comando.

Puoi anche connettere altri ambienti di sviluppo integrati (IDE) e strumenti per sviluppatori che supportano il Model Context Protocol (MCP) utilizzando MCP Toolbox for Databases per uso generico. MCP Toolbox è un server MCP open source che semplifica la connessione degli agenti AI ai tuoi dati gestendo complessità come l'autenticazione e il pool di connessioni, il che ti consente di interagire con i tuoi dati utilizzando il linguaggio naturale direttamente dal tuo IDE. Per questi strumenti, questo metodo fornisce le funzionalità di interazione di base con il database.

Informazioni su Gemini CLI e le estensioni

Gemini CLI è un agente AI open source progettato per accelerare i workflow di sviluppo aiutando con la programmazione, il debug, l'esplorazione dei dati e la creazione di contenuti. La sua missione è fornire un'esperienza agentica elegante per interagire con i servizi dati cloud e i database open source più diffusi.

Come funzionano le estensioni

Gemini CLI è altamente estensibile e consente l'aggiunta di nuovi strumenti e funzionalità tramite le estensioni. Queste estensioni sono facili da installare. Puoi caricarli da un URL GitHub, da una directory locale o da un registro configurabile. Queste estensioni forniscono un ricco insieme di funzionalità, tra cui nuovi strumenti, comandi slash e prompt per semplificare il workflow.

Configura Looker

  1. Ottieni un ID client e un client secret di Looker. Segui le istruzioni riportate nella pagina della documentazione Autenticazione API Looker.
  2. Avere a disposizione l'URL di base dell'istanza di Looker. Probabilmente è qualcosa di simile a https://looker.example.com. In alcuni casi, l'API è in ascolto su una porta diversa e dovrai utilizzare https://looker.example.com:19999.

Installare MCP Toolbox

  1. Scarica l'ultima versione di MCP Toolbox come file binario. Seleziona il binario corrispondente al tuo sistema operativo e all'architettura della CPU. Devi utilizzare MCP Toolbox versione V0.14.0 o successive.

    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. Rendi il binario un eseguibile.

    chmod +x toolbox
    
  3. Verifica l'installazione.

    ./toolbox --version
    

Configura il client MCP

Questa sezione descrive come configurare vari strumenti per sviluppatori per connettersi all'istanza Looker utilizzando MCP Toolbox for Databases. La toolbox funge da server Model Context Protocol (MCP) open source che si trova tra l'IDE e il database, fornendo un piano di controllo sicuro ed efficiente per i tuoi strumenti di AI. Seleziona la scheda dello strumento specifico per visualizzare le istruzioni di configurazione.

Interfaccia a riga di comando di Gemini

  1. Installa la Gemini CLI.
  2. Installa l'estensione Looker per Gemini CLI dal repository GitHub utilizzando il seguente comando:
    gemini extensions install https://github.com/gemini-cli-extensions/looker
    
  3. Imposta le variabili di ambiente per connetterti alla tua istanza di Looker, sostituendo le seguenti variabili di ambiente con i tuoi valori:
    • LOOKER_URL: l'URL della tua istanza di Looker.
    • CLIENT_ID e CLIENT_SECRET: la chiave API utilizzata per accedere all'API Looker.
    • VERIFY_SSL: true o false, a seconda che utilizzi la crittografia SSL per connettere il database all'istanza di 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. Avvia Gemini CLI in modalità interattiva:
    gemini
    
    La CLI carica automaticamente l'estensione Looker per l'estensione Gemini CLI e i relativi strumenti, che puoi utilizzare per interagire con l'istanza Looker.

Gemini Code Assist

Ti consigliamo di configurare Gemini Code Assist per utilizzare Gemini CLI. Questo approccio elimina la necessità di configurare manualmente un server MCP.

  1. Assicurati di aver installato e configurato l'interfaccia a riga di comando di Gemini e l'estensione looker.
  2. Configura Gemini Code Assist per utilizzare Gemini CLI.
  3. Inizia a interagire con la tua istanza di Looker utilizzando il linguaggio naturale direttamente nella chat di Gemini Code Assist.

Codice Claude

  1. Installa Claude Code.
  2. Crea il file .mcp.json nella directory principale del progetto, se non esiste.
  3. Aggiungi la seguente configurazione, sostituendo le seguenti variabili di ambiente con i tuoi valori, quindi salva.
    • LOOKER_URL: l'URL della tua istanza di Looker.
    • CLIENT_ID e CLIENT_SECRET: la chiave API utilizzata per accedere all'API Looker.
    • VERIFY_SSL: true o false, a seconda che utilizzi la crittografia SSL per connettere il database all'istanza di 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 desktop

  1. Apri Claude Desktop e vai a Impostazioni.
  2. Nella scheda Sviluppatore, fai clic su Modifica configurazione per aprire il file di configurazione.
  3. Aggiungi la seguente configurazione, sostituendo le seguenti variabili di ambiente con i tuoi valori, quindi salva.
    • LOOKER_URL: l'URL della tua istanza di Looker.
    • CLIENT_ID e CLIENT_SECRET: la chiave API utilizzata per accedere all'API Looker.
    • VERIFY_SSL: true o false, a seconda che utilizzi la crittografia SSL per connettere il database all'istanza di 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. Riavvia Claude Desktop.
  2. Nella nuova schermata della chat viene visualizzata un'icona a forma di martello (MCP) con il nuovo server MCP.

Cline

  1. Apri l'estensione Cline in VS Code e fai clic sull'icona MCP Servers.
  2. Fai clic su Configura server MCP per aprire il file di configurazione.
  3. Aggiungi la seguente configurazione, sostituendo le seguenti variabili di ambiente con i tuoi valori, quindi salva.
    • LOOKER_URL: l'URL della tua istanza di Looker.
    • CLIENT_ID e CLIENT_SECRET: la chiave API utilizzata per accedere all'API Looker.
    • VERIFY_SSL: true o false, a seconda che utilizzi la crittografia SSL per connettere il database all'istanza di 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",
          }
          }
        }
      }
  

Dopo la connessione riuscita del server, viene visualizzato uno stato attivo verde.

Cursore

  1. Crea la directory .cursor nella radice del progetto, se non esiste.
  2. Crea il file .cursor/mcp.json se non esiste e aprilo.
  3. Aggiungi la seguente configurazione, sostituendo le seguenti variabili di ambiente con i tuoi valori, quindi salva.
    • LOOKER_URL: l'URL della tua istanza di Looker.
    • CLIENT_ID e CLIENT_SECRET: la chiave API utilizzata per accedere all'API Looker.
    • VERIFY_SSL: true o false, a seconda che utilizzi la crittografia SSL per connettere il database all'istanza di 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. Apri Cursore e vai a Impostazioni > Impostazioni cursore > MCP. Quando il server si connette, viene visualizzato uno stato attivo verde.

Visual Studio Code (Copilot)

  1. Apri VS Code e crea la directory .vscode nella radice del progetto, se non esiste.
  2. Crea il file .vscode/mcp.json se non esiste e aprilo.
  3. Aggiungi la seguente configurazione, sostituendo le seguenti variabili di ambiente con i tuoi valori, quindi salva.
    • LOOKER_URL: l'URL della tua istanza di Looker.
    • CLIENT_ID e CLIENT_SECRET: la chiave API utilizzata per accedere all'API Looker.
    • VERIFY_SSL: true o false, a seconda che utilizzi la crittografia SSL per connettere il database all'istanza di 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. Apri Windsurf e vai all'assistente per le cascate.
  2. Fai clic sull'icona MCP, quindi su Configura per aprire il file di configurazione.
  3. Aggiungi la seguente configurazione, sostituendo le seguenti variabili di ambiente con i tuoi valori, quindi salva.
    • LOOKER_URL: l'URL della tua istanza di Looker.
    • CLIENT_ID e CLIENT_SECRET: la chiave API utilizzata per accedere all'API Looker.
    • VERIFY_SSL: true o false, a seconda che utilizzi la crittografia SSL per connettere il database all'istanza di 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",
          }
          }
        }
      }
  

Utilizzare gli strumenti di AI

Il tuo strumento di AI è ora connesso a Looker tramite MCP. Prova a chiedere all'assistente AI di elencare modelli, esplorazioni, dimensioni e misure. Puoi anche eseguire una query recuperando l'SQL per una query o eseguendo un Look salvato.

Sono disponibili i seguenti strumenti per il LLM:

Strumenti di query e modello di Looker

Questi strumenti vengono utilizzati per ottenere informazioni su un modello Looker ed eseguire query su quel modello.

  • get_models: elenca tutti i modelli LookML nell'istanza Looker.
  • get_explores: Elenca le esplorazioni in un determinato modello.
  • get_dimensions: Elenca le dimensioni in una determinata esplorazione.
  • get_measures: Elenca le misure in un'esplorazione specifica.
  • get_filters: Elenca i filtri in un'esplorazione specifica.
  • get_parameters: elenca i parametri in una determinata esplorazione.
  • query: esegui una query e restituisci i dati.
  • query_sql: restituisce l'SQL generato da Looker per una query.
  • query_url: restituisce un link alla query in Looker per ulteriori esplorazioni.

Strumenti per i contenuti di Looker

Questi strumenti recuperano i contenuti salvati (Look e dashboard) da un'istanza di Looker e creano nuovi contenuti salvati.

  • get_looks: restituisce i look salvati che corrispondono a un titolo o a una descrizione.
  • run_look: esegui una Look salvata e restituisci i dati.
  • make_look: crea un look salvato in Looker e restituisce l'URL.
  • get_dashboards: Restituisce i dashboard salvati che corrispondono a un titolo o a una descrizione.
  • make_dashboard: crea una dashboard salvata in Looker e restituisce l'URL.
  • add_dashboard_element: aggiungi un riquadro a una dashboard.

Strumenti di controllo dell'integrità dell'istanza Looker

Questi strumenti offrono gli stessi algoritmi di controllo di integrità della popolare CLI Henry.

  • health_pulse: controlla l'integrità di un'istanza di Looker.
  • health_analyze: analizza l'utilizzo di un oggetto Looker.
  • health_vacuum: trova gli elementi LookML che potrebbero non essere utilizzati.

Strumenti di creazione di LookML

Questi strumenti consentono al chiamante di scrivere e modificare i file LookML, nonché di ottenere lo schema del database necessario per scrivere LookML in modo efficace.

  • dev_mode: attiva e disattiva la modalità Development (Sviluppo) per la sessione. La creazione di LookML deve essere eseguita in modalità di sviluppo. Le query eseguite in modalità di sviluppo utilizzano il codice LookML modificato, in modo da poter testare l'impatto delle modifiche.
  • get_projects: recupera l'elenco dei progetti LookML disponibili.
  • get_project_files: recupera l'elenco dei file LookML in un progetto.
  • get_project_file: recupera i contenuti di un file LookML.
  • create_project_file: crea un nuovo file LookML.
  • update_project_file: modifica un file LookML esistente.
  • delete_project_file: elimina un file LookML.
  • get_connections: recupera l'elenco delle connessioni.
  • get_connection_schemas: Recupera l'elenco degli schemi per una connessione.
  • get_connection_databases: Recupera l'elenco dei database per una connessione.
  • get_connection_tables: Recupera l'elenco delle tabelle per una connessione.
  • get_connection_table_columns: Recupera l'elenco delle colonne per una tabella in una connessione.