Usar el servidor MCP remoto de BigQuery

En este documento se describe cómo usar el servidor del protocolo de contexto de modelo remoto (MCP) de BigQuery para conectarse a BigQuery desde aplicaciones de IA, como la CLI de Gemini, el modo de agente de Gemini Code Assist, Claude Code o las aplicaciones de IA que estés desarrollando.

El estándar Model Context Protocol (MCP) estandariza la forma en que los modelos de lenguaje extensos (LLMs) y las aplicaciones o los agentes de IA se conectan a fuentes de datos externas. Los servidores de MCP te permiten usar sus herramientas, recursos y peticiones para realizar acciones y obtener datos actualizados de su servicio backend.

Los servidores MCP locales suelen ejecutarse en tu máquina local y usan los flujos de entrada y salida estándar (stdio) para la comunicación entre servicios en el mismo dispositivo. Los servidores de MCP remotos se ejecutan en la infraestructura del servicio y ofrecen un endpoint HTTPS a las aplicaciones de IA para que el cliente de MCP de IA y el servidor de MCP se comuniquen entre sí. Para obtener más información sobre la arquitectura de MCP, consulta Arquitectura de MCP.

Google y los servidores de MCP remotos tienen las siguientes funciones y ventajas: Google Cloud

  • Descubrimiento simplificado y centralizado
  • Endpoints HTTPS globales o regionales gestionados
  • Autorización pormenorizada
  • Seguridad opcional de peticiones y respuestas con la protección de Model Armor
  • Registro de auditoría centralizado

Para obtener información sobre otros servidores de MCP e información sobre los controles de seguridad y gobernanza disponibles para los servidores de MCP de Google Cloud, consulta el resumen de los servidores de MCP de Google Cloud.

Puedes usar el servidor MCP local de BigQuery por los siguientes motivos:

  • Debes crear una herramienta personalizada a partir de una consulta SQL parametrizada.
  • No tienes permisos para habilitar o usar el servidor MCP remoto en tu proyecto.

Para obtener más información sobre cómo usar nuestro servidor MCP local, consulta Conectar LLMs a BigQuery con MCP. Las secciones siguientes solo se aplican al servidor MCP remoto de BigQuery.

