Google Cloud MCP

官方

与 Google Cloud 服务交互并管理您的云资源。

你可以用 Google Cloud MCP 做什么?

  • 运行 gcloud CLI 命令 — 让您的 AI 通过 run_gcloud_command 执行任何允许的 gcloud 命令,以管理 Google Cloud 资源。
  • 查询 Cloud Observability 数据 — 使用 list_log_entrieslist_time_serieslist_traces 等工具检索日志、指标、跟踪记录和告警策略。
  • 管理 Cloud Storage 存储桶和对象 — 通过 storage-mcp 工具列出、创建、删除、复制、移动、上传或下载对象和存储桶。
  • 检查 Storage Insights — 使用 execute_insights_query 检查洞察配置,并对 Storage Insights 数据集运行 BigQuery 查询。
  • 编排备份和灾难恢复操作 — 使用 backupdr-mcp 工具创建备份存储库和计划、关联资源、列出备份以及触发恢复。

文档

gcloud-mcp Servers CI License

gcloud MCP 服务器 ☁️

gcloud 模型上下文协议 (MCP) 服务器使 AI 助手能够使用 gcloud CLI 轻松与 Google Cloud 环境进行交互。借助 gcloud MCP 服务器,您可以:

  • 使用自然语言与 Google Cloud 交互。 描述您想要的结果,而无需记忆复杂的命令语法、标志和参数。
  • 自动化并简化复杂的工作流程。 将多个云操作链接到一个可重复的命令中,以减少手动操作和出错的可能性。
  • 降低云管理的入门门槛。 让不太熟悉 gcloud 的团队成员能够自信、安全地执行强大的操作。

📡 可用的 MCP 服务器

除了 gcloud MCP 服务器之外,此仓库还托管其他 MCP 服务器。以下是最新列表,以及指向此仓库外托管的其他 Google Cloud MCP 服务器的链接 在此

MCP 服务器名称描述包名称版本
gcloud使用自然语言提示通过 gcloud CLI 与 Google Cloud 交互。gcloud-mcpVersion
observability访问 Google Cloud Observability API 以查询日志、指标和跟踪。observability-mcpVersion
storage与 Google Cloud Storage 交互以进行存储桶和对象管理。storage-mcpVersion
backupdr与 Google Cloud Backup and Disaster Recovery 交互。backupdr-mcpVersion

🚀 入门指南

前提条件

✨ 设置您的 MCP 服务器

Gemini CLI 和 Gemini Code Assist

要将 MCP 服务器与 Gemini CLI 或 Gemini Code Assist 集成,请从您的主目录为表中列出的 MCP 服务器运行以下设置命令。这将为当前用户将 MCP 服务器安装为 Gemini CLI 扩展, 使其可用于您的所有项目。

npx @google-cloud/[PACKAGE_NAME] init --agent=gemini-cli

例如,对于 gcloud-mcp:

npx @google-cloud/gcloud-mcp init --agent=gemini-cli

初始化过程完成后,您可以通过运行以下命令来验证 gcloud-mcp 服务器是否已正确配置:

gemini mcp list

> ✓ gcloud: npx -y @google-cloud/gcloud-mcp (stdio) - Connected

对于其他 AI 客户端

要在此仓库中将 MCP 服务器与其他客户端一起使用,请将以下代码片段添加到每个 MCP 服务器各自的 JSON 配置文件中:

"[SERVER_NAME]": {
  "command": "npx",
  "args": ["-y", "@google-cloud/[PACKAGE_NAME]"]
}

例如,对于 gcloud:

"gcloud": {
  "command": "npx",
  "args": ["-y", "@google-cloud/gcloud-mcp"]
}

流行工具的说明:

  • Claude Desktop: 打开 Claude > 设置 > 开发者 > 编辑配置 并 编辑 claude_desktop_config.json
  • Cline: 点击 MCP 服务器图标,然后点击 配置 MCP 服务器 以编辑 cline_mcp_settings.json
  • Cursor: 为单个项目编辑 .cursor/mcp.json 或为所有项目编辑 ~/.cursor/mcp.json
  • Gemini CLI(手动设置): 如果不使用扩展, 为单个项目编辑 .gemini/settings.json 或为所有项目编辑 ~/.gemini/settings.json

对于 Visual Studio Code,为单个项目编辑工作区中的 .vscode/mcp.json 文件,或为所有项目编辑您的全局用户设置文件:

"servers": {
  "[SERVER_NAME]": {
    "command": "npx",
    "args": ["-y", "@google-cloud/[PACKAGE_NAME]"]
  }
}

例如,对于 gcloud 和 observability:

