Usar Looker con MCP, Gemini CLI y otros agentes

En esta página se explica cómo conectar tu instancia de Looker a varias herramientas para desarrolladores.

Para disfrutar de la experiencia más potente e integrada, te recomendamos que uses la extensión de Looker específica para Gemini CLI. Usa la capa semántica de Looker para proporcionar a la CLI de Gemini acceso seguro, controlado y bajo demanda a datos fiables, así como para agilizar los flujos de trabajo automatizando la creación de informes, visualizaciones y paneles de control a partir de peticiones de lenguaje natural. La CLI de Gemini es la interfaz de línea de comandos de nueva generación de Google Cloud y la herramienta recomendada para interactuar con tus instancias de Looker desde la línea de comandos.

También puedes conectar otros entornos de desarrollo integrados (IDEs) y herramientas para desarrolladores que admitan el Model Context Protocol (MCP) mediante la MCP Toolbox for Databases de uso general. MCP Toolbox es un servidor MCP de código abierto que simplifica la conexión de agentes de IA a tus datos al gestionar complejidades como la autenticación y la agrupación de conexiones, lo que te permite interactuar con tus datos mediante lenguaje natural directamente desde tu IDE. En el caso de estas herramientas, este método proporciona funciones básicas de interacción con la base de datos.

Acerca de Gemini CLI y las extensiones

Gemini CLI es un agente de IA de código abierto diseñado para acelerar los flujos de trabajo de desarrollo, ya que ayuda con la programación, la depuración, la exploración de datos y la creación de contenido. Su misión es proporcionar una experiencia de agente elegante para interactuar con servicios de nube de datos y bases de datos de código abierto populares.

Cómo funcionan las extensiones

Gemini CLI es altamente extensible, lo que permite añadir nuevas herramientas y funciones mediante extensiones. Estas extensiones son fáciles de instalar. Puedes cargarlos desde una URL de GitHub, un directorio local o un registro configurable. Estas extensiones ofrecen un amplio conjunto de funciones, como nuevas herramientas, comandos de barra y peticiones para optimizar tu flujo de trabajo.

Configurar Looker

  1. Obtén un ID de cliente y un secreto de cliente de Looker. Sigue las instrucciones de la página de documentación sobre la autenticación de la API de Looker.
  2. Tener disponible la URL base de tu instancia de Looker. Es probable que sea algo parecido a https://looker.example.com. En algunos casos, la API está escuchando en un puerto diferente y tendrás que usar https://looker.example.com:19999.

Instalar MCP Toolbox

  1. Descarga la versión más reciente de MCP Toolbox como archivo binario. Selecciona el binario que corresponda a tu sistema operativo y a la arquitectura de tu CPU. Debes usar la versión V0.14.0 o una posterior de MCP Toolbox.

    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. Convierte el archivo binario en un archivo ejecutable.

    chmod +x toolbox
    
  3. Verifica la instalación.

    ./toolbox --version
    

Configurar el cliente de MCP

En esta sección se describe cómo configurar varias herramientas para desarrolladores para conectarse a tu instancia de Looker mediante MCP Toolbox for Databases. Esta caja de herramientas actúa como un servidor de Model Context Protocol (MCP) de código abierto que se encuentra entre tu IDE y tu base de datos, y proporciona un plano de control seguro y eficiente para tus herramientas de IA. Selecciona la pestaña de la herramienta en cuestión para ver las instrucciones de configuración.

Gemini CLI

  1. Instala la CLI de Gemini.
  2. Instala la extensión de Looker para la CLI de Gemini desde el repositorio de GitHub con el siguiente comando:
    gemini extensions install https://github.com/gemini-cli-extensions/looker
    
  3. Define variables de entorno para conectarte a tu instancia de Looker. Para ello, sustituye las siguientes variables de entorno por tus valores:
    • LOOKER_URL: URL de tu instancia de Looker.
    • CLIENT_ID y CLIENT_SECRET: la clave de API que se usa para acceder a la API de Looker.
    • VERIFY_SSL: true o false, según si usas el cifrado SSL para conectar tu base de datos a tu instancia de 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. Inicia la CLI de Gemini en modo interactivo:
    gemini
    
    La CLI carga automáticamente la extensión de Looker para la extensión de Gemini CLI y sus herramientas, que puedes usar para interactuar con tu instancia de Looker.

