run_gcloud_commandLABSCO SUMMARY
One server hands an agent the whole CLI; the other three hand it typed tools. Choose deliberately.
run_gcloud_command is enormously capable and inherits your account's permissions wholesale, which is why the impersonation advice in Google's own documentation matters more here than in most places — plus a config file where you list the command groups you will allow. The observability, storage and backup servers are the opposite shape: named operations with real parameters, which is what you want when an agent is going to run them unattended.
What it is
Google's repository of Cloud MCP servers. The gcloud server executes gcloud CLI commands under your own account, and three focused servers cover observability, storage and backup with typed tools instead of shell commands.
What you get
- Any gcloud command executed from natural language, minus a fixed denylist of commands that make no sense for an agent — run_gcloud_command
- Cloud Logging read properly: log entries, log names, buckets, views, sinks and scopes — list_log_entries, list_log_names, list_buckets, list_views, list_sinks, list_log_scopes
- Cloud Monitoring and error reporting: metric descriptors, time series for a metric, alert policies, and error group statistics — list_metric_descriptors, list_time_series, list_alert_policies, list_group_stats
- Traces searched and fetched by id — list_traces, get_trace
- Cloud Storage objects listed, read as content or metadata, written, uploaded, downloaded, copied, moved and deleted — list_objects, read_object_content, read_object_metadata, write_object, upload_object, download_object, copy_object, move_object, delete_object
- Bucket administration including creation, deletion, labels, location, IAM policy inspection and permission checks — create_bucket, get_bucket_metadata, update_bucket_labels, view_iam_policy, check_iam_permissions
- Storage Insights queried through BigQuery, when the insights service is enabled — get_metadata_table_schema, execute_insights_query, list_insights_configs
- Backup and DR end to end: vaults, plans, plan associations, data sources and backups read and created, protectable resources discovered, long-running operations tracked, and restores driven for Compute Engine and Cloud SQL — list_backup_vaults, create_backup_plan, create_backup_plan_association, find_protectable_resources, restore_backup, csql_restore
- An allowlist or denylist of gcloud command groups supplied as a JSON config file, on top of the built-in denylist that is always enforced
Requirements
Node.js 20 or newer and the gcloud CLI installed and authenticated. Permissions are exactly the active gcloud account's permissions — to narrow them, authorize as a service account through impersonation and give that account a limited role. The gcloud server always enforces a built-in denylist covering commands that run arbitrary input or open interactive sessions, and you can add your own allow or deny list with an absolute path passed as -c or --config. Each server is a separate npm package: gcloud-mcp, observability-mcp, storage-mcp and backupdr-mcp.
Setup effort
One command — npx @google-cloud/gcloud-mcp init --agent=gemini-cli
USE CASES
Doing something in Google Cloud you would normally look up the gcloud syntax for
Describe the operation and let the command be composed and run under your own account.
Investigating an incident in the logs
Find the log name, read the entries around the window, then check the alert policies that should have caught it.
Tracking down a latency spike
Pull the time series for the metric, then open the traces behind the slowest requests.
Getting a file out of, or into, a bucket
List the objects, read the one you want, or upload the replacement — without switching to gsutil.
Checking who can reach a bucket
View the IAM policy and test the specific permissions you care about.
Confirming a resource is actually protected
Find resources that can be protected, check the plan associations, and read the backups that exist.
56 tools
Listed in project docs. Your client may show a different list.
list_log_entrieslist_log_nameslist_bucketslist_viewslist_sinkslist_log_scopeslist_metric_descriptorslist_time_serieslist_alert_policieslist_tracesget_tracelist_group_statslist_objectsread_object_metadataread_object_contentdelete_objectwrite_objectupdate_object_metadatacopy_objectmove_objectupload_objectdownload_objectcreate_bucketdelete_bucketget_bucket_metadataupdate_bucket_labelsget_bucket_locationview_iam_policycheck_iam_permissionsget_metadata_table_schemaexecute_insights_querylist_insights_configslist_backup_vaultsget_backup_vaultlist_backup_plansget_backup_planlist_backup_plan_associationsget_backup_plan_associationlist_datasourcesget_datasourcelist_backupsget_backupfind_protectable_resourcesget_backupdr_operationget_csql_operationcreate_backup_vaultcreate_backup_planupdate_backup_plancreate_backup_plan_associationrestore_backupcsql_restoredelete_backup_vaultdelete_backup_plandelete_backup_plan_associationdelete_backupBEFORE YOU INSTALL
What to know first
Tools you get
56 tools named in the project's documentation.
Requires
npx on PATH
INSTALLATION
Connect your client
Server setup
npx @google-cloud/gcloud-mcp init --agent=gemini-cliMCP Clients
Gemini CLI
Run this from your home directory once per server you want:
npx @google-cloud/gcloud-mcp init --agent=gemini-cli
npx @google-cloud/observability-mcp init --agent=gemini-cli
npx @google-cloud/storage-mcp init --agent=gemini-cli
npx @google-cloud/backupdr-mcp init --agent=gemini-cliClaude Desktop, Cline, Cursor
{
"mcpServers": {
"gcloud": {
"command": "npx",
"args": [
"-y",
"@google-cloud/gcloud-mcp"
]
},
"observability": {
"command": "npx",
"args": [
"-y",
"@google-cloud/observability-mcp"
]
},
"storage": {
"command": "npx",
"args": [
"-y",
"@google-cloud/storage-mcp"
]
},
"backupdr": {
"command": "npx",
"args": [
"-y",
"@google-cloud/backupdr-mcp"
]
}
}
}This adds all four of the project's servers — gcloud, observability, storage and backupdr. Keep only the ones you want.
VS Code
{
"servers": {
"gcloud": {
"command": "npx",
"args": [
"-y",
"@google-cloud/gcloud-mcp"
]
},
"observability": {
"command": "npx",
"args": [
"-y",
"@google-cloud/observability-mcp"
]
},
"storage": {
"command": "npx",
"args": [
"-y",
"@google-cloud/storage-mcp"
]
},
"backupdr": {
"command": "npx",
"args": [
"-y",
"@google-cloud/backupdr-mcp"
]
}
}
}This adds all four of the project's servers — gcloud, observability, storage and backupdr. Keep only the ones you want.