"servers": {
  "gcloud": {
    "command": "npx",
    "args": ["-y", "@google-cloud/gcloud-mcp"]
  },
  "observability": {
    "command": "npx",
    "args": ["-y", "@google-cloud/observability-mcp"]
  },
}

🛠 本地开发

有关在本地安装仓库的更多信息,请参阅 development.md

🧰 可用的 MCP 工具

MCP 服务器工具描述
gcloudrun_gcloud_command执行 gcloud 命令。部分命令已被限制由代理执行。详情请参阅 MCP 权限
observabilitylist_log_entries列出项目中的日志条目。
list_log_names列出项目中的日志名称。
list_buckets列出项目中的日志存储桶。
list_views列出项目中的日志视图。
list_sinks列出项目中的日志接收器。
list_log_scopes列出项目中的日志范围。
list_metric_descriptors列出项目的指标描述符。
list_time_series列出给定指标的时间序列数据。
list_alert_policies列出项目中的提醒策略。
list_traces在项目中搜索跟踪记录。
get_trace通过 ID 获取项目中的特定跟踪记录。
list_group_stats列出项目的错误组。
storagelist_objects列出 GCS 存储桶中的对象。
read_object_metadata读取特定对象的综合元数据。
read_object_content读取特定对象的内容。
delete_object从存储桶中删除特定对象。
write_object将新对象写入存储桶。
update_object_metadata更新现有对象的自定义元数据。
copy_object将对象从一个存储桶复制到另一个存储桶。
move_object将对象从一个存储桶移动到另一个存储桶。
upload_object将文件上传到 GCS 存储桶。
download_object将对象从 GCS 下载到本地文件。
list_buckets列出项目中的所有存储桶。
create_bucket创建新存储桶。
delete_bucket删除存储桶。
get_bucket_metadata获取特定存储桶的综合元数据。
update_bucket_labels更新存储桶的标签。
get_bucket_location获取存储桶的位置。
view_iam_policy查看存储桶的 IAM 策略。
check_iam_permissions测试存储桶的 IAM 权限。
get_metadata_table_schema检查 GCS 洞察服务是否已启用,并返回给定洞察数据集配置的 BigQuery 表架构。
execute_insights_query对洞察数据集执行 BigQuery SQL 查询并返回结果。
list_insights_configs列出给定项目的所有存储洞察数据集配置的名称。
backupdrlist_backup_vaults列出给定项目和位置中的所有备份保管库。
get_backup_vault获取特定备份保管库的详细信息。
list_backup_plans列出给定项目和位置中的所有备份计划。
get_backup_plan获取特定备份计划的详细信息。
list_backup_plan_associations列出备份计划与资源之间的所有关联。
get_backup_plan_association获取特定备份计划关联的详细信息。
list_datasources列出备份保管库中的所有数据源。
get_datasource获取特定数据源的详细信息。
list_backups列出给定数据源的所有备份。
get_backup获取特定备份的详细信息。
find_protectable_resources发现可受保护的资源(虚拟机、磁盘、SQL)。
get_backupdr_operation检索长时间运行的 BackupDR 操作的状态。
get_csql_operation检索长时间运行的 Cloud SQL 操作的状态。
create_backup_vault在指定位置创建新的备份保管库。
create_backup_plan创建具有定义规则和保留策略的新备份计划。
update_backup_plan修改现有备份计划。
create_backup_plan_association将资源与备份计划关联以启动保护。
restore_backup将备份恢复到目标 Compute Engine 实例或磁盘。
csql_restore将 Cloud SQL 备份恢复到目标实例。
delete_backup_vault删除备份保管库。
delete_backup_plan删除备份计划。
delete_backup_plan_association通过删除关联来移除对资源的保护。

🔑 MCP 权限

gcloud MCP 的权限直接与当前活跃的 gcloud 账号的权限绑定。为了限制权限并遵循最小权限原则,你可以 通过身份模拟以服务账号进行授权,并为该服务账号分配一个 权限受限的角色

默认情况下,gcloud MCP 会阻止执行那些对 AI 代理没有意义的 gcloud 命令。这样做是为了限制那些可以运行任意输入并启动交互式会话的命令。请参阅 此处 了解被拒绝的命令列表。

💫 其他 Google Cloud MCP 服务器

Google Cloud 还提供以下其他服务器:

👥 贡献

我们欢迎贡献!无论是修复错误、分享反馈,还是改进文档,我们都欢迎你的贡献。请阅读我们的 贡献指南 以开始参与。

📄 重要说明

此仓库目前处于预览阶段,可能会发生破坏性变更。此仓库提供的是一个解决方案,而非官方支持的 Google 产品。它不受 Google Cloud 服务条款 的涵盖。 当 MCP 规范、其他 SDK 或其他解决方案和产品发生变化时,它可能会失效。另请参阅我们的 安全政策