Usa servidores de MCP

Los servidores de MCP te permiten acceder a herramientas y ejecutarlas para crear, administrar y consultar recursos deGoogle Cloud con plataformas de agentes de IA. En este documento, se describe cómo conectarse a servidores remotos del Protocolo de contexto del modelo (MCP) desde la extensión del Kit de agentes de datos de Google Cloud para Visual Studio Code. Google Cloud

Servidores de MCP compatibles

Los siguientes servidores de MCP remotos son compatibles con el trabajo en la extensión Data Agent Kit para VS Code. Para obtener detalles específicos del producto, consulta estas guías:

Se habilita un servidor de MCP remoto cuando habilitas la API correspondiente. Por ejemplo, cuando habilitas la API de Spanner en tu proyecto, se habilita automáticamente el MCP remoto de Spanner.

Google Cloud servidores de MCP remotos

Los servidores de MCP remotos de Google y Google Cloud tienen las siguientes funciones y beneficios:

  • Descubrimiento simplificado y centralizado
  • Extremos HTTP administrados globales o regionales
  • 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 administración disponibles para los servidores de MCP de Google Cloud, consulta la descripción general de los servidores de MCP de Google Cloud.

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.

¿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 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.

Antes de comenzar

  1. Instala la extensión Data Agent Kit para la extensión de VS Code.
  2. Configura la extensión. Asegúrate de habilitar todas las APIs.

Roles obligatorios

Para obtener los permisos que necesitas para acceder a los servidores de Google Cloud MCP desde tu IDE, pídele a tu administrador que te otorgue el rol de IAM de Usuario de la herramienta de MCP (roles/mcp.toolUser) en el proyecto en el que estás trabajando.

Según los recursos a los que planees acceder, es posible que necesites roles adicionales más allá de los que te permiten usar la extensión. Para ver los roles mínimos requeridos para acceder a los servidores MCP remotos de cada servicio de Google Cloudcompatible, consulta las guías específicas del producto.

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

Identidad temporal como cuenta de servicio

Cuando te conectas a los servidores de MCP desde la extensión Data Agent Kit para VS Code, puedes usar tus credenciales de usuario o la suplantación de identidad de la cuenta de servicio. Te recomendamos que uses la suplantación de cuentas de servicio para gcloud CLI y las credenciales predeterminadas de la aplicación (ADC) cuando te conectes a los servidores de MCP.

Esto implica comenzar con las credenciales que usaste para acceder aGoogle Cloud y a gcloud CLI en VS Code, por lo general, tu cuenta de usuario. Luego, solicitas credenciales de corta duración para tu cuenta de servicio y usas las credenciales de la cuenta de servicio en lugar de las de usuario. Para obtener más información, consulta Usa la identidad temporal como cuenta de servicio.

Para obtener orientación sobre cómo usar la identidad temporal como cuenta de servicio para autenticarse en los servidores de MCP, consulta Identidad temporal como cuenta de servicio.

Autenticación y autorización

Completa los siguientes pasos de autenticación y autorización. Si deseas obtener más información sobre la autorización de la Cuenta de Google, consulta Usa OAuth 2.0 para acceder a las APIs de Google.

Inicia el proceso de autorización en el IDE

Para comenzar el proceso, envía una instrucción al chat con agente en el IDE.

  1. Si no se muestra el panel de chat, presiona Cmd/Ctrl + Mayúsculas + P para abrir la paleta de comandos y, luego, busca y ejecuta Open Chat.
  2. En el panel de chat, envía la siguiente instrucción:

    list BigQuery datasets using mcp server
    

    El agente propone el siguiente comando de gcloud CLI:

    gcloud config get-value project
    
  3. Haz clic en Permitir.

    Aparecerá un diálogo en el que se te preguntará si deseas proporcionar un ID de cliente.

  4. Haz clic en Copiar URIs y continuar.

    Se abrirá la paleta de comandos y se te pedirá un ID de cliente de OAuth.

Obtén el ID de cliente de OAuth

