El servidor de MCP de Cloud CLI proporciona herramientas para ejecutar comandos de Cloud CLI en un entorno de zona de pruebas remoto.
Un servidor del Protocolo de contexto del modelo (MCP) actúa como proxy entre un servicio externo que proporciona contexto, datos o capacidades a un modelo de lenguaje grande (LLM) o una aplicación de IA. Los servidores de MCP conectan las aplicaciones de IA a sistemas externos, como bases de datos y servicios web, y traducen sus respuestas a un formato que la aplicación de IA pueda comprender.
Configuración del servidor
Antes de usar los servidores de MCP, debes habilitarlos y configurar la autenticación. Para obtener más información sobre el uso de los servidores de MCP remotos de Google y Google Cloud, consulta la Descripción general de los servidores de MCP de Google Cloud.
Extremos del servidor
Un extremo de servicio de MCP es la dirección de red y la interfaz de comunicación (por lo general, una URL) del servidor de MCP que usa una aplicación de IA (el host para el cliente de MCP) para establecer una conexión segura y estandarizada. Es el punto de contacto para que el LLM solicite contexto, llame a una herramienta o acceda a un recurso. Los extremos de MCP de Google pueden ser globales o regionales.
El servidor MCP de la API de Cloud CLI Execution tiene el siguiente extremo de MCP global:
- https://cloudcli.googleapis.com/mcp
Herramientas de MCP
Una herramienta de MCP es una función o capacidad ejecutable que un servidor de MCP expone a un LLM o a una aplicación de IA para realizar una acción en el mundo real.
Herramientas
El servidor de MCP de cloudcli.googleapis.com tiene las siguientes herramientas:
| Herramientas de MCP | |
|---|---|
run_gcloud_command |
Ejecuta un solo comando de gcloud CLI dentro del proyecto de Google Cloud del usuario. ADVERTENCIA DE SEGURIDAD CRÍTICA (POTENCIALMENTE DESTRUCTIVA): Esta herramienta puede crear, actualizar o borrar recursos de GCP (p.ej., gcloud compute instances delete). NO se limita a los comandos de solo lectura. Ten mucho cuidado. COMANDOS PROHIBIDOS: Un agente NO DEBE ejecutar los siguientes comandos de gcloud (incluidas sus variantes alfa o beta):
Ejemplos de comandos o patrones de gcloud:
De forma predeterminada, las cadenas de respuesta se formatean para la salida de la terminal (stdout o stderr). Usa la marca --format para cambiar el formato. |
run_bq_command |
Ejecuta un solo comando de la CLI de BigQuery (bq). Esta herramienta te permite ejecutar cualquier comando de bq en el proyecto del usuario, incluidos los comandos que crean, actualizan o borran recursos de GCP (es decir, mutaciones). ADVERTENCIA DE SEGURIDAD CRÍTICA (POTENCIALMENTE DESTRUCTIVA): Esta herramienta puede crear, actualizar o borrar recursos de BigQuery (p.ej., bq rm, bq cancel, bq query). NO se limita a los comandos de solo lectura. Ten mucho cuidado. COMANDOS PROHIBIDOS: Un agente NO DEBE ejecutar los siguientes comandos de bq:
Entre los ejemplos de comandos de bq que realizan mutaciones, se incluyen los siguientes: bq mk, bq rm, bq update, bq insert, bq query (sin --dry_run), etcétera. Uso: RunBq(command="bq query --project_id=PROJECT_ID 'SELECT 1'", project="projects/PROJECT_ID", input_files=[{"path": "PATH", "contents": "CONTENTS"}]) DEBES proporcionar el comando de bq completo como una sola cadena en el parámetro "command". DEBES proporcionar el parámetro "project" (formato: projects/PROJECT_ID) como el proyecto de ejecución de la API para la facturación, la habilitación de la API y las verificaciones de consumo de cuota. Ejemplos de comandos o patrones de bq:
|
Obtén las especificaciones de la herramienta de MCP
Para obtener las especificaciones de las herramientas de MCP para todas las herramientas en un servidor de MCP, usa el método tools/list. En el siguiente ejemplo, se muestra cómo usar curl para enumerar todas las herramientas y sus especificaciones disponibles actualmente en el servidor de MCP.
| Solicitud de Curl |
|---|
curl --location 'https://cloudcli.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/list", "jsonrpc": "2.0", "id": 1 }' |