Google Cloud MCP
oficialInteractúa con los servicios de Google Cloud y gestiona tus recursos en la nube.
¿Qué puedes hacer con Google Cloud MCP?
- Ejecutar comandos de gcloud CLI — Solicita a tu IA que ejecute cualquier comando
gcloudpermitido medianterun_gcloud_commandpara administrar recursos de Google Cloud. - Consultar datos de Cloud Observability — Recupera registros, métricas, trazas y políticas de alertas usando herramientas como
list_log_entries,list_time_seriesylist_traces. - Administrar buckets y objetos de Cloud Storage — Lista, crea, elimina, copia, mueve, sube o descarga objetos y buckets con las herramientas de
storage-mcp. - Inspeccionar Storage Insights — Revisa configuraciones de insights y ejecuta consultas de BigQuery en conjuntos de datos de Storage Insights con
execute_insights_query. - Orquestar operaciones de Backup y DR — Crea vaults y planes de respaldo, asocia recursos, lista respaldos y activa restauraciones usando las herramientas de
backupdr-mcp.
Documentación
Servidor MCP de gcloud ☁️
El servidor gcloud Model Context Protocol (MCP) permite a los asistentes de IA interactuar fácilmente con el entorno de Google Cloud usando la CLI de gcloud. Con el servidor MCP de gcloud puedes:
- Interactuar con Google Cloud usando lenguaje natural. Describe el resultado que deseas en lugar de memorizar sintaxis compleja de comandos, flags y argumentos.
- Automatizar y simplificar flujos de trabajo complejos. Encadena múltiples operaciones en la nube en un solo comando repetible para reducir el esfuerzo manual y la posibilidad de errores.
- Reducir la barrera de entrada para la gestión en la nube. Capacita a los miembros del equipo menos familiarizados con gcloud para realizar acciones potentes con confianza y seguridad.
📡 Servidores MCP disponibles
Este repositorio también aloja otros servidores MCP además del servidor MCP de gcloud. A continuación se muestra una lista actualizada, y los enlaces a otros servidores MCP de Google Cloud alojados fuera de este repositorio están aquí.
🚀 Primeros pasos
Requisitos previos
- Node.js: versión 20 o superior
- CLI de gcloud
✨ Configura tu servidor MCP
Gemini CLI y Gemini Code Assist
Para integrar servidores MCP con Gemini CLI o Gemini Code Assist, ejecuta el comando de configuración a continuación desde tu directorio home para el servidor MCP listado en la tabla. Esto instalará el servidor MCP como una extensión de Gemini CLI para el usuario actual, haciéndolo disponible para todos tus proyectos.
npx @google-cloud/[PACKAGE_NAME] init --agent=gemini-cli
Por ejemplo, para gcloud-mcp:
npx @google-cloud/gcloud-mcp init --agent=gemini-cli
Después del proceso de inicialización, puedes verificar que el servidor gcloud-mcp está configurado correctamente ejecutando el siguiente comando:
gemini mcp list
> ✓ gcloud: npx -y @google-cloud/gcloud-mcp (stdio) - Connected
Para otros clientes de IA
Para usar los servidores MCP de este repositorio con otros clientes, añade el siguiente fragmento a sus respectivos archivos de configuración JSON para cada servidor MCP:
"[SERVER_NAME]": {
"command": "npx",
"args": ["-y", "@google-cloud/[PACKAGE_NAME]"]
}
Por ejemplo, para gcloud:
"gcloud": {
"command": "npx",
"args": ["-y", "@google-cloud/gcloud-mcp"]
}
Instrucciones para herramientas populares:
- Claude Desktop: Abre Claude > Settings > Developer > Edit Config y
edita
claude_desktop_config.json. - Cline: Haz clic en el icono de MCP Servers, luego en Configure MCP Servers para editar
cline_mcp_settings.json. - Cursor: Edita
.cursor/mcp.jsonpara un solo proyecto o~/.cursor/mcp.jsonpara todos los proyectos. - Gemini CLI (Configuración Manual): Si no usas extensiones,
edita
.gemini/settings.jsonpara un solo proyecto o~/.gemini/settings.jsonpara todos los proyectos.
Para Visual Studio Code edita el archivo .vscode/mcp.json en tu espacio de trabajo
para un solo proyecto o tu archivo de configuración global de usuario para todos los proyectos:
"servers": {
"[SERVER_NAME]": {
"command": "npx",
"args": ["-y", "@google-cloud/[PACKAGE_NAME]"]
}
}
Por ejemplo, para gcloud y observability:
"servers": {
"gcloud": {
"command": "npx",
"args": ["-y", "@google-cloud/gcloud-mcp"]
},
"observability": {
"command": "npx",
"args": ["-y", "@google-cloud/observability-mcp"]
},
}
🛠 Desarrollo local
Para más información sobre cómo instalar el repositorio localmente, consulta development.md
🧰 Herramientas MCP disponibles
| Servidor MCP | Herramienta | Descripción |
|---|---|---|
| gcloud | run_gcloud_command | Ejecuta un comando de gcloud. Algunos comandos han sido restringidos para su ejecución por el agente. Consulte Permisos MCP para más información. |
| observability | list_log_entries | Lista las entradas de registro de un proyecto. |
list_log_names | Lista los nombres de registros de un proyecto. | |
list_buckets | Lista los buckets de registros de un proyecto. | |
list_views | Lista las vistas de registro de un proyecto. | |
list_sinks | Lista los sumideros de registros de un proyecto. | |
list_log_scopes | Lista los ámbitos de registro de un proyecto. | |
list_metric_descriptors | Lista los descriptores de métricas de un proyecto. | |
list_time_series | Lista los datos de series temporales para una métrica determinada. | |
list_alert_policies | Lista las políticas de alertas de un proyecto. | |
list_traces | Busca trazas en un proyecto. | |
get_trace | Obtiene una traza específica por su ID en un proyecto. | |
list_group_stats | Lista los grupos de errores de un proyecto. | |
| storage | list_objects | Lista los objetos en un bucket de GCS. |
read_object_metadata | Lee los metadatos completos de un objeto específico. | |
read_object_content | Lee el contenido de un objeto específico. | |
delete_object | Elimina un objeto específico de un bucket. | |
write_object | Escribe un nuevo objeto en un bucket. | |
update_object_metadata | Actualiza los metadatos personalizados de un objeto existente. | |
copy_object | Copia un objeto de un bucket a otro. | |
move_object | Mueve un objeto de un bucket a otro. | |
upload_object | Sube un archivo a un bucket de GCS. | |
download_object | Descarga un objeto de GCS a un archivo local. | |
list_buckets | Lista todos los buckets de un proyecto. | |
create_bucket | Crea un nuevo bucket. | |
delete_bucket | Elimina un bucket. | |
get_bucket_metadata | Obtiene los metadatos completos de un bucket específico. | |
update_bucket_labels | Actualiza las etiquetas de un bucket. | |
get_bucket_location | Obtiene la ubicación de un bucket. | |
view_iam_policy | Visualiza la política de IAM de un bucket. | |
check_iam_permissions | Prueba los permisos de IAM para un bucket. | |
get_metadata_table_schema | Verifica si el servicio de insights de GCS está habilitado y devuelve el esquema de la tabla de BigQuery para una configuración de conjunto de datos de insights determinada. | |
execute_insights_query | Ejecuta una consulta SQL de BigQuery en un conjunto de datos de insights y devuelve el resultado. | |
list_insights_configs | Lista los nombres de todas las configuraciones de conjuntos de datos de Storage Insights para un proyecto determinado. | |
| backupdr | list_backup_vaults | Lista todas las bóvedas de respaldo en un proyecto y ubicación determinados. |
get_backup_vault | Obtiene los detalles de una bóveda de respaldo específica. | |
list_backup_plans | Lista todos los planes de respaldo en un proyecto y ubicación determinados. | |
get_backup_plan | Obtiene los detalles de un plan de respaldo específico. | |
list_backup_plan_associations | Lista todas las asociaciones entre planes de respaldo y recursos. | |
get_backup_plan_association | Obtiene los detalles de una asociación de plan de respaldo específica. | |
list_datasources | Lista todas las fuentes de datos dentro de una bóveda de respaldo. | |
get_datasource | Obtiene los detalles de una fuente de datos específica. | |
list_backups | Lista todos los respaldos de una fuente de datos determinada. | |
get_backup | Obtiene los detalles de un respaldo específico. | |
find_protectable_resources | Descubre recursos (VM, discos, SQL) que pueden protegerse. | |
get_backupdr_operation | Recupera el estado de una operación de BackupDR de larga duración. | |
get_csql_operation | Recupera el estado de una operación de Cloud SQL de larga duración. | |
create_backup_vault | Crea una nueva bóveda de respaldo en una ubicación especificada. | |
create_backup_plan | Crea un nuevo plan de respaldo con reglas y retención definidas. | |
update_backup_plan | Modifica un plan de respaldo existente. | |
create_backup_plan_association | Asocia un recurso con un plan de respaldo para iniciar la protección. | |
restore_backup | Restaura un respaldo a una instancia o disco de Compute Engine de destino. | |
csql_restore | Restaura un respaldo de Cloud SQL a una instancia de destino. | |
delete_backup_vault | Elimina una bóveda de respaldo. | |
delete_backup_plan | Elimina un plan de respaldo. | |
delete_backup_plan_association | Elimina la protección de un recurso eliminando su asociación. | |
delete_backup | Elimina una copia de seguridad específica de una bóveda. |
🔑 Permisos de MCP
Los permisos del MCP de gcloud están directamente vinculados a los permisos de la cuenta de gcloud activa. Para restringir los permisos y operar con el principio de privilegio mínimo, puedes autorizar como una cuenta de servicio mediante suplantación y asignar a la cuenta de servicio un rol con permisos limitados.
De forma predeterminada, el MCP de gcloud impide la ejecución de comandos de gcloud que no tienen sentido para agentes de IA. Esto se hace para restringir comandos que pueden ejecutar entradas arbitrarias e iniciar sesiones interactivas. Consulta aquí la lista de comandos denegados.
💫 Otros servidores MCP de Google Cloud
Google Cloud ofrece estos otros servidores:
- Firebase MCP
- Google Analytics MCP
- Google Cloud Genmedia MCP
- Google Cloud Run MCP
- Google Kubernetes Engine (GKE) MCP
- Google Security Operations and Threat Intelligence MCP
- MCP Toolbox for Databases
👥 Contribuciones
¡Aceptamos contribuciones! Ya sea que corrijas errores, compartas comentarios o mejores la documentación, tus contribuciones son bienvenidas. Lee nuestra Guía de contribución para comenzar.
📄 Notas importantes
Este repositorio se encuentra actualmente en versión preliminar y puede experimentar cambios importantes. Este repositorio proporciona una solución, no un producto oficialmente respaldado por Google. No está cubierto por los Términos del Servicio de Google Cloud. Podría dejar de funcionar cuando cambie la especificación MCP, otros SDKs, u otras soluciones y productos. Consulta también nuestra Política de seguridad.