Google Cloud MCP
Interact with Google Cloud services and manage your cloud resources.
gcloud MCP Server ☁️
The gcloud Model Context Protocol (MCP) server enables AI assistants to easily interact with the Google Cloud environment using the gcloud CLI. With the gcloud MCP server you can:
- Interact with Google Cloud using natural language. Describe the outcome you want instead of memorizing complex command syntax, flags, and arguments.
- Automate and simplify complex workflows. Chain multiple cloud operations into a single, repeatable command to reduce manual effort and the chance of error.
- Lower the barrier to entry for cloud management. Empower team members who are less familiar with gcloud to perform powerful actions confidently and safely.
📡 Available MCP Servers
This repository also hosts other MCP servers in addition to the gcloud MCP server. An up to date list is below, and links to other Google Cloud MCP servers hosted outside of this repo are here.
🚀 Getting Started
Prerequisites
- Node.js: version 20 or higher
- gcloud CLI
✨ Set up your MCP server
Gemini CLI and Gemini Code Assist
To integrate MCP servers with Gemini CLI or Gemini Code Assist, run the setup command below from your home directory for MCP server listed in the table. This will install the MCP server as a Gemini CLI extension. for the current user, making it available for all your projects.
npx @google-cloud/[PACKAGE_NAME] init --agent=gemini-cli
For example, for the gcloud-mcp:
npx @google-cloud/gcloud-mcp init --agent=gemini-cli
After the initialization process, you can verify that the gcloud-mcp server is configured correctly by running the following command:
gemini mcp list
> ✓ gcloud: npx -y @google-cloud/gcloud-mcp (stdio) - Connected
For other AI clients
To use MCP servers in this repo with other clients, add the following snippet to their respective JSON configuration files for each MCP server:
"[SERVER_NAME]": {
"command": "npx",
"args": ["-y", "@google-cloud/[PACKAGE_NAME]"]
}
For example, for gcloud:
"gcloud": {
"command": "npx",
"args": ["-y", "@google-cloud/gcloud-mcp"]
}
Instructions for popular tools:
- Claude Desktop: Open Claude > Settings > Developer > Edit Config and
edit
claude_desktop_config.json. - Cline: Click the MCP Servers icon, then Configure MCP Servers to edit
cline_mcp_settings.json. - Cursor: Edit
.cursor/mcp.jsonfor a single project or~/.cursor/mcp.jsonfor all projects. - Gemini CLI (Manual Setup): If not using extensions,
edit
.gemini/settings.jsonfor a single project or~/.gemini/settings.jsonfor all projects.
For Visual Studio Code edit the .vscode/mcp.json file in your workspace
for a single project or your global user settings file for all projects:
"servers": {
"[SERVER_NAME]": {
"command": "npx",
"args": ["-y", "@google-cloud/[PACKAGE_NAME]"]
}
}
For example, for gcloud and observability:
"servers": {
"gcloud": {
"command": "npx",
"args": ["-y", "@google-cloud/gcloud-mcp"]
},
"observability": {
"command": "npx",
"args": ["-y", "@google-cloud/observability-mcp"]
},
}
🛠 Local Development
For more information regarding installing the repository locally, please see development.md
🧰 Available MCP Tools
| MCP Server | Tool | Description |
|---|---|---|
| gcloud | run_gcloud_command | Executes a gcloud command. Some commands have been restricted from execution by the agent. See MCP Permissions for more information. |
| observability | list_log_entries | Lists log entries from a project. |
list_log_names | Lists log names from a project. | |
list_buckets | Lists log buckets from a project. | |
list_views | Lists log views from a project. | |
list_sinks | Lists log sinks from a project. | |
list_log_scopes | Lists log scopes from a project. | |
list_metric_descriptors | Lists metric descriptors for a project. | |
list_time_series | Lists time series data for a given metric. | |
list_alert_policies | Lists the alert policies in a project. | |
list_traces | Searches for traces in a project. | |
get_trace | Gets a specific trace by id in a project. | |
list_group_stats | Lists the error groups for a project. | |
| storage | list_objects | Lists objects in a GCS bucket. |
read_object_metadata | Reads comprehensive metadata for a specific object. | |
read_object_content | Reads the content of a specific object. | |
delete_object | Deletes a specific object from a bucket. | |
write_object | Writes a new object to a bucket. | |
update_object_metadata | Updates the custom metadata of an existing object. | |
copy_object | Copies an object from one bucket to another. | |
move_object | Moves an object from one bucket to another. | |
upload_object | Uploads a file to a GCS bucket. | |
download_object | Downloads an object from GCS to a local file. | |
list_buckets | Lists all buckets in a project. | |
create_bucket | Creates a new bucket. | |
delete_bucket | Deletes a bucket. | |
get_bucket_metadata | Gets comprehensive metadata for a specific bucket. | |
update_bucket_labels | Updates labels for a bucket. | |
get_bucket_location | Gets the location of a bucket. | |
view_iam_policy | Views the IAM policy for a bucket. | |
check_iam_permissions | Tests IAM permissions for a bucket. |
🔑 MCP Permissions
The permissions of the gcloud MCP are directly tied to the permissions of the active gcloud account. To restrict permissions and operate with the principle of least privilege, you can authorize as a service account using impersonation and assign the service account a role with limited permissions.
By default, the gcloud MCP prevents execution of gcloud commands that don't make sense for AI agents. This is done to restrict commands that can run arbitrary inputs and initiate interactive sessions. See here for the list of denied commands.
💫 Other Google Cloud MCP Servers
Google Cloud offers these other servers:
- 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
👥 Contributing
We welcome contributions! Whether you're fixing bugs, sharing feedback, or improving documentation, your contributions are welcome. Please read our Contributing Guide to get started.
📄 Important Notes
This repository is currently in preview and may see breaking changes. This repository provides a solution, not an officially supported Google product. It is not covered under Google Cloud Terms of Service. It may break when the MCP specification, other SDKs, or when other solutions and products change. See also our Security Policy.
Related Servers
China Weather
Query weather information and meteorological warnings for Chinese cities using the QWeather API.
Snowflake Cortex AI
A server for Snowflake providing tools for its Cortex AI features, including Search, Analyst, and Complete.
Honeycomb MCP
Interact with Honeycomb observability data, including datasets, SLOs, and triggers.
Strava MCP Server
A server that connects to the Strava API, allowing language models to access Strava data and features.
Shopify MCP Server
Interact with Shopify store data using the GraphQL API.
CoSense
An MCP server for interacting with the CoSense collaborative sensemaking platform, supporting public and private projects.
Nacos MCP Router
A MCP server for Nacos that provides search, installation, and proxy functionalities. Connects to a Nacos server via environment variables.
Brex
Interact with the Brex API to manage financial data and resources.
fal-ai/minimax/image-01
Advanced text-to-image generation model using the fal.ai API. Requires a FAL_KEY environment variable.
KYC Verification
A server for comprehensive KYC verification using the SurePass API, supporting document verification, OCR, and face verification.