A continuación, obtén tu ID de cliente de OAuth desde la consola de Google Cloud .

  1. En tu navegador, abre la consola deGoogle Cloud .
  2. Haz clic en Seleccionar un proyecto.
  3. Selecciona el mismo proyecto que usas en la extensión Data Agent Kit para VS Code.
  4. En el menú de navegación de la API, haz clic en Credenciales.
  5. En IDs de cliente de OAuth 2.0, haz clic en el ID del cliente que deseas usar.
  6. En el panel de detalles, en Información adicional, busca y copia el valor de ID de cliente.

Proporciona credenciales a VS Code

Ingresa tu ID de cliente y tu secreto del cliente en el IDE.

  1. Regresa a VS Code.
  2. Pega el ID de cliente en el cuadro de diálogo Agregar detalles de registro del cliente.
  3. Presiona Intro.
  4. Regresa a la consola y copia el valor de Secreto del cliente.
  5. Regresa a VS Code.
  6. Pega el secreto del cliente en el cuadro de diálogo Add Client Registration Details y presiona Intro.

    El agente sigue ejecutándose y, luego, aparece un diálogo que indica que el servidor de MCP quiere autenticarse.

  7. Haz clic en Permitir.

  8. Si se te solicita que vuelvas a acceder a tu Cuenta de Google, sigue las instrucciones y regresa al IDE.

    El agente obtiene los conjuntos de datos de BigQuery que solicitaste del servidor de MCP y muestra la lista.

Configura Google Cloud servidores de MCP remotos en la extensión

Con las herramientas de agente en el IDE, puedes crear una instancia de un cliente de MCP que se conecte a un solo servidor de MCP. Puedes 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, como mínimo, la URL del servidor de MCP remoto.

Para cada cliente, usa lo siguiente según sea necesario.

  • Nombre del servidor: SERVER_NAME
  • Endpoint: ENDPOINT
  • 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 bien la identidad y las credenciales de un agente.
  • Alcance de OAuth: Es el alcance de OAuth 2.0 que deseas usar cuando te conectes al servidor de MCP de AlloyDB.

Reemplaza SERVER_NAME y ENDPOINT por los valores del servicio al que te conectas. En el caso de AlloyDB, debes especificar una región, como us-east4.

Servicio

Nombre del servidor

Extremo

AlloyDB

Servidor de MCP de AlloyDB

https://alloydb.REGION.rep.googleapis.com/mcp

BigQuery

Servidor de MCP de BigQuery

https://bigquery.googleapis.com/mcp

Cloud SQL

Servidor de MCP de Cloud SQL

https://sqladmin.googleapis.com/mcp

Knowledge Catalog

Servidor de MCP de Knowledge Catalog

https://dataplex.googleapis.com/mcp

Managed Service para Apache Spark

Servidor de MCP de Managed Service para Apache Spark

https://dataproc-us-central1.googleapis.com/mcp

Spanner

Servidor de MCP de Spanner

https://spanner.googleapis.com/mcp

Configuraciones de MCP para Toolbox y servidores de MCP remotos

Usa las siguientes configuraciones para cada servicio del kit de agentes de datos de Google Cloud al que quieras conectarte.

AlloyDB

Remoto

