启用与 MCP 兼容的AI代理将应用程序部署到 Cloud Run。
"mcpServers": {
"cloud-run": {
"command": "npx",
"args": ["-y", "@google-cloud/cloud-run-mcp"]
}
}
从 Gemini CLI 和其他由AI驱动的CLI代理进行部署:
<img src="https://raw.githubusercontent.com/GoogleCloudPlatform/cloud-run-mcp/refs/heads/main/.github/images/deploycli.gif" width="800">从由AI驱动的IDE进行部署:
<img src="https://raw.githubusercontent.com/GoogleCloudPlatform/cloud-run-mcp/refs/heads/main/.github/images/deploy_from_ide.gif" width="800">从AI助手应用进行部署:
<img src="https://raw.githubusercontent.com/GoogleCloudPlatform/cloud-run-mcp/refs/heads/main/.github/images/deploy_from_apps.gif" width="800">从代理SDK进行部署,如Google Gen AI SDK或代理开发工具包。
[!NOTE] 这是一个用于将代码部署到 Cloud Run 的 MCP 服务器仓库,要了解如何在 Cloud Run 上托管 MCP 服务器,请访问 Cloud Run 文档。
deploy-file-contents: 通过提供文件内容直接将文件部署到 Cloud Run。
list-services: 列出给定项目和地区中的 Cloud Run 服务。
get-service: 获取特定 Cloud Run 服务的详细信息。
get-service-log: 获取特定 Cloud Run 服务的日志和错误消息。
deploy-local-folder*: 将本地文件夹部署到 Google Cloud Run 服务。
list-projects*: 列出可用的 GCP 项目。
create-project*: 创建一个新的 GCP 项目并将其附加到第一个可用的计费账户。可选地指定一个项目ID。
*仅在本地运行时可用
提示是可用于执行常见任务的自然语言命令。它们是带有预填充参数的工具调用的快捷方式。
deploy: 将当前工作目录部署到 Cloud Run。如果没有提供服务名称,它将使用 DEFAULT_SERVICE_NAME 环境变量,或者当前工作目录的名称。logs: 获取 Cloud Run 服务的日志。如果没有提供服务名称,它将使用 DEFAULT_SERVICE_NAME 环境变量,或者当前工作目录的名称。要将此作为 Gemini CLI 扩展安装,请运行以下命令:
安装扩展:
gemini extensions install https://github.com/GoogleCloudPlatform/cloud-run-mcp
使用以下命令登录到您的 Google Cloud 账户:
gcloud auth login
使用以下命令设置应用凭证:
gcloud auth application-default login
大多数 MCP 客户端需要创建或修改配置文件以添加 MCP 服务器。
不同客户端的配置文件语法可能有所不同。请参阅以下链接获取最新的预期语法:
一旦确定了如何配置您的 MCP 客户端,可以选择以下两种选项之一来设置 MCP 服务器。 我们建议使用 Node.js 设置为本地 MCP 服务器。
使用本地 Google Cloud 凭证在您的本地机器上运行 Cloud Run MCP 服务器。如果您正在使用 AI 辅助的 IDE(例如 Cursor)或桌面 AI 应用程序(例如 Claude),这将是最佳选择。
安装 Google Cloud SDK 并使用您的 Google 账户进行身份验证。
使用以下命令登录到您的 Google Cloud 账户:
gcloud auth login
使用以下命令设置应用凭证:
gcloud auth application-default login
然后使用 Node.js 或 Docker 配置 MCP 服务器:
安装 Node.js(推荐 LTS 版本)。
使用以下内容更新您的 MCP 客户端的 MCP 配置文件:
"cloud-run": {
"command": "npx",
"args": ["-y", "@google-cloud/cloud-run-mcp"]
}
[可选] 添加默认配置
"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"
}
}
查看 Docker 的 MCP 目录,或使用以下手动指令:
安装 Docker
使用以下内容更新您的 MCP 客户端的 MCP 配置文件:
"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"
}
}
[!WARNING] 不要在没有认证的情况下使用远程 MCP 服务器。在以下说明中,我们将使用 IAM 认证来确保从本地机器到 MCP 服务器的连接安全。这一点很重要,可以防止未经授权访问您的 Google Cloud 资源。
在 Cloud Run 上运行 Cloud Run MCP 服务器本身,并通过 IAM 对来自本地机器的连接进行身份验证。 使用此选项,您只能将代码部署到 MCP 服务器运行的同一 Google Cloud 项目中。
安装 Google Cloud SDK 并使用您的 Google 账户进行身份验证。
使用以下命令登录到您的 Google Cloud 账户:
gcloud auth login
使用以下命令设置您的 Google Cloud 项目ID:
gcloud config set project YOUR_PROJECT_ID
将 Cloud Run MCP 服务器部署到 Cloud Run:
gcloud run deploy cloud-run-mcp --image us-docker.pkg.dev/cloudrun/container/mcp --no-allow-unauthenticated
当提示时,选择一个区域,例如 europe-west1。
注意,MCP 服务器不是公开可访问的,它需要通过 IAM 进行身份验证。
[可选] 添加默认配置
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
在本地机器上运行 Cloud Run 代理,以使用您的身份安全连接到在 Cloud Run 上运行的远程 MCP 服务器:
gcloud run services proxy cloud-run-mcp --port=3000 --region=region --project=PROJECT_ID
这将在端口 3000 上创建一个本地代理,该代理将请求转发到远程 MCP 服务器并注入您的身份。
使用以下内容更新您的 MCP 客户端的 MCP 配置文件:
"cloud-run": {
"url": "http://localhost:3000/sse"
}
如果您的 MCP 客户端不支持 url 属性,您可以使用 mcp-remote:
"cloud-run": {
"command": "npx",
"args": ["-y", "mcp-remote", "http://localhost:3000/sse"]
}
Google Cloud Platform 服务条款(可在 https://cloud.google.com/terms/ 获取)和数据处理及安全条款(可在 https://cloud.google.com/terms/data-processing-terms 获取)不适用于 Cloud Run MCP 服务器软件的任何组件。