Usa el servidor MCP remoto de Pub/Sub para administrar recursos de Pub/Sub y publicar mensajes

En este documento, se describe cómo usar el servidor de MCP remoto de Pub/Sub para conectarse a Pub/Sub desde aplicaciones de IA, como la CLI de Gemini, el modo agente en Gemini Code Assist, Claude Code o en aplicaciones de IA que estás desarrollando.

El servidor de MCP de Pub/Sub te permite administrar recursos de Pub/Sub y publicar mensajes. Puedes crear, enumerar, obtener, actualizar y borrar temas, suscripciones y instantáneas de Pub/Sub, así como publicar mensajes en temas.

El servidor de MCP remoto de Pub/Sub se habilita cuando habilitas la API de Pub/Sub.

El Protocolo de contexto del modelo (MCP) estandariza la forma en que los modelos de lenguaje grandes (LLM) y las aplicaciones o 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.

¿Cuál es la diferencia entre los servidores de MCP locales y remotos?

Servidores de MCP locales
Por lo general, se ejecutan 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.
Servidores de MCP remotos
Se ejecutan en la infraestructura del servicio y ofrecen un extremo HTTP 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.

Servidores de MCP de Google y Google Cloud remotos

Los servidores de MCP de Google y Google Cloud remotos tienen las siguientes características y beneficios:

  • Descubrimiento simplificado y centralizado
  • Extremos HTTP globales o regionales administrados
  • Autorización detallada
  • Seguridad opcional de instrucciones y respuestas con 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 Descripción general de los servidores de MCP de Google Cloud.

Antes de comenzar

  1. Accede a tu Google Cloud cuenta de. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
  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. If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.

  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. If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.

  6. Habilita la API de Pub/Sub.

    Roles necesarios para habilitar las APIs

    Para habilitar las APIs, necesitas el rol de IAM de administrador de Service Usage (roles/serviceusage.serviceUsageAdmin), que contiene el permiso serviceusage.services.enable. Obtén más información para otorgar roles.

    Habilitar la API

Roles obligatorios

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

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 usar el servidor de MCP de Pub/Sub. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:

Permisos necesarios

Se requieren los siguientes permisos para usar el servidor de MCP de Pub/Sub:

  • Realizar llamadas a herramientas de MCP: mcp.tools.call

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

Los permisos de Pub/Sub necesarios dependen de la operación específica que deseas realizar. Para obtener más información, consulta Roles y permisos de Pub/Sub.

Autenticación y autorización

El servidor de MCP remoto de Pub/Sub usa el protocolo OAuth 2.0 con Identity and Access Management (IAM) para la autenticación y la autorización. Se admiten todas las Google Cloud identidades para la autenticación en servidores de MCP.

Pub/Sub no admite claves de API como método de autenticación.

Te recomendamos que crees una identidad independiente para los agentes que usan herramientas de MCP, de modo que se pueda controlar y supervisar el acceso a los recursos. Para obtener más información sobre la autenticación, consulta Autenticación en servidores de MCP.

Permisos de OAuth de MCP de Pub/Sub

OAuth 2.0 usa permisos y credenciales para determinar si una entidad autenticada está autorizada 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 Usa OAuth 2.0 para acceder a las APIs de Google. Pub/Sub tiene los siguientes permisos de OAuth de la herramienta de MCP:

URI del permiso Descripción
https://www.googleapis.com/auth/pubsub Permite ver y administrar los recursos de Pub/Sub.

Es posible que se requieran permisos adicionales en los recursos a los que se accede durante una llamada a la herramienta. Para ver una lista de los permisos necesarios para Pub/Sub, consulta la API de Pub/Sub.

Configura un cliente de MCP para usar el servidor de MCP de Pub/Sub

Las aplicaciones y los agentes de IA, como Claude o la CLI de Gemini, pueden crear una instancia de un cliente de MCP que se conecta a un solo servidor de MCP. Una aplicación de IA puede tener varios clientes que se conectan a diferentes servidores de MCP. Para conectarse a un servidor de MCP remoto, el cliente de MCP necesita la URL del servidor de MCP remoto.

En tu aplicación de IA, 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 de MCP de Pub/Sub, ingresa lo siguiente según sea necesario:

  • Nombre del servidor: Servidor de MCP de Pub/Sub
  • URL del servidor o extremo: https://pubsub.googleapis.com/mcp
  • Transporte: HTTP
  • Detalles de autenticación: Según cómo desees autenticarte, puedes ingresar tus Google Cloud credenciales, tu ID de cliente y secreto de OAuth, o una identidad y credenciales de agente. Para obtener más información sobre la autenticación, consulta Autenticación en servidores de MCP.
  • Permiso de OAuth: Es el permiso de OAuth 2.0 que deseas usar cuando te conectas al servidor de MCP de Pub/Sub. Para obtener más información, consulta Permisos de OAuth de MCP de Pub/Sub.

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

Para agregar el servidor de MCP de Pub/Sub a la CLI de Gemini, tu archivo de extensión debe contener lo siguiente:

{
  "name": "EXT_NAME",
  "version": "1.0.0",
  "mcpServers": {
    "MCP_SERVER_NAME": {
      "httpUrl": "https://pubsub.googleapis.com/mcp",
      "authProviderType": "google_credentials",
      "oauth": {
        "scopes": ["https://www.googleapis.com/auth/pubsub"]
      },
      "timeout": 30000,
      "headers": {
        "x-goog-user-project": "PROJECT_ID"
      }
    }
  }
}

Para obtener instrucciones más generales, consulta los siguientes recursos:

Herramientas disponibles

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

Mostrar lista de herramientas

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