'alloydb': {
  remote: {
    vscode: {
      'datacloud_alloydb_remote': {
        type: 'http',
        url: 'https://alloydb.REGION.rep.googleapis.com/mcp',
        authProviderType: 'google_credentials',
        oauth: {
          scopes: ['https://www.googleapis.com/auth/cloud-platform'],
        },
      },

Local

'datacloud_alloydb-postgres-admin_toolbox': {
  '$typeName': 'exa.cascade_plugins_pb.CascadePluginCommandTemplate',
  'command': 'npx',
  'args': [
    '-y',
    '@toolbox-sdk/server@>=1.1.0',
    '--prebuilt',
    'alloydb-postgres-admin',
    '--stdio'
  ],
  'env': {},
},
'datacloud_alloydb-postgres_toolbox': {
  '$typeName': 'exa.cascade_plugins_pb.CascadePluginCommandTemplate',
  'command': 'npx',
  'args': [
    '-y',
    '@toolbox-sdk/server@>=1.1.0',
    '--prebuilt',
    'alloydb-postgres',
    '--stdio'
  ],
  'env': {
    'ALLOYDB_POSTGRES_CLUSTER': '',
    'ALLOYDB_POSTGRES_DATABASE': '',
    'ALLOYDB_POSTGRES_INSTANCE': '',
    'ALLOYDB_POSTGRES_IP_TYPE': '',
    'ALLOYDB_POSTGRES_PASSWORD': '',
    'ALLOYDB_POSTGRES_PROJECT': '',
    'ALLOYDB_POSTGRES_REGION': '',
    'ALLOYDB_POSTGRES_USER': '',
  },
},

BigQuery

Remoto

'datacloud_bigquery_remote': {
  type: 'http',
  url: 'https://bigquery.googleapis.com/mcp',
  authProviderType: 'google_credentials',
  oauth: {
    scopes: [
      'https://www.googleapis.com/auth/bigquery',
      'https://www.googleapis.com/auth/cloud-platform',
    ],
  },
},

Local

'datacloud_bigquery_toolbox': {
  command: 'npx',
  args: [
    '-y',
    '@toolbox-sdk/server@>=1.1.0',
    '--prebuilt',
    'bigquery',
    '--stdio'
  ],
  env: {
    'BIGQUERY_LOCATION': '',
    'BIGQUERY_PROJECT': '',
  },
},

Cloud SQL

Remoto

'datacloud_cloud-sql_remote': {
  type: 'http',
  url: 'https://sqladmin.googleapis.com/mcp',
  authProviderType: 'google_credentials',
  oauth: {
    scopes: ['https://www.googleapis.com/auth/cloud-platform'],
  },
},

Local

'datacloud_cloud-sql-postgresql-admin_toolbox': {
  '$typeName': 'exa.cascade_plugins_pb.CascadePluginCommandTemplate',
  'command': 'npx',
  'args': [
    '-y',
    '@toolbox-sdk/server@>=1.1.0',
    '--prebuilt',
    'cloud-sql-postgres-admin',
    '--stdio'
  ],
  'env': {},
},
'datacloud_cloud-sql-postgresql_toolbox': {
  '$typeName': 'exa.cascade_plugins_pb.CascadePluginCommandTemplate',
  'command': 'npx',
  'args': [
    '-y',
    '@toolbox-sdk/server@>=1.1.0',
    '--prebuilt',
    'cloud-sql-postgres',
    '--stdio'
  ],
  'env': {
    'CLOUD_SQL_POSTGRES_DATABASE': '',
    'CLOUD_SQL_POSTGRES_INSTANCE': '',
    'CLOUD_SQL_POSTGRES_IP_TYPE': '',
    'CLOUD_SQL_POSTGRES_PASSWORD': '',
    'CLOUD_SQL_POSTGRES_PROJECT': '',
    'CLOUD_SQL_POSTGRES_REGION': '',
    'CLOUD_SQL_POSTGRES_USER': '',
  },
},

Knowledge Catalog

Remoto

'datacloud_knowledge_catalog_remote': {
  type: 'http',
  url: 'https://dataplex.googleapis.com/mcp',
  authProviderType: 'google_credentials',
  oauth: {
    scopes: ['https://www.googleapis.com/auth/cloud-platform'],
  },

Local

'datacloud_knowledge_catalog_toolbox': {
  '$typeName': 'exa.cascade_plugins_pb.CascadePluginCommandTemplate',
  'command': 'npx',
  'args': [
    '-y',
    '@toolbox-sdk/server@>=1.1.0',
    '--prebuilt',
    'dataplex',
    '--stdio'
  ],
  'env': {
      'DATAPLEX_PROJECT': '${PROJECT_ID}',
    }

Managed Service para Apache Spark

Remoto

'datacloud_managed_apache_spark_remote': {
          type: 'http',
          url: 'https://dataproc-${REGION}.googleapis.com/mcp',
          authProviderType: 'google_credentials',
          oauth: {
            scopes: ['https://www.googleapis.com/auth/dataproc'],
          },
        },

Local

'datacloud_managed_apache_spark_toolbox': {
        '$typeName': 'exa.cascade_plugins_pb.CascadePluginCommandTemplate',
        'command': 'npx',
        'args': [
          '-y',
          TOOLBOX_VERSION,
          '--prebuilt',
          'dataproc',
          '--stdio',
          '--user-agent-metadata',
          'google-cloud-data-agent-kit-${IDE_TYPE}',
        ],
        'env': {
          'DATAPROC_PROJECT': '${PROJECT_ID}',
          'DATAPROC_REGION': '${REGION}',
        },
      },
      'datacloud_serverless-spark_toolbox': {
        '$typeName': 'exa.cascade_plugins_pb.CascadePluginCommandTemplate',
        'command': 'npx',
        'args': [
          '-y',
          TOOLBOX_VERSION,
          '--prebuilt',
          'serverless-spark',
          '--stdio',
          '--user-agent-metadata',
          'google-cloud-data-agent-kit-${IDE_TYPE}',
        ],
        'env': {
          'SERVERLESS_SPARK_PROJECT': '${PROJECT_ID}',
          'SERVERLESS_SPARK_LOCATION': '${REGION}',
        },
      },

Spanner

Remoto

'datacloud_spanner_remote': {
  type: 'http',
  url: 'https://spanner.googleapis.com/mcp',
  authProviderType: 'google_credentials',
  oauth: {
    scopes: [
      'https://www.googleapis.com/auth/spanner.admin',
      'https://www.googleapis.com/auth/spanner.data',
    ],
   },
},

Local

'datacloud_spanner_toolbox': {
  '$typeName': 'exa.cascade_plugins_pb.CascadePluginCommandTemplate',
  'command': 'npx',
  'args': [
    '-y',
    '@toolbox-sdk/server@>=1.1.0',
    '--prebuilt',
    'spanner',
    '--stdio'
  ],
  'env': {
    'SPANNER_DATABASE': '',
    'SPANNER_DIALECT': '',
    'SPANNER_INSTANCE': '',
    'SPANNER_PROJECT': '',
  },
},

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 parámetros de configuración predeterminados y políticas 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.

Usa Model Armor

Model Armor es unGoogle Cloud servicio diseñado para mejorar la seguridad de tus aplicaciones de IA. Funciona analizando de forma proactiva las instrucciones y respuestas del LLM, protegiendo contra diversos riesgos y respaldando las prácticas de IA responsable. Ya sea que implementes IA en tu entorno de nube o en proveedores externos, 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.

Cuando Model Armor está habilitado con el registro habilitado, registra toda la carga útil. Esto podría exponer información sensible en tus registros.

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 consola de Google Cloud , activa Cloud Shell.

    Activa Cloud Shell

    En la parte inferior de la consola de Google Cloud , se inicia una sesión de Cloud Shell que muestra una ventana emergente con una 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 remotos y de Google Cloud Google

Para proteger las llamadas y respuestas de las herramientas de MCP, puedes usar la configuración mínima de Model Armor. Un parámetro de configuración mínimo 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 las herramientas de MCP dentro del proyecto.

Configura un ajuste mínimo de Model Armor con la limpieza de MCP habilitada. Para obtener más información, consulta Configura la configuración mínima de Model Armor.

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 proyecto de Google Cloud .

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 las respuestas que coinciden con los filtros.
  • ENABLED: Es el parámetro de configuración que habilita un filtro o la 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

Para evitar que Model Armor analice automáticamente el tráfico hacia y desde los servidores de MCP de Google según la configuración mínima del proyecto, 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 ID del proyecto Google Cloud . Model Armor no aplica automáticamente las reglas definidas en la configuración mínima de este proyecto al tráfico de ningún servidor de MCP de Google.

La configuración general y de configuración mínima de Model Armor puede afectar a más que solo al MCP. Dado que Model Armor se integra con servicios como Vertex AI, cualquier cambio que realices en la configuración mínima puede afectar el análisis del tráfico y los comportamientos de seguridad en todos los servicios integrados, no solo en el MCP.

Controla el uso del MCP con políticas de IAM de rechazo

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

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

  • La entidad principal
  • Propiedades de la herramienta, como solo lectura
  • 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.

Solucionar problemas

Si deseas encontrar métodos para diagnosticar y resolver errores de la extensión Data Agent Kit para VS Code, consulta Soluciona problemas de la extensión Data Agent Kit para VS Code.

¿Qué sigue?