Antes de empezar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Si vas a usar un proyecto que ya tengas para seguir esta guía, verifica que tienes los permisos necesarios para completarla. Si has creado un proyecto, ya tienes los permisos necesarios.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  5. Si vas a usar un proyecto que ya tengas para seguir esta guía, verifica que tienes los permisos necesarios para completarla. Si has creado un proyecto, ya tienes los permisos necesarios.

  6. Enable the BigQuery API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

    En los proyectos nuevos, la API de BigQuery se habilita automáticamente.

  7. Opcional: Habilita la facturación del proyecto. Si no quieres habilitar la facturación ni proporcionar una tarjeta de crédito, puedes seguir los pasos que se indican en este documento. BigQuery te ofrece un entorno aislado para llevar a cabo los pasos. Para obtener más información, consulta Habilitar el entorno aislado de BigQuery.
  8. Roles obligatorios

    Para obtener los permisos que necesitas para habilitar el servidor de MCP de BigQuery, pide a tu administrador que te conceda los siguientes roles de gestión de identidades y accesos en el proyecto en el que quieras habilitar el servidor de MCP de BigQuery:

    Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar acceso a proyectos, carpetas y organizaciones.

    Estos roles predefinidos contienen los permisos necesarios para habilitar el servidor MCP de BigQuery. Para ver los permisos exactos que se necesitan, despliega la sección Permisos necesarios:

    Permisos obligatorios

    Para habilitar el servidor de MCP de BigQuery, se necesitan los siguientes permisos:

    • Habilita los servidores de MCP en un proyecto:
      • serviceusage.mcppolicy.get
      • serviceusage.mcppolicy.update
    • Hacer llamadas a herramientas de MCP: mcp.tools.call
    • Ejecutar tareas de BigQuery: bigquery.jobs.create
    • Consultar datos de BigQuery: bigquery.tables.getData

    También puedes obtener estos permisos con roles personalizados u otros roles predefinidos.

    Habilitar o inhabilitar el servidor MCP de BigQuery

    Puedes habilitar o inhabilitar el servidor de MCP de BigQuery en un proyecto con el comando gcloud beta services mcp enable. Para obtener más información, consulta las secciones siguientes.

    Habilitar el servidor MCP de BigQuery en un proyecto

    Si usas proyectos diferentes para tus credenciales de cliente (como claves de cuenta de servicio, ID de cliente de OAuth o claves de API) y para alojar tus recursos, debes habilitar el servicio BigQuery y el servidor MCP remoto de BigQuery en ambos proyectos.

    Para habilitar el servidor MCP de BigQuery en tu proyecto de Google Cloud , ejecuta el siguiente comando:

    gcloud beta services mcp enable SERVICE \
        --project=PROJECT_ID
    

    Haz los cambios siguientes:

    • PROJECT_ID: el ID del proyecto Google Cloud
    • SERVICE: bigquery.googleapis.com (el nombre del servicio global de BigQuery)

    El servidor MCP remoto de BigQuery está habilitado para usarse en tuGoogle Cloud proyecto. Si el servicio BigQuery no está habilitado en tu proyecto, se te pedirá que lo habilites antes de habilitar el servidor MCP remoto de BigQuery. Google Cloud

    Como práctica recomendada de seguridad, te recomendamos que habilites los servidores MCP solo para los servicios que necesite tu aplicación de IA para funcionar.

    Inhabilitar el servidor MCP de BigQuery en un proyecto

    Para inhabilitar el servidor MCP de BigQuery en tu proyecto Google Cloud , ejecuta el siguiente comando:

    gcloud beta services mcp disable SERVICE \
        --project=PROJECT_ID
    

    El servidor MCP de BigQuery está inhabilitado para usarlo en tu proyectoGoogle Cloud .

    Autenticación y autorización

    Los servidores de MCP de BigQuery usan el protocolo OAuth 2.0 con Gestión de Identidades y Accesos (IAM) para la autenticación y la autorización. Se admiten todas las Google Cloud identidades para la autenticación en los servidores de MCP.

    El servidor MCP remoto de BigQuery no acepta claves de API.

    Permisos de OAuth de BigQuery MCP

    OAuth 2.0 usa los permisos y las credenciales para determinar si una entidad autenticada tiene autorización para realizar una acción específica en un recurso. Para obtener más información sobre los permisos de OAuth 2.0 en Google, consulta el artículo Usar OAuth 2.0 para acceder a las APIs de Google.

    BigQuery tiene los siguientes ámbitos de OAuth de la herramienta MCP:

    URI de ámbito de la CLI de gcloud Descripción
    https://www.googleapis.com/auth/bigquery Consultar y gestionar tus datos en BigQuery y ver la dirección de correo de tu cuenta de Google.

    Es posible que se necesiten permisos adicionales en los recursos a los que se acceda durante una llamada a herramienta. Para ver una lista de los permisos necesarios para BigQuery, consulta Permisos de OAuth 2.0 para la API de BigQuery v2.

    Configurar un cliente de MCP para usar el servidor de MCP de BigQuery

    Los programas host, como Claude o la CLI de Gemini, pueden crear instancias de clientes de MCP que se conecten a un único servidor de MCP. Un programa host puede tener varios clientes que se conecten a diferentes servidores de MCP. Para conectarse a un servidor de MCP remoto, el cliente de MCP debe conocer al menos la URL del servidor de MCP remoto.

    En tu host, busca una forma de conectarte a un servidor de MCP remoto. Se te pedirá que introduzcas información sobre el servidor, como su nombre y URL.

    En el servidor MCP de BigQuery, introduzca lo siguiente según sea necesario:

    • Nombre del servidor: servidor MCP de BigQuery
    • URL del servidor o Endpoint: bigquery.googleapis.com/mcp
    • Transporte: HTTP
    • Detalles de autenticación: tus Google Cloud credenciales, tu ID y secreto de cliente de OAuth, o la identidad y las credenciales de un agente

      Los detalles de autenticación que elijas dependerán de cómo quieras autenticarte. Para obtener más información, consulta Autenticarse en servidores de MCP.

    Para obtener instrucciones específicas de tu host, consulta lo siguiente:

    Para obtener información más general, consulta Conectarse a servidores MCP remotos.

    Herramientas disponibles

    Las herramientas de MCP que son de solo lectura tienen el atributo mcp.tool.isReadOnly de MCP definido como true. Puede que solo quieras permitir herramientas de solo lectura en determinados entornos a través de tu política de la organización.

    Para ver los detalles de las herramientas de MCP disponibles y sus descripciones para el servidor de MCP de BigQuery, consulta la referencia de MCP de BigQuery.

    Herramientas de lista

    Usa el inspector de MCP para enumerar las herramientas o envía una solicitud HTTP tools/list directamente al servidor de MCP remoto de BigQuery. El método tools/list no requiere autenticación.

    POST /mcp HTTP/1.1
    Host: bigquery.googleapis.com
    Content-Type: application/json
    
    {
      "jsonrpc": "2.0",
      "method": "tools/list",
    }
    

    Casos prácticos de ejemplo

    Estos son algunos casos prácticos del servidor MCP de BigQuery:

    • Crea flujos de trabajo que usen las estadísticas de los datos de BigQuery para activar determinadas acciones, como crear incidencias y redactar correos.

    • Utiliza las funciones avanzadas de BigQuery, como las previsiones, para obtener estadísticas de orden superior.

    • Crea una experiencia conversacional para tus usuarios con instrucciones personalizadas para el agente.

    Peticiones de ejemplo

    Puedes usar las siguientes peticiones de ejemplo para obtener información sobre los recursos de BigQuery, obtener estadísticas y analizar datos de BigQuery:

    • Muestra los conjuntos de datos del proyecto PROJECT_ID.
    • Busca todas las consultas que he ejecutado en el proyecto PROJECT_ID con el servidor MCP de la región REGION. Usa la etiqueta goog-mcp-server:true para identificar los trabajos de consulta que se han ejecutado a través del servidor MCP.
    • Encuentra los pedidos con mayor volumen de DATASET_ID en el proyecto PROJECT_ID. Identifica las tablas adecuadas, busca el esquema correcto y muestra los resultados.
    • Crea una previsión en la tabla PROJECT_ID.DATASET_ID.TABLE_ID para los próximos años. Usa COLUMN_NAME como columna de datos y COLUMN_NAME como columna de marca de tiempo. Muestra las 10 previsiones principales.

    En las peticiones, sustituye lo siguiente:

    • PROJECT_ID: el ID del proyecto Google Cloud
    • REGION: el nombre de la región
    • DATASET_ID: el nombre del conjunto de datos
    • TABLE_ID: el nombre de la tabla
    • COLUMN_NAME: el nombre de la columna

    Configuraciones de seguridad opcionales

    La MCP introduce nuevos riesgos y consideraciones de seguridad debido a la gran variedad de acciones que puedes llevar a cabo con las herramientas de la MCP. Para minimizar y gestionar estos riesgos,Google Cloud ofrece políticas predeterminadas y personalizables para controlar el uso de las herramientas de perfil de cliente unificado en tu Google Cloud organización o proyecto.

    Para obtener más información sobre la seguridad y la gobernanza de MCP, consulta Seguridad de la IA.

    Model Armor

    Model Armor es un Google Cloud servicio diseñado para mejorar la seguridad de tus aplicaciones de IA. Funciona analizando de forma proactiva las peticiones y respuestas de los LLMs, protegiendo frente a diversos riesgos y fomentando las prácticas de IA responsable. Tanto si implementas la IA en tu entorno de nube como si lo haces en proveedores de nube externos, Model Armor puede ayudarte a evitar entradas maliciosas, verificar la seguridad del contenido, proteger datos sensibles, mantener el cumplimiento y aplicar tus políticas de seguridad de la IA de forma coherente en todo tu diverso panorama de IA.

    Model Armor solo está disponible en determinadas ubicaciones regionales. Si Model Armor está habilitado en un proyecto y se hace una llamada a ese proyecto desde una región no admitida, Model Armor hará una llamada entre regiones. Para obtener más información, consulta Ubicaciones de Model Armor.

    Habilitar Model Armor

    Para habilitar Model Armor, sigue estos pasos:

    1. Habilita Model Armor en tu proyecto de Google Cloud .

      gcloud services enable modelarmor.googleapis.com \
          --project=PROJECT_ID
      

      Sustituye PROJECT_ID por el ID de tu proyecto. Google Cloud

    2. Configura los ajustes de umbral recomendados para Model Armor.

      gcloud model-armor floorsettings update \
          --full-uri='projects/PROJECT_ID/locations/global/floorSetting' \
          --mcp-sanitization=ENABLED \
          --malicious-uri-filter-settings-enforcement=ENABLED \
          --pi-and-jailbreak-filter-settings-enforcement=ENABLED \
          --pi-and-jailbreak-filter-settings-confidence-level=MEDIUM_AND_ABOVE
      

      Sustituye PROJECT_ID por el ID de tu proyecto. Google Cloud

      Model Armor está configurado para detectar URLs maliciosas e intentos de inyección de peticiones y jailbreaking.

      Para obtener más información sobre los filtros configurables de Model Armor, consulta Filtros de Model Armor.

    3. Añade Model Armor como proveedor de seguridad de contenido para los servicios de MCP.

      gcloud beta services mcp content-security add modelarmor.googleapis.com \
          --project=PROJECT_ID
      

      Sustituye PROJECT_ID por el ID del proyecto. Google Cloud

    4. Confirma que el tráfico de MCP se envía a Model Armor.

      gcloud beta services mcp content-security get \
          --project=PROJECT_ID
      

      Sustituye PROJECT_ID por el ID del proyecto. Google Cloud

    Registro de Model Armor

    Para obtener información sobre los registros de auditoría y de plataforma de Model Armor, consulta Registros de auditoría de Model Armor.

    Inhabilitar Model Armor en un proyecto

    Para inhabilitar Model Armor en un proyecto de Google Cloud , ejecuta el siguiente comando:

    gcloud beta services mcp content-security remove modelarmor.googleapis.com \
        --project=PROJECT_ID
    

    Sustituye PROJECT_ID por el Google Cloud ID del proyecto.

    Model Armor no analiza el tráfico de MCP en Google Cloud del proyecto especificado.

    Inhabilitar el análisis del tráfico de MCP con Model Armor

    Si quieres seguir usando Model Armor en un proyecto, pero quieres dejar de analizar el tráfico de MCP con Model Armor, ejecuta el siguiente comando:

    gcloud model-armor floorsettings update \
        --full-uri='projects/PROJECT_ID/locations/global/floorSetting' \
        --mcp-sanitization=DISABLED
    

    Sustituye PROJECT_ID por el Google Cloud ID del proyecto.

    Model Armor no analizará el tráfico de MCP en Google Cloud.

    Control de MCP a nivel de organización

    Puedes crear políticas de organización personalizadas para controlar el uso de servidores MCP en tu organización Google Cloud mediante la restricción gcp.managed.allowedMCPService. Para obtener más información y ejemplos de uso, consulta Control de acceso con gestión de identidades y accesos.

    Cuotas y límites

    El servidor MCP remoto de BigQuery no tiene cuotas propias. No hay límite en el número de llamadas que se pueden hacer al servidor MCP.

    Seguirás estando sujeto a las cuotas que apliquen las APIs a las que llamen las herramientas del servidor de MCP. Las herramientas del servidor de MCP llaman a los siguientes métodos de la API:

    Herramienta Método de la API Cuotas
    list_dataset_ids datasets.list Cuotas y límites de conjuntos de datos
    list_table_ids tables.list Cuotas y límites de las tablas
    get_dataset_info datasets.get Cuotas y límites de conjuntos de datos
    get_table_info tables.get Cuotas y límites de las tablas
    execute_sql jobs.Query Cuotas y límites de tareas de consulta

    Para obtener más información sobre las cuotas de BigQuery, consulta Cuotas y límites.

    Siguientes pasos