Servidor de MCP administrado por Looker
El servidor de MCP administrado por Looker es una integración integrada que incorpora un servidor de protocolo de contexto del modelo (MCP) directamente en la plataforma de Looker. Permite que los agentes de IA, como Gemini CLI, Claude Desktop, Cursor y Copilot, se conecten de forma segura a una instancia de Looker y que interactúen con los datos de la empresa y los modelos de LookML.
Cuando aloja el servidor, Looker elimina la necesidad de que implementes y mantengas tu propia infraestructura de middleware, lo que proporciona una puerta de enlace plug-and-play, segura y gobernada para obtener estadísticas empresariales confiables.
Si usas una instancia alojada por el cliente o si prefieres administrar tu propia infraestructura, puedes conectarte con la herramienta independiente MCP Toolbox para bases de datos. MCP Toolbox es un servidor de MCP de código abierto que puedes ejecutar en tu computadora local o en tu propio servidor para que actúe como un puente entre los agentes de IA y tu instancia de Looker. Consulta la página de documentación Usa Looker con MCP, Gemini CLI y otros agentes para obtener más información.
Antes de comenzar
Para usar el servidor de MCP administrado por Looker, debes cumplir con los siguientes requisitos:
Requisitos de las instancias
- Debes usar una instancia de Looker (Google Cloud Core) o de Looker (original).
- Looker debe alojar la instancia.
Permisos necesarios
- Para administrar el acceso a las herramientas, debes tener el rol de Looker de administrador.
- Para registrar o habilitar tu agente de IA como cliente de OAuth, debes tener el rol de Looker de administrador.
- Para conectar un agente de IA al servidor de MCP administrado por Looker, necesitas tus credenciales de acceso estándar de Looker para autenticarte durante el proceso de conexión de OAuth. Un administrador de Looker primero debe registrar el agente de IA como cliente de OAuth. Una vez conectado, el agente de IA heredará los roles de Looker y el acceso del usuario que se autenticó.
Configura el servidor de MCP administrado
Configura el acceso a las herramientas para configurar el servidor de MCP administrado.
Establece la configuración de la herramienta
De forma predeterminada, todas las herramientas están inhabilitadas para el servidor de MCP administrado. Los administradores de Looker deben habilitar de forma explícita las herramientas que los agentes de IA pueden usar. Consulta la página de documentación Configuración de administrador: Protocolo de contexto del modelo (MCP) para conocer los pasos para habilitar las herramientas.
Establece la configuración de CORS
Si el cliente de MCP se ejecuta directamente en un navegador web y quiere comunicarse con el servidor de MCP administrado por Looker a través de CORS, el administrador de Looker debe agregar el dominio de ese sitio web cliente a la lista de dominios permitidos incorporados en el panel Administrador.
Registra un agente de IA a través de OAuth
Para conectar un agente de IA al servidor de MCP administrado por Looker, un administrador debe habilitar o registrar el agente de IA como una aplicación cliente de OAuth en la página Administrar clientes de OAuth del panel de administración Administrador de Looker.
Puedes habilitar clientes de IA preconfigurados desde la Biblioteca de aplicaciones o registrar un cliente personalizado en la pestaña Clientes personalizados:
- Biblioteca de aplicaciones (recomendado): Usa registros de clientes de OAuth preconfigurados y administrados por Looker para agentes de IA y herramientas para desarrolladores populares, como Cursor, VS Code, Claude Code, Claude Desktop, ChatGPT, Gemini CLI, Cline, Windsurf, Antigravity y la extensión de Looker para VS Code.
- Clientes personalizados: Registra un cliente de OAuth personalizado nuevo si tu herramienta de IA no está disponible en la biblioteca de aplicaciones o si necesitas configurar un URI o puerto de redireccionamiento personalizado.
Opción 1: Habilita un agente de IA preconfigurado desde la biblioteca de aplicaciones
Te recomendamos que primero revises la pestaña Biblioteca de aplicaciones.
Para habilitar un cliente de agente de IA preconfigurado, sigue estos pasos:
- En el panel Administrador de Looker, navega a la sección Autenticación y selecciona Administrar clientes de OAuth.
- Selecciona la pestaña Biblioteca de aplicaciones.
- Ubica la aplicación cliente para tu agente de IA (por ejemplo, Cursor, Claude Code, Cline o Gemini CLI). Puedes usar la barra de búsqueda para filtrar por nombre.
- Cambia el interruptor Habilitar a ACTIVADO.
- Copia el ID de cliente que se muestra en la fila del cliente. Proporcionarás este ID de cliente cuando configures los parámetros de MCP de tu agente de IA (por ejemplo, en
mcp.jsono marcas de inicio). Si los usuarios de Looker que no tienen el rol de administrador de Looker necesitan usar este cliente, distribúyeles el ID de cliente.
URIs de redireccionamiento y manejo dinámico de puertos
Looker requiere que los URIs de redireccionamiento de OAuth coincidan exactamente con los valores registrados y no admite URIs de redireccionamiento con comodines. Algunas herramientas de IA usan puertos locales dinámicos o efímeros de forma predeterminada cuando inician una devolución de llamada de OAuth (como Claude Code o Cline). Para alojar estas herramientas, Looker registra previamente un puerto predeterminado fijo para cada cliente de biblioteca (por ejemplo, el puerto 8080 para Claude Code y Cline, o el puerto 7777 para Gemini CLI).
Para usar un cliente de biblioteca preconfigurado con puertos dinámicos, elige una de las siguientes opciones:
- Configura tu cliente para que use el puerto estático registrado previamente: En la configuración o el comando de inicio de tu herramienta, especifica el puerto registrado previamente. Por ejemplo:
- Claude Code: Ejecuta Claude Code con la marca
--callback-port 8080(o configura"callbackPort": 8080enmcp.json). - Cline: Configura el puerto de devolución de llamada de OAuth en
8080. - Gemini CLI: Establece la variable de entorno
export OAUTH_CALLBACK_PORT=7777. - VS Code: Usa el URI estático registrado previamente
http://127.0.0.1:33418/.
- Claude Code: Ejecuta Claude Code con la marca
- Registra un cliente personalizado: Si necesitas usar un puerto diferente o una URL de devolución de llamada personalizada, registra un cliente personalizado con tu URI de redireccionamiento preferido, como se describe en la siguiente sección.
Opción 2: Registra un cliente de agente de IA personalizado
Si tu agente de IA no está incluido en la biblioteca de aplicaciones o si necesitas usar una URL o un puerto de devolución de llamada personalizados, completa los pasos que se indican en la documentación de Configuración de administrador - Administra clientes de OAuth para registrar un cliente personalizado. Después de agregar el cliente, copia el ID de cliente para usarlo cuando configures el cliente de MCP.
Registro programático (Explorador de APIs o API)
Para las implementaciones automatizadas (como las canalizaciones de CI/CD o las secuencias de comandos de aprovisionamiento), los administradores de Looker pueden registrar clientes de OAuth de forma programática.
Expande esta sección para ver cómo registrar un cliente de OAuth con la API o el Explorador de APIs.
Puedes registrar un agente de IA usando el extremo de API de oauth_client_apps directamente con curl:
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
}'
Como alternativa, puedes usar el Explorador de APIs de Looker:
- En el método Auth, busca el extremo de API Register OAuth App.
- Haz clic en Ejecutar, ingresa
CLIENT_GUID,redirect_uri,display_nameydescription, selecciona la casilla de verificación de confirmación y, luego, haz clic en Ejecutar.- Gemini CLI
http://localhost:7777/oauth/callback
Nota: Algunas herramientas, como Gemini CLI, pueden requerir que configures una variable de entorno (por ejemplo,
export OAUTH_CALLBACK_PORT=7777) para garantizar que las herramientas usen un puerto estático que coincida con tu URI de redireccionamiento registrado. - Gemini Code Assist
http://localhost:7777/oauth/callback
Recomendamos usar Gemini CLI con Gemini Code Assist. En ese caso, compartirán el mismo servidor de devolución de llamada local y la misma configuración de puerto.
- Gemini Enterprise
https://vertexaisearch.cloud.google.com/oauth-redirect
- Claude Code
Claude Code usa un puerto disponible aleatorio para la devolución de llamada de OAuth, pero debes corregirlo con la marca
(o con el parámetro de configuración--callback-port 8080callbackPortenmcp.json) para que coincida con tu URI registrado.http://localhost:8080/callback
- VS Code
Para VS Code, usa el siguiente URI.
http://127.0.0.1:33418/
Nota: Se requiere la barra diagonal final (
/) al final del URI. - Apps alojadas en la nube
En el caso de las aplicaciones alojadas en la nube, puede verse como una URL HTTPS segura:
https://AI_AGENT_URL/oauth2callback
- Apps locales
Para las aplicaciones que se ejecutan de forma local, el URI de redireccionamiento debe ser una URL de localhost con un puerto estático:
http://localhost:7777/oauth/callback
- Gemini CLI
- Para verificar el registro, ejecuta el extremo Obtener app cliente de OAuth con tu
CLIENT_GUID.
Configura el cliente de MCP
Una vez que el agente de IA esté registrado, puedes conectarlo al extremo de MCP administrado como un cliente de MCP. Consulta la documentación de tu agente para completar la configuración del cliente.
- URL del servidor:
LOOKER_INSTANCE_URL/mcp - Autenticación: OAuth 2.1
Parámetros de configuración de ejemplo (mcp.json)
En esta sección, se describe cómo configurar varias herramientas para desarrolladores para conectarse a tu instancia de Looker con el servidor de MCP administrado por Looker. El servidor de MCP se ubica entre tu IDE y Looker, lo que proporciona un plano de control seguro y eficiente para tus herramientas de IA. Selecciona la pestaña de tu herramienta específica para ver las instrucciones de configuración.
Gemini CLI
Configura la CLI de Gemini para que se conecte directamente al servidor de MCP administrado por Looker.
- Instala la CLI de Gemini.
- Agrega el servidor de MCP remoto con el siguiente comando y reemplaza
LOOKER_INSTANCE_URLpor la URL de tu instancia de Looker:gemini mcp add --transport http looker LOOKER_INSTANCE_URL/mcp
Como alternativa, puedes configurar esto de forma manual agregando la siguiente configuración a tu archivo
settings.json(ubicado en~/.gemini/settings.jsono en el directorio de tu proyecto):{ "mcpServers": { "looker": { "httpUrl": "LOOKER_INSTANCE_URL/mcp", "oauth": { "clientId": "CLIENT_GUID" } } } } - Inicia la CLI de Gemini en modo interactivo:
Cuando se te solicite conectarte, la CLI iniciará el flujo de autorización de OAuth para autenticarse de forma segura con tu instancia de Looker.gemini
Gemini Code Assist
Te recomendamos que configures Gemini Code Assist para usar Gemini CLI. Este enfoque elimina la necesidad de configurar manualmente un servidor de MCP.
- Asegúrate de haber instalado y configurado la CLI de Gemini y el servidor de MCP administrado por Looker.
- Configura Gemini Code Assist para usar Gemini CLI.
- Comienza a interactuar con tu instancia de Looker usando lenguaje natural directamente en el chat de Gemini Code Assist.
Gemini Enterprise
Configura Gemini Enterprise para que se conecte al servidor de MCP administrado por Looker como un almacén de datos de servidor de MCP personalizado.
- Sigue la documentación oficial para crear un almacén de datos de servidor de MCP personalizado en Gemini Enterprise.
- Para la configuración del almacén de datos, usa los siguientes valores, reemplazando
LOOKER_INSTANCE_URLpor la URL de tu instancia de Looker yCLIENT_GUIDpor la cadena exacta que usaste durante el registro de la app de 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" }PKCE no requiere un secreto del cliente de OAuth, pero Gemini Enterprise requiere un valor en el campo
client_secret. Puedes ingresarnonecomo se muestra en la configuración de ejemplo. - Autentícate con OAuth para continuar.
- Establece la descripción del servidor de MCP para ayudar a Gemini a comprender cuándo invocarlo. Por ejemplo:
Looker Agent with API access to various aspects of Looker. Primarily used to fetch data and run dashboards from Looker.
- Define las instrucciones del agente del servidor de MCP. Por ejemplo:
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.
- Navega a la pestaña Acciones en el almacén de datos de MCP personalizado que acabas de crear y habilita las herramientas que quieres que use Gemini Enterprise.
- Para finalizar la configuración, navega a Gemini Enterprise, haz clic en el ícono de Conector y autoriza el servidor de MCP.
Claude Code
- Instala Claude Code.
- Crea el archivo
.mcp.jsonen la raíz del proyecto, si no existe. - Agrega la siguiente configuración, reemplaza
LOOKER_INSTANCE_URLpor la URL de tu instancia de Looker yCLIENT_GUIDpor el GUID de tu cliente de OAuth y, luego, guarda los cambios.
{
"mcpServers": {
"looker": {
"type": "http",
"url": "LOOKER_INSTANCE_URL/mcp",
"oauth": {
"clientId": "CLIENT_GUID",
"callbackPort": 8080
}
}
}
}
Claude para computadoras de escritorio
- En Claude para computadoras, navega a Configuración y selecciona Conectores.
- Elige Agregar conector personalizado y, luego, ingresa un nombre (por ejemplo, Looker).
- En el campo URL, ingresa la URL de tu instancia de Looker con la ruta de acceso
/mcpagregada (por ejemplo,https://looker.example.com/mcp). - En Configuración avanzada, ingresa la cadena exacta que usaste para el
CLIENT_GUIDdurante el registro de la app de OAuth. Deja en blanco el secreto del cliente de OAuth. - Selecciona Agregar para guardar el conector. Cuando se te solicite conectarte, Claude para computadoras iniciará de forma segura el flujo de autorización de PKCE a través de tu navegador.
- Reinicia Claude para computadoras.
Cline
- Abre la extensión Cline en tu IDE y haz clic en el ícono de servidores de MCP.
- Haz clic en Configure MCP Servers para abrir el archivo de configuración.
- Agrega la siguiente configuración, reemplaza
LOOKER_INSTANCE_URLpor tu URL de Looker y, luego, guarda los cambios.
{
"mcpServers": {
"looker": {
"type": "http",
"url": "LOOKER_INSTANCE_URL/mcp"
}
}
}
Cursor
- Crea el directorio
.cursoren la raíz del proyecto si no existe. - Crea el archivo
.cursor/mcp.jsonsi no existe y ábrelo. - Agrega la siguiente configuración, reemplaza
LOOKER_INSTANCE_URLpor tu URL de Looker y, luego, guarda los cambios.
{
"mcpServers": {
"looker": {
"url": "LOOKER_INSTANCE_URL/mcp",
auth: {
"CLIENT_ID": "CLIENT_GUID"
}
}
}
}
- Abre Cursor y navega a Settings > Cursor Settings > MCP. Cuando el servidor se conecta, aparece un estado activo de color verde.
Visual Studio Code (Copilot)
- Abre VS Code y crea el directorio
.vscodeen la raíz del proyecto si no existe. - Crea el archivo
.vscode/mcp.jsonsi no existe y ábrelo. - Agrega la siguiente configuración, reemplaza
LOOKER_INSTANCE_URLpor la URL de tu instancia de Looker y, luego, guarda los cambios.
{
"servers": {
"looker": {
"type": "http",
"url": "LOOKER_INSTANCE_URL/mcp"
}
}
}
Windsurf
- Abre Windsurf y navega al asistente Cascade.
- Haz clic en el ícono de MCP y, luego, en Configure para abrir el archivo de configuración.
- Agrega la siguiente configuración, reemplaza
LOOKER_INSTANCE_URLpor la URL de tu instancia de Looker y, luego, guarda los cambios.
{
"mcpServers": {
"looker": {
"type": "http",
"url": "LOOKER_INSTANCE_URL/mcp"
}
}
}
Autentica con el cliente
Después de configurar tu cliente de MCP con los parámetros de configuración de mcp.json, la primera vez que intentes interactuar con Looker a través de ese cliente, se iniciará el flujo de autenticación de OAuth 2.1. Por lo general, esto implica que el cliente abra una ventana del navegador en la que debes acceder a tu instancia de Looker con tus credenciales estándar y otorgar permiso a la aplicación para acceder a Looker en tu nombre.
Este proceso de acceso es el paso de autenticación interactiva que permite al cliente de MCP obtener un token de acceso para realizar solicitudes futuras.
Consulta la documentación de tu cliente para obtener más detalles.
Una vez que se conecte, el cliente heredará tus roles de Looker y el acceso al contenido. El cliente también tendrá acceso a las herramientas de IA que tu administrador de Looker haya habilitado para el servidor de MCP. Para obtener una lista de todas las herramientas posibles, consulta la documentación de Usa herramientas de IA.
Seguridad y administración
El servidor de MCP administrado está diseñado para heredar el framework de seguridad y administración existente de Looker.
- Límite de permisos: El servidor aplica permisos estrictos a nivel del usuario. Un agente de IA no puede acceder a los datos ni a los modelos que el usuario autenticado no está autorizado a ver.
- Controles del servicio de VPC: En el caso de las instancias de Looker (Google Cloud Core) que usan los Controles del servicio de VPC, el extremo de MCP administrado respeta los límites existentes de los Controles del servicio de VPC sin necesidad de políticas ni parámetros de configuración adicionales.
- Claves de encriptación administradas por el cliente (CMEK): En el caso de las instancias de Looker (Google Cloud Core) que usan CMEK, el servidor de MCP administrado cumple con las CMEK sin necesidad de políticas ni parámetros de configuración adicionales.
- Listas de IPs permitidas: Para las instancias que usan una lista de IPs permitidas en Looker (Google Cloud Core) o Looker (original), el extremo de MCP administrado respeta las reglas de la lista de IPs permitidas existente sin necesidad de realizar configuraciones adicionales.
Registros de auditoría
Cada acción que realiza un agente de IA se registra en la Actividad del sistema de Looker y en los Registros de auditoría de Cloud.
Actividad del sistema
La actividad del servidor de MCP administrado por Looker se registra en las exploraciones Historial y Atributo de evento. En la página de documentación Supervisa el uso de Looker con las exploraciones de la actividad del sistema, se proporcionan las siguientes consultas de ejemplo:
- ¿Qué llamadas a la API inició el servidor de MCP administrado por Looker?
- ¿Qué eventos se relacionan con una solicitud del servidor de MCP administrado por Looker?
- ¿Qué actualizaciones realizaron los administradores de Looker en la configuración de la herramienta del servidor de MCP administrado por Looker?
- ¿Qué consultas ejecutaron los usuarios del servidor de MCP administrado por Looker?
Registros de auditoría de Cloud
Las instancias de Looker (Google Cloud Core) también hacen un seguimiento de la actividad del servidor de MCP administrado por Looker a través de los Registros de auditoría de Cloud. En la página de documentación Registros de auditoría de Looker (Google Cloud Core), se proporcionan consultas de ejemplo.
Limitaciones
- Permisos detallados: Los permisos de OAuth aún no se admiten para el servidor de MCP administrado. El control de acceso se basa en la lista de herramientas permitidas global y en los permisos básicos del usuario.
- Registro dinámico: El registro dinámico de clientes no se admite en la versión preliminar.
- Actualización del cliente: Los cambios en la lista de herramientas permitidas no se envían automáticamente a los clientes conectados. Los usuarios deben esperar 30 segundos después de realizar un cambio en la lista de herramientas y, luego, volver a conectar su cliente para actualizar el manifiesto de la herramienta. Consulta la documentación de tu cliente para obtener información sobre cómo volver a conectarte al servidor de MCP.
- Capacidad del servidor: Durante la fase de versión preliminar, el servidor de MCP administrado se configura con una capacidad fija para ayudarnos a recopilar datos de rendimiento. Durante los períodos de uso máximo, es posible que experimentes tiempos de espera ocasionales. Se prevé que esto suceda.
Precios y cuotas
El servidor de MCP administrado por Looker está disponible sin costo adicional. Sin embargo, las llamadas a herramientas que realizan los agentes de IA consumen las cuotas de API administrativas y basadas en consultas estándar de la instancia. La alta actividad de los agentes puede afectar tu cuota de API disponible.