Gemini Code Assist

Te recomendamos que configures Gemini Code Assist para usar Gemini CLI. Con este método, no es necesario configurar manualmente un servidor de MCP.

  1. Asegúrate de que has instalado y configurado la CLI de Gemini y la extensión looker.
  2. Configura Gemini Code Assist para usar Gemini CLI.
  3. Empieza a interactuar con tu instancia de Looker usando el lenguaje natural directamente en el chat de Gemini Code Assist.

Código de Claude

  1. Instala Claude Code.
  2. Crea el archivo .mcp.json en la raíz de tu proyecto, si no existe.
  3. Añade la siguiente configuración, sustituye las variables de entorno por tus valores y, a continuación, guarda los cambios.
    • LOOKER_URL: URL de tu instancia de Looker.
    • CLIENT_ID y CLIENT_SECRET: la clave de API que se usa para acceder a la API de Looker.
    • VERIFY_SSL: true o false, según si usas el cifrado SSL para conectar tu base de datos a tu instancia de 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 ordenadores

  1. Abre Claude Desktop y ve a Configuración.
  2. En la pestaña Desarrollador, haz clic en Editar configuración para abrir el archivo de configuración.
  3. Añade la siguiente configuración, sustituye las variables de entorno por tus valores y, a continuación, guarda los cambios.
    • LOOKER_URL: URL de tu instancia de Looker.
    • CLIENT_ID y CLIENT_SECRET: la clave de API que se usa para acceder a la API de Looker.
    • VERIFY_SSL: true o false, según si usas el cifrado SSL para conectar tu base de datos a tu instancia de 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. Reinicia Claude Desktop.
  2. En la nueva pantalla de chat se muestra un icono de martillo (MCP) con el nuevo servidor MCP.

Cline

  1. Abre la extensión Cline en VS Code y haz clic en el icono Servidores de MCP.
  2. Haz clic en Configure MCP Servers (Configurar servidores MCP) para abrir el archivo de configuración.
  3. Añade la siguiente configuración, sustituye las variables de entorno por tus valores y, a continuación, guarda los cambios.
    • LOOKER_URL: URL de tu instancia de Looker.
    • CLIENT_ID y CLIENT_SECRET: la clave de API que se usa para acceder a la API de Looker.
    • VERIFY_SSL: true o false, según si usas el cifrado SSL para conectar tu base de datos a tu instancia de 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",
          }
          }
        }
      }
  

Si el servidor se conecta correctamente, aparecerá el estado activo en verde.

Cursor

  1. Crea el directorio .cursor en la raíz de tu proyecto si no existe.
  2. Crea el archivo .cursor/mcp.json si no existe y ábrelo.
  3. Añade la siguiente configuración, sustituye las variables de entorno por tus valores y, a continuación, guarda los cambios.
    • LOOKER_URL: URL de tu instancia de Looker.
    • CLIENT_ID y CLIENT_SECRET: la clave de API que se usa para acceder a la API de Looker.
    • VERIFY_SSL: true o false, según si usas el cifrado SSL para conectar tu base de datos a tu instancia de 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. Abre Cursor y ve a Configuración > Configuración del cursor > MCP. Si el servidor se conecta, aparecerá el estado activo en verde.

