En este documento, se muestra cómo usar el servidor remoto del Protocolo de contexto del modelo (MCP) de Spanner para conectarse con aplicaciones basadas en IA, como Gemini CLI, ChatGPT, Claude y las aplicaciones personalizadas que desarrolles. El servidor de MCP de Spanner te permite acceder a las herramientas de Spanner y ejecutarlas para crear, administrar y consultar recursos de Spanner desde tus entornos de desarrollo habilitados para IA y plataformas de agentes de IA. .
El servidor de MCP remoto de Spanner se habilita cuando habilitas la API de Spanner.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 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.
Para obtener información sobre el servidor de MCP local de Spanner, consulta Spanner MCP server on GitHub.
Servidores de MCP remotos y de Google Cloud Google
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 gobernanza disponibles para los servidores de MCP de Google Cloud, consulta la descripción general de los servidores de MCP de Google Cloud.
Antes de comenzar
- Accede a tu cuenta de Google Cloud . 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.
-
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 theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
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 theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Habilita la API de Spanner.
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 permisoserviceusage.services.enable. Obtén más información para otorgar roles.Para los proyectos nuevos, la API de Spanner se habilita automáticamente.
Roles obligatorios
Para obtener los permisos que necesitas para usar el servidor de MCP de Spanner, pídele a tu administrador que te otorgue los siguientes roles de IAM en el proyecto en el que quieres usar el servidor de MCP de Spanner:
-
Realiza llamadas a la herramienta de MCP:
Usuario de la herramienta de MCP (
roles/mcp.toolUser) -
Usar herramientas de MCP de Spanner:
Administrador de Cloud Spanner (
roles/spanner.admin)
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 Spanner. 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 Spanner:
-
Realiza llamadas a la herramienta de MCP:
mcp.tools.call -
Usa las herramientas de MCP de Spanner:
-
spanner.instances.create -
spanner.instances.get -
spanner.databases.create -
spanner.databases.update -
spanner.sessions.create -
spanner.instanceOperations.get -
spanner.databases.getDdl -
spanner.databases.select -
spanner.databases.write
-
También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.
Autenticación y autorización
Los servidores de MCP de Spanner usan 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 los servidores de MCP.
El servidor MCP remoto de Spanner no acepta claves de API.
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 Cómo autenticarse en los servidores de MCP.
Permisos de OAuth del MCP de Spanner
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.
Spanner tiene los siguientes permisos de OAuth de la herramienta de MCP:
| URI del alcance para gcloud CLI | Descripción |
|---|---|
https://www.googleapis.com/auth/spanner.admin |
Permite acceder a la administración de tus instancias y bases de datos de Spanner. |
https://www.googleapis.com/auth/spanner.data |
Permite acceder a los datos de una base de datos de Spanner para verlos y administrarlos. |
Para obtener más información sobre estos permisos, consulta la API de Spanner.
Configura un cliente de MCP para que use el servidor de MCP de Spanner
Las aplicaciones y los agentes de IA, como Gemini CLI o Claude, pueden crear una instancia de un cliente de MCP que se conecte 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 debe conocer, como mínimo, 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 pedirá que ingreses detalles sobre el servidor, como su nombre y URL.
Para el servidor de MCP de Spanner, ingresa lo siguiente según sea necesario:
- Nombre del servidor: Servidor de MCP de Spanner
- URL del servidor o Extremo:
https://spanner.googleapis.com/mcp - Transporte: HTTP
- Detalles de autenticación: Según cómo desees autenticarte, puedes ingresar tus Google Cloud credenciales, tu ID y secreto de cliente de OAuth, o bien la identidad y las credenciales de un agente. Para obtener más información sobre la autenticación, consulta Cómo autenticarse en los servidores de MCP.
- Permiso de OAuth: Es el permiso de OAuth 2.0 que deseas usar cuando te conectes al servidor de MCP de Spanner.
Para obtener orientación específica sobre el host, consulta lo siguiente:
Para obtener orientación más general, 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 Spanner, consulta la referencia de MCP de Spanner.
Herramientas de lista
Usa el inspector de MCP para enumerar herramientas o envía una solicitud HTTP tools/list directamente al servidor de MCP remoto de Spanner. El método tools/list no requiere autenticación.
POST /mcp HTTP/1.1
Host: spanner.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 para el servidor de MCP de Spanner.
Desarrollo de aplicaciones con Spanner
Un desarrollador de aplicaciones puede usar el servidor de MCP de Spanner para aprovisionar recursos, crear bases de datos y propagar datos de muestra.
Ejemplo de instrucción: Crea una instancia regional de Spanner en el proyecto PROJECT_ID con la configuración de instancia regional us-central1. Crea una base de datos para hacer un seguimiento del inventario y propaga 5 productos de muestra.
Reemplaza PROJECT_ID por el ID del proyecto de Google Cloud .
Flujo de trabajo:
El flujo de trabajo para desarrollar una aplicación podría verse de la siguiente manera:
El agente llama a la herramienta
create_instancepara aprovisionar una nueva instancia de Spanner con la configuración de instancia especificada. El agente puede invocar la herramientaget_operationpara verificar si la instancia está lista para usarse.El agente llama a la herramienta
create_databasepara crear una base de datos nueva con el esquema requerido. El agente puede llamar a la herramientaget_operationpara verificar el estado de la operación de creación de la base de datos.El agente puede usar una combinación de las herramientas
create_session,execute_sqlycommitpara insertar datos de muestra.De manera opcional, el agente puede llamar a la herramienta
execute_sqlpara consultar y validar la creación de datos de muestra.
Estadísticas operativas y administración de la configuración de la base de datos
Los administradores de Spanner pueden usar el servidor MCP de Spanner para recopilar información sobre las instancias y bases de datos de Spanner con herramientas como list_instances, get_instance, list_databases y get_database_ddl.
Ejemplos de instrucciones:
- Enumera todas las instancias de Spanner en el proyecto actual.
- Enumera todas las bases de datos en la instancia actual de Spanner.
- Muestra el esquema de la base de datos de Spanner actual.
Configuraciones opcionales de seguridad
La 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 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.
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 de los LLM, lo que brinda protección contra diversos riesgos y respalda 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.
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 poder usar las APIs de Model Armor, debes habilitarlas.
Console
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 permisoserviceusage.services.enable. Obtén más información para otorgar roles.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:
En la consola de Google Cloud , 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.
-
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
LOCATIONpor 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 tu herramienta de MCP, puedes usar la configuración de Model Armor Floor. 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 valor 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
Si deseas dejar de analizar el tráfico de Google MCP 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 ID del proyecto Google Cloud .
Model Armor no analizará el tráfico de MCP en el proyecto.
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 herramientas, 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.
¿Qué sigue?
- Lee la documentación de referencia de MCP de Spanner.
- Obtén más información sobre los servidores de MCP de Google Cloud.