Usa el servidor de MCP remoto de BigQuery

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

El estándar del Protocolo de contexto del modelo (MCP) estandariza la forma en que los modelos de lenguaje grandes (LLM) 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 mensajes para realizar acciones y obtener datos actualizados de su servicio de backend.

Por lo general, los servidores de MCP locales se ejecutan en tu máquina local y usan los flujos de entrada y salida estándar (stdio) para la comunicación entre los servicios en el mismo dispositivo. Los servidores de MCP remotos se ejecutan en la infraestructura del servicio y ofrecen un extremo HTTPS a las aplicaciones de IA para la comunicación entre el cliente de MCP de IA y el servidor de MCP. 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 beneficios: Google Cloud

  • Descubrimiento simplificado y centralizado
  • Extremos HTTPS regionales o globales administrados
  • Autorización detallada
  • Seguridad opcional de instrucciones y respuestas con la protección de Model Armor
  • Registro de auditoría centralizado

Para obtener información sobre otros servidores de MCP y sobre los controles de seguridad y gobernanza disponibles para los servidores de MCP de Google Cloud, consulta la descripción general 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 sobre una consulta en SQL parametrizada.
  • No tienes permisos para habilitar o usar el servidor de MCP remoto en tu proyecto.

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

Antes de comenzar

  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 usas un proyecto existente en esta guía, verifica que tengas los permisos necesarios para completarla. Si creaste un proyecto nuevo, 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 usas un proyecto existente en esta guía, verifica que tengas los permisos necesarios para completarla. Si creaste un proyecto nuevo, 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

    Para los proyectos nuevos, la API de BigQuery se habilita de forma automática.

  7. Opcional: Habilita la facturación para el proyecto. Si no deseas habilitar la facturación ni proporcionar una tarjeta de crédito, los pasos que se indican en este documento seguirán funcionando. BigQuery proporciona una zona de pruebas para realizar los pasos. Para obtener más información, consulta Habilita la zona de pruebas de BigQuery.
  8. Roles obligatorios

    Para obtener los permisos que necesitas para habilitar el servidor de MCP de BigQuery, pídele a tu administrador que te otorgue los siguientes roles de IAM en el proyecto en el que deseas habilitar el servidor de MCP de BigQuery:

    Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

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

    Permisos necesarios

    Se requieren los siguientes permisos para habilitar el servidor de MCP de BigQuery:

    • Habilita los servidores de MCP en un proyecto:
      • serviceusage.mcppolicy.get
      • serviceusage.mcppolicy.update
    • Realiza llamadas a la herramienta de MCP: mcp.tools.call
    • Ejecutar trabajos de BigQuery: bigquery.jobs.create
    • Consulta datos de BigQuery: bigquery.tables.getData

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

    Habilita o inhabilita el servidor de 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 siguientes secciones.

    Habilita el servidor de MCP de BigQuery en un proyecto

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

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

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

    Reemplaza lo siguiente:

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

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

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

    Inhabilita el servidor de MCP de BigQuery en un proyecto

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

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

    El servidor de MCP de BigQuery está inhabilitado para su uso en tu proyecto deGoogle Cloud .

    Autenticación y autorización

    Los servidores de MCP de BigQuery usan el protocolo OAuth 2.0 con Identity and Access Management (IAM) para la autenticación y la autorización. Todas las Google Cloudidentidades son compatibles con la autenticación en los servidores de MCP.

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

    Permisos de OAuth de MCP de BigQuery

    OAuth 2.0 usa permisos y credenciales para determinar si un principal autenticado está autorizado a realizar una acción específica en un recurso. Si deseas obtener más información sobre los permisos de OAuth 2.0 en Google, consulta Usa OAuth 2.0 para acceder a las APIs de Google.

    BigQuery tiene los siguientes permisos de OAuth de la herramienta de MCP:

    URI del alcance para gcloud CLI Descripción
    https://www.googleapis.com/auth/bigquery Ver y administrar tus datos en BigQuery y ver la dirección de correo electrónico de tu Cuenta de Google

    Es posible que se requieran alcances adicionales en los recursos a los que se accede durante una llamada a la herramienta. Para ver una lista de los permisos requeridos para BigQuery, consulta Permisos de OAuth 2.0 para la versión 2 de la API de BigQuery.

    Configura un cliente de MCP para que use 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 conectan a un solo servidor de MCP. Un programa host puede tener varios clientes que se conectan a diferentes servidores de MCP. Para conectarse a un servidor de MCP remoto, el cliente de MCP debe conocer, como mínimo, la URL del servidor de MCP remoto.

    En tu host, busca una forma de conectarte a un servidor de MCP remoto. Se te solicitará que ingreses detalles sobre el servidor, como su nombre y URL.

    Para el servidor del MCP de BigQuery, ingresa lo siguiente según sea necesario:

    • Nombre del servidor: Servidor de MCP de BigQuery
    • URL del servidor o Extremo: bigquery.googleapis.com/mcp
    • Transporte: HTTP
    • Detalles de autenticación: Tus credenciales de Google Cloud , tu ID y secreto del cliente de OAuth, o bien 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 Cómo autenticarse en los servidores de MCP.

    Para obtener orientación específica del host, consulta lo siguiente:

    Para obtener orientación más general, consulta Conéctate a servidores de MCP remotos.

    Herramientas disponibles

    Las herramientas de MCP que son de solo lectura tienen el atributo mcp.tool.isReadOnly de MCP establecido en true. Es posible que desees permitir solo herramientas de solo lectura en ciertos 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",
    }
    

    Ejemplos de casos de uso

    A continuación, se muestran ejemplos de casos de uso del servidor del MCP de BigQuery:

    • Crea flujos de trabajo que usen estadísticas de los datos de BigQuery para activar ciertas acciones, como crear problemas y redactar correos electrónicos.

    • Usa las capacidades avanzadas de BigQuery, como la previsión, para obtener estadísticas de orden superior.

    • Crea una experiencia de conversación para tus usuarios con instrucciones personalizadas del agente.

    Ejemplos de instrucciones

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

    • Enumera los conjuntos de datos del proyecto PROJECT_ID.
    • Encuentra todas las búsquedas que ejecuté en el proyecto PROJECT_ID con el servidor de MCP en la región REGION. Usa la etiqueta goog-mcp-server:true para identificar los trabajos de consulta que se ejecutaron a través del servidor de MCP.
    • Encuentra los pedidos principales por volumen de DATASET_ID en el proyecto PROJECT_ID. Identifica las tablas adecuadas, encuentra 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 la columna de datos y COLUMN_NAME como la columna de marcas de tiempo. Mostrar las 10 previsiones principales

    En las instrucciones, reemplaza lo siguiente:

    • PROJECT_ID: Es el ID del proyecto de Google Cloud .
    • REGION: es 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 opcionales de seguridad

    La MCP introduce nuevos riesgos y consideraciones de seguridad debido a la amplia variedad de acciones que puedes realizar con las herramientas de MCP. Para minimizar y administrar estos riesgos,Google Cloud ofrece políticas predeterminadas y personalizables para controlar el uso de las herramientas de MCP en tu organización o proyecto deGoogle Cloud . Google Cloud

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

    Model Armor

    Model Armor es un servicio Google Cloud diseñado para mejorar la seguridad de tus aplicaciones basadas en IA. Funciona analizando de forma proactiva las instrucciones y respuestas de los LLM, protegiendo contra diversos riesgos y respaldando las prácticas de IA responsable. Ya sea que implementes la IA en tu entorno de nube o en proveedores externos de servicios en la nube, Model Armor puede ayudarte a evitar entradas maliciosas, verificar la seguridad del contenido, proteger los datos sensibles, mantener el cumplimiento y aplicar tus políticas de seguridad de la IA de manera coherente en todo tu diverso panorama de IA.

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

    Habilita Model Armor

    Para habilitar Model Armor, completa los siguientes pasos:

    1. Habilita Model Armor en tu Google Cloud proyecto.

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

      Reemplaza PROJECT_ID por el ID del proyecto de Google Cloud .

    2. Configura los parámetros de límites 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
      

      Reemplaza PROJECT_ID por el ID del proyecto de Google Cloud .

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

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

    3. Agrega 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
      

      Reemplaza PROJECT_ID por el ID del proyecto Google Cloud .

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

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

      Reemplaza 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 la plataforma de Model Armor, consulta Registro de auditoría de Model Armor.

    Inhabilita Model Armor en un proyecto

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

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

    Reemplaza PROJECT_ID por el ID del proyecto de Google Cloud .

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

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

    Si aún quieres usar Model Armor en un proyecto, pero deseas detener el análisis del 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
    

    Reemplaza PROJECT_ID por el ID del proyecto de Google Cloud .

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

    Control de MCP a nivel de la organización

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

    Cuotas y límites

    El servidor de MCP remoto de BigQuery no tiene sus propias cuotas. No hay límite en la cantidad de llamadas que se pueden realizar al servidor de MCP.

    Aún estás sujeto a las cuotas que aplican las APIs a las que llaman las herramientas del servidor de MCP. Las herramientas del servidor de MCP llaman a los siguientes métodos de API:

    Herramienta Método de la API Cuotas
    list_dataset_ids datasets.list Cuotas y límites de los 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 los conjuntos de datos
    get_table_info tables.get Cuotas y límites de las tablas
    execute_sql jobs.Query Cuotas y límites de trabajos de consulta

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

    ¿Qué sigue?