Usa el servidor de MCP remoto de Firestore
En este documento, se muestra cómo usar el servidor remoto del Protocolo de contexto del modelo (MCP) de Firestore para conectarte con aplicaciones de IA, incluidas la CLI de Gemini, ChatGPT, Claude y las aplicaciones personalizadas que desarrolles. El servidor de MCP remoto de Firestore te permite interactuar con los documentos almacenados en una base de datos de Firestore desde tu aplicación de IA. El servidor de MCP remoto de Firestore se habilita cuando habilitas la API de Firestore.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 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.
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.
-
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.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Cloud Firestore API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
Instala Google Cloud CLI.
-
Si usas un proveedor de identidad externo (IdP), primero debes acceder a la gcloud CLI con tu identidad federada.
-
Para inicializar gcloud CLI, ejecuta el siguiente comando:
gcloud init -
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.
-
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.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Cloud Firestore API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
Instala Google Cloud CLI.
-
Si usas un proveedor de identidad externo (IdP), primero debes acceder a la gcloud CLI con tu identidad federada.
-
Para inicializar gcloud CLI, ejecuta el siguiente comando:
gcloud init - Selecciona una base de datos de Firestore en modo nativo para usar o crea una. Solo las bases de datos en modo nativo de la edición Enterprise o Standard admiten el servidor MCP remoto.
Roles obligatorios
Para obtener los permisos que necesitas para usar el servidor de MCP de Firestore y, así, interactuar con documentos de Firestore, 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 de Firestore:
-
Realiza llamadas a la herramienta de MCP:
Usuario de la herramienta de MCP (
roles/mcp.toolUser) -
Leer y editar documentos de Firestore:
Usuario de Firestore (
roles/datastore.user)
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 Firestore y para interactuar con documentos de Firestore. 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 Firestore y para interactuar con los documentos de Firestore:
-
Realiza llamadas a la herramienta de MCP:
mcp.tools.call -
Leer y editar documentos de Firestore:
-
datastore.entities.allocateIds -
datastore.entities.create -
datastore.entities.delete -
datastore.entities.get -
datastore.entities.list -
datastore.entities.update
-
También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.
Autenticación y autorización
El servidor MCP remoto de Firestore 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 los servidores de MCP.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 de MCP de Firestore
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.
Firestore tiene los siguientes permisos de OAuth de la herramienta de MCP:
| URI del alcance para gcloud CLI | Descripción |
|---|---|
https://www.googleapis.com/auth/cloud-platform |
Ver, editar, configurar y borrar tus datos de Google Cloud , 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 Firestore, consulta la API de Firestore.
Configura un cliente de MCP para que use el servidor de MCP de Firestore
Las aplicaciones y los agentes de IA, como Claude o Antigravity, pueden crear instancias 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. Si tu aplicación no aparece en la guía específica para el cliente, puedes usar la siguiente información para conectarte desde la mayoría de las aplicaciones.
En tu aplicación de IA, busca una forma de agregar o conectarte a un servidor de MCP remoto. Para el servidor de MCP de Firestore, ingresa la siguiente información según sea necesario:
- Nombre del servidor: Servidor de MCP de Firestore
- URL del servidor o Extremo: https://firestore.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.
- Alcance de OAuth: Es el alcance de OAuth 2.0 que deseas usar cuando te conectes al servidor de MCP de Firestore.
Para obtener orientación específica de la aplicación sobre cómo configurar y conectarse al servidor de MCP, consulta Orientación específica del cliente.
Para obtener orientación más general, consulta los siguientes recursos:
Usa el servidor de MCP de Firestore con el ADK en Python
Puedes usar el Kit de desarrollo de agentes (ADK) para Python para interactuar con el servidor MCP remoto de Firestore.
En el siguiente ejemplo, se muestra cómo configurar un agente con el servidor de MCP de Firestore y ejecutar una instrucción.
import os
import google.auth
from google.auth.transport.requests import Request
from google.adk import Agent
from google.adk.tools.mcp_tool.mcp_toolset import McpToolset, StreamableHTTPConnectionParams
from google.adk.runners import InMemoryRunner, print_event
from google.genai import types
# Set your project configuration
PROJECT_ID = os.environ.get("PROJECT_ID", "your-project-id")
TARGET_PROJECT_ID = os.environ.get("TARGET_PROJECT_ID", "your-target-project-id")
# Authenticate and get token
credentials, _ = google.auth.default()
credentials.refresh(Request())
# Configure the Firestore remote MCP server
mcp_toolset = McpToolset(
connection_params=StreamableHTTPConnectionParams(
url="https://firestore.googleapis.com/mcp",
headers={
"Accept": "text/event-stream, application/json",
"Content-Type": "application/json",
"Authorization": f"Bearer {credentials.token}"
},
),
)
model_path = f"projects/{PROJECT_ID}/locations/us-central1/publishers/google/models/gemini-2.5-flash"
root_agent = Agent(
name="mcp_codelab_agent",
model=model_path,
instruction="You are a Firestore database assistant. Use the available Firestore MCP tools to query, retrieve, and manage documents in the database based on the user's request.",
tools=[mcp_toolset],
)
if __name__ == "__main__":
prompt = f"Please list all Firestore databases under the project `{TARGET_PROJECT_ID}`"
print("--- Running Agent ---")
runner = InMemoryRunner(agent=root_agent)
runner.auto_create_session = True
events = runner.run(
user_id="user",
session_id="session",
new_message=types.Content(
parts=[types.Part.from_text(text=prompt)]
)
)
for event in events:
print_event(event, verbose=True)
Herramientas disponibles
Para ver los detalles de las herramientas de MCP disponibles y sus descripciones para el servidor de MCP de Firestore, consulta la referencia de MCP de Firestore.
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 Firestore. El método tools/list no requiere autenticación.
POST /mcp HTTP/1.1
Host: firestore.googleapis.com
Content-Type: application/json
{
"jsonrpc": "2.0",
"method": "tools/list",
}
Ejemplos de casos de uso
A continuación, se incluyen ejemplos de casos de uso y mensajes para el servidor de MCP de Firestore:
- "¿Qué herramientas están disponibles para el servidor de MCP de Firestore?"
- "Agrega un documento con la colección "libro" en mi base de datos de Firestore "mi-base-de-datos" con el proyecto Google Cloud "mi-proyecto" con la información del libro generada".
- "Obtén la información del libro con el ID 3VyGFIAPRHUNeuH5h2eb de la colección de libros".
- "Actualiza el campo de año del documento 3VyGFIAPRHUNeuH5h2eb a 1995".
- "Enumera todos los libros de la colección".
- "Enumera todos los IDs de las colecciones en la raíz de la base de datos de Firestore "my-database"".
- "Borra el documento 3VyGFIAPRHUNeuH5h2eb de la colección de libros".
- "Enumera todas las bases de datos del proyecto".
- "Crea una base de datos de Firestore Enterprise con el modo de compatibilidad con MongoDB en nam5".
- Enumera todas las entradas de índice para los usuarios del grupo de colecciones.
Configuraciones opcionales de seguridad
La MCP introduce nuevos riesgos y consideraciones de seguridad debido a la gran 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 de 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, 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 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, Model Armor 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
Habilita 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 siguiente comando 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 mínima de Model Armor. Esta configuración define los filtros de seguridad mínimos que se aplican en todo el proyecto y aplica un conjunto coherente de filtros a todas las llamadas y respuestas de la herramienta 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 los valores mínimos 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 mínima y la configuración general de Model Armor pueden afectar a más que solo el MCP. Debido a 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 de 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 del MCP con Identity and Access Management.
Supervisa el uso del MCP
Puedes supervisar el uso y la latencia de tus herramientas de MCP de Firestore a través de Cloud Monitoring.
Las siguientes métricas están disponibles para el recurso supervisado firestore.googleapis.com/Database:
mcp/request_count(beta): Es el recuento de llamadas a MCP de Firestore.mcp/request_latencies(beta): Es la distribución de latencias para las llamadas de MCP de Firestore.
Puedes agrupar y filtrar estas métricas según las siguientes etiquetas:
tool_name: Es el nombre de la herramienta del MCP que realiza la llamada al MCP.
Para obtener más información sobre las métricas de Firestore, consulta Métricas de Firestore.
¿Qué sigue?
- Lee la documentación de referencia de MCP de Firestore.
- Obtén más información sobre los servidores MCP de Google Cloud.
- Aprende a usar una instrucción de IA para redactar reglas de seguridad