Visual Studio Code (Copilot)

  1. Abre VS Code y crea el directorio .vscode en la raíz de tu proyecto si no existe.
  2. Crea el archivo .vscode/mcp.json si no existe y ábrelo.
  3. Añade la siguiente configuración, sustituye las variables de entorno por tus valores y, a continuación, guarda los cambios.
    • LOOKER_URL: URL de tu instancia de Looker.
    • CLIENT_ID y CLIENT_SECRET: la clave de API que se usa para acceder a la API de Looker.
    • VERIFY_SSL: true o false, según si usas el cifrado SSL para conectar tu base de datos a tu instancia de 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. Abre Windsurf y ve al asistente de Cascade.
  2. Haz clic en el icono de MCP y, a continuación, en Configurar para abrir el archivo de configuración.
  3. Añade la siguiente configuración, sustituye las variables de entorno por tus valores y, a continuación, guarda los cambios.
    • LOOKER_URL: URL de tu instancia de Looker.
    • CLIENT_ID y CLIENT_SECRET: la clave de API que se usa para acceder a la API de Looker.
    • VERIFY_SSL: true o false, según si usas el cifrado SSL para conectar tu base de datos a tu instancia de 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 herramientas de IA

Tu herramienta de IA ahora está conectada a Looker mediante MCP. Prueba a pedirle a tu asistente de IA que te muestre una lista de modelos, Exploraciones, dimensiones y medidas. También puedes ejecutar una consulta obteniendo el código SQL de una consulta o ejecutando un Look guardado.

El LLM tiene acceso a las siguientes herramientas:

Modelos de Looker y herramientas de consulta

Estas herramientas se usan para obtener información sobre un modelo de Looker y ejecutar consultas en ese modelo.

  • get_models: muestra todos los modelos de LookML de tu instancia de Looker.
  • get_explores: muestra los Exploraciones de un modelo determinado.
  • get_dimensions: muestra las dimensiones de un Explorar determinado.
  • get_measures: enumera las medidas de una exploración determinada.
  • get_filters: muestra los filtros de una Exploración determinada.
  • get_parameters: muestra los parámetros de una exploración determinada.
  • query: ejecuta una consulta y devuelve los datos.
  • query_sql: devuelve el código SQL que genera Looker para una consulta.
  • query_url: devuelve un enlace a la consulta en Looker para que puedas seguir investigando.

Herramientas de contenido de Looker

Estas herramientas obtienen contenido guardado (vistas y paneles de control) de una instancia de Looker y crean contenido guardado nuevo.

  • get_looks: devuelve los Looks guardados que coincidan con un título o una descripción.
  • run_look: ejecuta un Look guardado y devuelve los datos.
  • make_look: crea una vista guardada en Looker y devuelve la URL.
  • get_dashboards: devuelve los paneles de control guardados que coincidan con un título o una descripción.
  • make_dashboard: crea un panel de control guardado en Looker y devuelve la URL.
  • add_dashboard_element: añade una tarjeta a un panel de control.

Herramientas de estado de la instancia de Looker

Estas herramientas ofrecen los mismos algoritmos de comprobación del estado que la popular CLI Henry.

  • health_pulse: comprueba el estado de una instancia de Looker.
  • health_analyze: analiza el uso de un objeto de Looker.
  • health_vacuum: busca elementos de LookML que puedan no estar en uso.

Herramientas de creación de LookML

Estas herramientas permiten al llamante escribir y modificar archivos LookML, así como obtener el esquema de la base de datos necesario para escribir LookML de forma eficaz.

  • dev_mode: activa y desactiva el modo Desarrollo durante la sesión. La creación de LookML debe hacerse en el modo Desarrollo. Las consultas que se ejecutan en el modo Desarrollo usan el LookML modificado para que puedas probar el impacto de los cambios.
  • get_projects: obtiene la lista de proyectos de LookML disponibles.
  • get_project_files: obtiene la lista de archivos LookML de un proyecto.
  • get_project_file: obtiene el contenido de un archivo LookML.
  • create_project_file: crea un archivo LookML.
  • update_project_file: modifica un archivo LookML.
  • delete_project_file: elimina un archivo LookML.
  • get_connections: obtiene la lista de conexiones.
  • get_connection_schemas: obtiene la lista de esquemas de una conexión.
  • get_connection_databases: obtiene la lista de bases de datos de una conexión.
  • get_connection_tables: obtiene la lista de tablas de una conexión.
  • get_connection_table_columns: obtiene la lista de columnas de una tabla de una conexión.