POST /mcp HTTP/1.1
Host: pubsub.googleapis.com
Content-Type: application/json

{
  "jsonrpc": "2.0",
  "method": "tools/list",
}

Ejemplos de casos de uso

A continuación, se muestran algunos ejemplos de casos de uso para el servidor de MCP de Pub/Sub:

Ejemplos de instrucciones

  • "Crea una canalización que consuma mensajes del tema my-topic de Pub/Sub, filtre los mensajes que tengan el atributo priority=low y escriba los mensajes en el bucket my-bucket de Cloud Storage".

  • "Crea una suscripción del tema my-topic a la tabla my-table de BigQuery, con las entregas fallidas enviadas a my-dead-letter-topic".

Configuraciones opcionales de seguridad

MCP introduce nuevos riesgos y consideraciones de seguridad debido a la amplia variedad de acciones que se pueden realizar con las herramientas de MCP. Para minimizar y administrar estos riesgos, Google Cloud ofrece valores predeterminados y políticas personalizables para controlar el uso de herramientas de MCP 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 IA.

Usa Model Armor

Model Armor es un Google Cloud servicio diseñado para mejorar la seguridad y la seguridad de tus aplicaciones de IA. Funciona mediante el análisis proactivo de las instrucciones y respuestas de LLM, la protección contra diversos riesgos y la compatibilidad con prácticas de IA responsable. Ya sea que implementes IA en tu entorno de nube o en proveedores de servicios en la 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 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 una llamada a ese proyecto proviene de 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 poder usar las APIs de Model Armor, debes habilitarlas.

Console

  1. Habilitar la API de Model Armor

    Roles necesarios para habilitar las APIs

    Para habilitar las APIs, necesitas el rol de IAM de administrador de Service Usage (roles/serviceusage.serviceUsageAdmin), que contiene el permiso serviceusage.services.enable. Obtén más información para otorgar roles.

    Habilitar la API

  2. Elige el proyecto en el que quieres activar Model Armor.

gcloud

Antes de empezar, sigue estos pasos a través de la Google Cloud CLI con la API de Model Armor:

  1. En la Google Cloud consola de, activa Cloud Shell.

    Activa Cloud Shell

    En la parte inferior de la Google Cloud consola de, se inicia una sesión de Cloud Shell en la que se muestra una ventana de línea de comandos. Cloud Shell es un entorno de shell con Google Cloud CLI ya instalada y con valores ya establecidos para el proyecto actual. La sesión puede tardar unos segundos en inicializarse.

  2. Ejecuta el comando siguiente para configurar el extremo de API del servicio de Model Armor.

    gcloud config set api_endpoint_overrides/modelarmor "https://modelarmor.LOCATION.rep.googleapis.com/"

    Reemplaza LOCATION por la región en la que quieres usar Model Armor.

Configura la protección para los servidores de MCP de Google y Google Cloud remotos

Para proteger las llamadas y respuestas de tu herramienta de MCP, puedes usar la configuración mínima de Model Armor. Un parámetro de configuración mínima define los filtros de seguridad mínimos que se aplican en todo el proyecto. Esta configuración aplica un conjunto coherente de filtros a todas las llamadas y respuestas de la herramienta de MCP dentro del proyecto.

Configura un parámetro de configuración mínima de Model Armor con la limpieza de MCP habilitada. Para obtener más información, consulta Configura los parámetros de configuración mínima de Model Armor settings.

Consulta el siguiente comando de ejemplo:

gcloud model-armor floorsettings update \
--full-uri='projects/PROJECT_ID/locations/global/floorSetting' \
--enable-floor-setting-enforcement=TRUE \
--add-integrated-services=GOOGLE_MCP_SERVER \
--google-mcp-server-enforcement-type=INSPECT_AND_BLOCK \
--enable-google-mcp-server-cloud-logging \
--malicious-uri-filter-settings-enforcement=ENABLED \
--add-rai-settings-filters='[{"confidenceLevel": "MEDIUM_AND_ABOVE", "filterType": "DANGEROUS"}]'

Reemplaza PROJECT_ID por el ID del Google Cloud proyecto de.

Ten en cuenta los siguientes parámetros de configuración:

  • INSPECT_AND_BLOCK: Es el tipo de aplicación que inspecciona el contenido del servidor de MCP de Google y bloquea las instrucciones y respuestas que coinciden con los filtros.
  • ENABLED: Es el parámetro de configuración que habilita un filtro o una aplicación.
  • MEDIUM_AND_ABOVE: Es el nivel de confianza para la configuración del filtro de IA responsable: Peligroso. Puedes modificar este parámetro de configuración, aunque los valores más bajos pueden generar más falsos positivos. Para obtener más información, consulta Niveles de confianza de Model Armor.

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

Si deseas dejar de analizar el tráfico de MCP de Google con Model Armor, ejecuta el siguiente comando:

gcloud model-armor floorsettings update \
  --full-uri='projects/PROJECT_ID/locations/global/floorSetting' \
  --remove-integrated-services=GOOGLE_MCP_SERVER

Reemplaza PROJECT_ID por el Google Cloud ID del proyecto.

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

Controla el uso de MCP con las políticas de denegación de IAM

Las políticas de denegación de Identity and Access Management (IAM) te ayudan a proteger Google Cloud los servidores de MCP remotos. Configura estas políticas para bloquear el acceso no deseado a la herramienta de MCP.

Por ejemplo, puedes denegar o permitir el acceso según lo siguiente:

  • La entidad
  • Propiedades de la herramienta, como solo lectura
  • El ID de cliente de OAuth de la aplicación

Para obtener más información, consulta Controla el uso de MCP con Identity and Access Management.

¿Qué sigue?