Deploys applications and files to Google Cloud Run and lists services, projects, and service logs.
Also known as GoogleCloudPlatform/cloud-run-mcp, @google-cloud/cloud-run-mcp
- Stars
- 639
- Tools
- 7
- Downloads, 30 days
- —
- Latest version
- —
- Last commit
- Nov 12, 2026
- License
- Apache-2.0
What is Cloud Run MCP?
Cloud Run deploys applications and files to Google Cloud Run and lists services, projects, and service logs. It exposes 7 tools, such as deploy-file-contents, list-services, get-service.
Summary generated from the project's README
About Cloud Run MCP server
Deploying applications and managing cloud services through AI agents is what this server enables for developers using Google Cloud Platform. It allows users to interact with Cloud Run via MCP-compatible clients like Claude Desktop, Cursor, or Windsurf. By connecting to your Google Cloud account using the Google Cloud SDK, you can use natural language to manage your infrastructure.
The server provides specific tools for various tasks, such as deploying file contents with deploy-file-contents or managing local directories with deploy-local-folder. It also includes capabilities to list services, retrieve specific service details, and fetch logs or error messages through get-service-log. For those working locally, it can even list available projects or create new ones.
You can run this as a local server using Node.js or Docker, or host it remotely on Cloud Run itself. Remote setups require IAM authentication or OAuth 2.0 to ensure secure access to your cloud resources. Configuration is handled through environment variables like GOOGLE_CLOUD_PROJECT and GOOGLE_CLOUD_REGION to define your default deployment targets.
Written from the project's README. Every use case is checked against a quote from it.
How to install Cloud Run MCP
Formats verified 10 Nov 2026Install Cloud Run MCP in Claude Code
$ claude mcp add cloud-run-mcp -- npx -y @google-cloud/cloud-run-mcpInstall Cloud Run MCP in Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"cloud-run-mcp": {
"command": "npx",
"args": [
"-y",
"@google-cloud/cloud-run-mcp"
]
}
}
}Install Cloud Run MCP in VS Code
.vscode/mcp.json
{
"servers": {
"cloud-run-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@google-cloud/cloud-run-mcp"
]
}
}
}Install Cloud Run MCP in Claude Desktop
claude_desktop_config.json
{
"mcpServers": {
"cloud-run-mcp": {
"command": "npx",
"args": [
"-y",
"@google-cloud/cloud-run-mcp"
]
}
}
}Install Cloud Run MCP in Codex
~/.codex/config.toml
[mcp_servers.cloud-run-mcp] command = "npx" args = ["-y", "@google-cloud/cloud-run-mcp"]
Install Cloud Run MCP in Gemini CLI
~/.gemini/settings.json
{
"mcpServers": {
"cloud-run-mcp": {
"command": "npx",
"args": [
"-y",
"@google-cloud/cloud-run-mcp"
]
}
}
}Cloud Run MCP tools 7
Detected from the READMEdeploy-file-contentslist-servicesget-serviceget-service-logdeploy-locallistcreate
| deploy-file-contents | — | |
| list-services | — | |
| get-service | — | |
| get-service-log | — | |
| deploy-local | — | |
| list | — | |
| create | — |
Configuration
DEFAULT_SERVICE_NAMEGOOGLE_APPLICATION_CREDENTIALSGOOGLE_CLOUD_PROJECTGOOGLE_CLOUD_REGION
| Name | Description | |
|---|---|---|
| DEFAULT_SERVICE_NAME | — | |
| GOOGLE_APPLICATION_CREDENTIALS | — | |
| GOOGLE_CLOUD_PROJECT | — | |
| GOOGLE_CLOUD_REGION | — |
Automated checks
Ran Nov 12, 2026Full report →Passed our automated checks. That is not a security audit: read the code and give the server the narrowest access it needs. How checks work
- Source repository linked and reachablePass
- Open source license (OSI)Pass
- Commit or release in the last yearPass
- Package name not close to a popular packagePass
- Remote endpoint uses HTTPSNot checked
- Destructive tools are labelledPass
- No hidden instructions to the modelPass
- No critical advisory in the package or its dependenciesNot checked
README
View on GitHubCloud Run MCP server and Gemini CLI extension
Enable MCP-compatible AI agents to deploy apps to Cloud Run.
"mcpServers":{
"cloud-run": {
"command": "npx",
"args": ["-y", "@google-cloud/cloud-run-mcp"]
}
}
Deploy from Gemini CLI and other AI-powered CLI agents:
Deploy from AI-powered IDEs:
Deploy from AI assistant apps:
Deploy from agent SDKs, like the Google Gen AI SDK or Agent Development Kit.
[!NOTE]
This is the repository of an MCP server to deploy code to Cloud Run, to learn how to host MCP servers on Cloud Run, visit the Cloud Run documentation.
Tools
-
deploy-file-contents: Deploys files to Cloud Run by providing their contents directly. -
list-services: Lists Cloud Run services in a given project and region. -
get-service: Gets details for a specific Cloud Run service. -
get-service-log: Gets Logs and Error Messages for a specific Cloud Run service. -
deploy-local-folder*: Deploys a local folder to a Google Cloud Run service. -
list-projects*: Lists available GCP projects. -
create-project*: Creates a new GCP project and attach it to the first available billing account. A project ID can be optionally specified.
* only available when running locally
Prompts
Prompts are natural language commands that can be used to perform common tasks. They are shortcuts for executing tool calls with pre-filled arguments.
deploy: Deploys the current working directory to Cloud Run. If a service name is not provided, it will use theDEFAULT_SERVICE_NAMEenvironment variable, or the name of the current working directory.logs: Gets the logs for a Cloud Run service. If a service name is not provided, it will use theDEFAULT_SERVICE_NAMEenvironment variable, or the name of the current working directory.
Environment Variables
The Cloud Run MCP server can be configured using the following environment variables:
| Variable | Description |
|---|---|
GOOGLE_CLOUD_PROJECT |
The default project ID to use for Cloud Run services. |
GOOGLE_CLOUD_REGION |
The default region to use for Cloud Run services. |
DEFAULT_SERVICE_NAME |
The default service name to use for Cloud Run services. |
SKIP_IAM_CHECK |
Controls whether to check for IAM permissions for a Cloud Run service. Set to false to enable checks. This is true by default which is a recommended way to make the service public. |
ENABLE_HOST_VALIDATION |
Prevents DNS Rebinding attacks by validating the Host header. This is disabled by default. |
ALLOWED_HOSTS |
Comma-separated list of allowed Host headers (if host validation is enabled). The default value is localhost,127.0.0.1,::1. |
OAUTH_ENABLED |
Enables OAuth 2.0 Bearer token verification for incoming HTTP/SSE requests when set to true. Disabled by default. |
GOOGLE_OAUTH_AUDIENCE |
Expected OAuth 2.0 token audience (typically your OAuth Client ID). Required when OAUTH_ENABLED=true. |
Use as a Gemini CLI extension
To install this as a Gemini CLI extension, run the following command:
-
Install the extension:
gemini extensions install https://github.com/GoogleCloudPlatform/cloud-run-mcp -
Log in to your Google Cloud account using the command:
gcloud auth login -
Set up application credentials using the command:
gcloud auth application-default login
Use in MCP Clients
Learn how to configure your MCP client
Most MCP clients require a configuration file to be created or modified to add the MCP server.
The configuration file syntax can be different across clients. Please refer to the following links for the latest expected syntax:
Once you have identified how to configure your MCP client, select one of these two options to set up the MCP server. We recommend setting up as a local MCP server using Node.js.
Set up as local MCP server
Run the Cloud Run MCP server on your local machine using local Google Cloud credentials. This is best if you are using an AI-assisted IDE (e.g. Cursor) or a desktop AI application (e.g. Claude).
-
Install the Google Cloud SDK and authenticate with your Google account.
-
Log in to your Google Cloud account using the command:
gcloud auth login -
Set up application credentials using the command:
gcloud auth application-default login
Then configure the MCP server using either Node.js or Docker:
Using Node.js
-
Install Node.js (LTS version recommended).
-
Update the MCP configuration file of your MCP client with the following:
"cloud-run": { "command": "npx", "args": ["-y", "@google-cloud/cloud-run-mcp"] } -
[Optional] Add default configurations
"cloud-run": { "command": "npx", "args": ["-y", "@google-cloud/cloud-run-mcp"], "env": { "GOOGLE_CLOUD_PROJECT": "PROJECT_NAME", "GOOGLE_CLOUD_REGION": "PROJECT_REGION", "DEFAULT_SERVICE_NAME": "SERVICE_NAME" } }
Using Docker
See Docker's MCP catalog, or use these manual instructions:
-
Install Docker
-
Update the MCP configuration file of your MCP client with the following:
"cloud-run": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "GOOGLE_APPLICATION_CREDENTIALS", "-v", "/local-directory:/local-directory", "mcp/cloud-run-mcp:latest" ], "env": { "GOOGLE_APPLICATION_CREDENTIALS": "/Users/slim/.config/gcloud/application_default-credentials.json", "DEFAULT_SERVICE_NAME": "SERVICE_NAME" } }
Set up as remote MCP server
[!WARNING]
Do not use the remote MCP server without authentication. In the following instructions, we will use IAM authentication to secure the connection to the MCP server from your local machine. This is important to prevent unauthorized access to your Google Cloud resources.
Run the Cloud Run MCP server itself on Cloud Run with connection from your local machine authenticated via IAM. With this option, you will only be able to deploy code to the same Google Cloud project as where the MCP server is running.
-
Install the Google Cloud SDK and authenticate with your Google account.
-
Log in to your Google Cloud account using the command:
gcloud auth login -
Set your Google Cloud project ID using the command:
gcloud config set project YOUR_PROJECT_ID -
Deploy the Cloud Run MCP server to Cloud Run:
gcloud run deploy cloud-run-mcp --image us-docker.pkg.dev/cloudrun/container/mcp --no-allow-unauthenticatedWhen prompted, pick a region, for example
europe-west1.Note that the MCP server is not publicly accessible, it requires authentication via IAM.
-
[Optional] Add default configurations
gcloud run services update cloud-run-mcp --region=REGION --update-env-vars GOOGLE_CLOUD_PROJECT=PROJECT_NAME,GOOGLE_CLOUD_REGION=PROJECT_REGION,DEFAULT_SERVICE_NAME=SERVICE_NAME,SKIP_IAM_CHECK=false -
Run a Cloud Run proxy on your local machine to connect securely using your identity to the remote MCP server running on Cloud Run:
gcloud run services proxy cloud-run-mcp --port=3000 --region=REGION --project=PROJECT_IDThis will create a local proxy on port 3000 that forwards requests to the remote MCP server and injects your identity.
-
Update the MCP configuration file of your MCP client with the following:
"cloud-run": { "url": "http://localhost:3000/sse" }If your MCP client does not support the
urlattribute, you can use mcp-remote:"cloud-run": { "command": "npx", "args": ["-y", "mcp-remote", "http://localhost:3000/sse"] }
Using MCP Server with OAuth
Cloud Run MCP server supports OAuth as an authentication mechanism. In order to use OAuth, create the OAuth client, and configure a .env file with the appropriate values pertaining to your OAuth client. A .env.example is provided for reference.
The Cloud Run MCP server works seamlessly with Google Cloud SDK OAuth client. In order to leverage the Google Cloud SDK OAuth client, you can use the .env.gcloud-sdk-oauth file as your .env file as follows:
cp .env.gcloud-sdk-oauth .env
node mcp-server.js
Configure MCP Server on Gemini CLI to use OAuth
When the Cloud Run MCP server is started in the OAuth mode, the MCP client should also be configured to use OAuth. You can setup the MCP server in OAuth mode in the Gemini CLI by using the following JSON in the ~/.gemini/settings.json file:
{
"mcpServers": {
"cloud-run": {
"httpUrl": "http://localhost:3000/mcp",
"oauth": {
"enabled": true,
"clientId": "<OAUTH_CLIENT_ID>",
"clientSecret": "<OAUTH_CLIENT_SECRET>"
}
}
}
}
Post the configuration changes as shown above, start the Gemini CLI. You should authenticate the Cloud Run MCP server using the following prompt in the Gemini CLI:
/mcp auth cloud-run
This will take you to the authentication page on your browser, wherein you need to sign in using the appropriate gmail id, and accept the terms and conditions. Once the authentication is succcessful, you can come back to the Gemini CLI, and the Cloud Run MCP server will be ready to use.
The Google Cloud Platform Terms of Service (available at https://cloud.google.com/terms/) and the Data Processing and Security Terms (available at https://cloud.google.com/terms/data-processing-terms) do not apply to any component of the Cloud Run MCP Server software.
Cloud Run Skills
We introduce Cloud Run skills to enable AI agents to perform actions on Cloud Run. You can use these skills with Gemini CLI and other agentic AI tools. The skills are available at Cloud Run Skills.
The Cloud Run skills are based on top of gcloud cli for Cloud Run empowering agents to perform all the actions on the Cloud Run using gcloud, as can be performed by the GCP user using gcloud cli.
In order to use Cloud Run skills:
- Ensure you have the
gcloudCLI installed and authenticated withgcloud auth loginandgcloud auth application-default login. - Set your project with
gcloud config set project [PROJECT_ID]. - Enable the skills on your agentic AI tool. For example, you can enable the skills for Gemini CLI using the following command on your terminal:
gemini skills install https://github.com/GoogleCloudPlatform/cloud-run-mcp.git --path skills/cloud-run
- Once the skills are enabled, you can use them to perform actions on Cloud Run. Here are some of the prompts for you to get started:
-
List the Cloud Run services in the project test-gcp-project in the region us-west1.
-
Deploy the folder /home/username/workspace/hello-world as Cloud Run service hello-world to the project test-gcp-project in the region us-west1.
-
Describe the Cloud Run job hello-job in the project test-gcp-project in the region europe-west1.
Cloud Run MCP questions
How do I add Cloud Run MCP to Claude Code?
Run claude mcp add cloud-run-mcp -- npx -y @google-cloud/cloud-run-mcp in your terminal. Add --scope user to make it available in every project.
How do I add Cloud Run MCP to Cursor?
Open ~/.cursor/mcp.json and add the server under mcpServers, using the Cursor config shown in the install section above.
What tools does Cloud Run MCP provide?
It exposes 7 tools, including deploy-file-contents, list-services, get-service, get-service-log, deploy-local.
What can the Cloud Run MCP server do?
It lets AI agents deploy files or local folders to Cloud Run, list and inspect services, fetch service logs, and manage GCP projects when run locally.
How do I install the Cloud Run MCP server with Node.js?
Add it to your MCP client config with the npx command and the @google-cloud/cloud-run-mcp package.
Does the Cloud Run MCP server support OAuth?
Yes, OAuth 2.0 Bearer token verification can be enabled for incoming HTTP/SSE requests.
Which tools are only available when running locally?
deploy-local-folder, list-projects, and create-project are only available when the server runs locally.
How do I authenticate before using the server?
Log in with gcloud auth login and set up application default credentials.