返回市场
谷歌云-MCP

谷歌云-MCP

作者:krzko69 星标更新:2025-11-24

项目介绍

Google Cloud MCP 服务器

这是一个连接到 Google Cloud 服务的 Model Context Protocol 服务器,提供与您的 Google Cloud 资源交互所需的上下文和工具。

<a href="https://glama.ai/mcp/servers/@krzko/google-cloud-mcp"> <img width="380" height="200" src="https://gips2.baidu.com/it/u=455955403,239268574&fm=3081&app=3081&f=PNG?w=760&h=400" alt="Google Cloud Server MCP 服务器" /> </a>

支持的服务

支持的 Google Cloud 服务:

计费

管理和分析 Google Cloud 计费,并提供成本优化建议:

工具: gcp-billing-list-accounts, gcp-billing-get-account-details, gcp-billing-list-projects, gcp-billing-get-project-info, gcp-billing-list-services, gcp-billing-list-skus, gcp-billing-analyse-costs, gcp-billing-detect-anomalies, gcp-billing-cost-recommendations, gcp-billing-service-breakdown

示例提示:

  • "显示我所有的计费账户"
  • "分析项目 my-app-prod-123 在过去30天的成本"
  • "生成计费账户 billingAccounts/123456-789ABC-DEF012 的成本建议"
  • "检查项目 my-ecommerce-456 中的计费异常"

错误报告

监控和分析应用程序错误,并提供自动调查和修复建议:

工具: gcp-error-reporting-list-groups, gcp-error-reporting-get-group-details, gcp-error-reporting-analyse-trends

示例提示:

  • "显示项目 my-webapp-prod-789 在过去一小时内的错误组"
  • "获取错误组 projects/my-app-123/groups/xyz789 的详细信息"
  • "分析服务 my-api 在项目 analytics-prod-456 中的错误趋势"

IAM

查询和分析 IAM 策略和权限:

工具: gcp-iam-get-project-policy, gcp-iam-test-project-permissions, gcp-iam-test-resource-permissions, gcp-iam-validate-deployment-permissions, gcp-iam-list-deployment-services, gcp-iam-analyse-permission-gaps

示例提示:

  • "获取项目 my-webapp-prod-123 的 IAM 策略"
  • "测试我在项目 data-lake-456 上是否有 storage.buckets.create 权限"
  • "检查项目 microservices-789 中 Cloud Run 的部署权限"
  • "分析部署到项目 k8s-prod-321 中 GKE 集群的权限差距"

日志

查询和过滤来自 Google Cloud 日志的日志条目:

工具: gcp-logging-query-logs, gcp-logging-query-time-range, gcp-logging-search-comprehensive

示例提示:

  • "显示项目 my-app-prod-123 在过去一小时内严重性为 ERROR 的日志"
  • "搜索服务 my-api 在项目 backend-456 中包含 'timeout' 的日志"
  • "查询资源类型为 gce_instance 的日志,项目为 compute-prod-789"

Spanner

与 Google Cloud Spanner 数据库交互:

工具: gcp-spanner-execute-query, gcp-spanner-list-tables, gcp-spanner-list-instances, gcp-spanner-list-databases, gcp-spanner-query-natural-language, gcp-spanner-query-count

示例提示:

  • "列出 Spanner 实例 my-instance 在项目 ecommerce-prod-123 中的所有数据库"
  • "执行 SQL: SELECT COUNT(*) FROM users 在数据库 user-db 中,项目为 my-app-456"
  • "显示数据库 inventory-db 中订单表的结构,项目为 retail-789"

监控

检索和分析来自 Google Cloud 监控的指标:

工具: gcp-monitoring-query-metrics, gcp-monitoring-list-metric-types, gcp-monitoring-query-natural-language

示例提示:

  • "显示项目 web-app-prod-123 在过去6小时内的 CPU 利用率指标"
  • "列出 Compute Engine 在项目 infrastructure-456 中可用的指标类型"
  • "查询项目 backend-services-789 中实例的内存使用情况"

分析器

使用 Google Cloud 分析器分析应用程序性能:

工具: gcp-profiler-list-profiles, gcp-profiler-analyse-performance, gcp-profiler-compare-trends

示例提示:

  • "列出项目 my-java-app-123 在过去24小时内的 CPU 分析文件"
  • "分析服务 my-api 在项目 backend-prod-456 中的性能瓶颈"
  • "比较部署 v1.2 和 v1.3 在项目 performance-test-789 中的堆分析文件"

跟踪

分析来自 Google Cloud 跟踪的分布式跟踪:

工具: gcp-trace-get-trace, gcp-trace-list-traces, gcp-trace-find-from-logs, gcp-trace-query-natural-language

示例提示:

  • "获取跟踪 ID abc123def456 在项目 distributed-app-789 中的详细信息"
  • "显示项目 microservices-prod-123 在过去一小时内失败的跟踪"
  • "查找与跟踪 xyz789 相关的日志,项目为 web-backend-456"
  • "查询服务 checkout-api 在项目 ecommerce-prod-321 中的跟踪"

快速开始

配置完成后,您可以使用自然语言与 Google Cloud 服务进行交互:

"我的项目 my-webapp-prod-123 当前的计费是多少?"
"显示项目 ecommerce-api-456 在过去一小时内的错误"
"检查我是否有权限在项目 microservices-789 中部署到 Cloud Run"
"查找项目 backend-prod-321 昨天包含 'database timeout' 的日志"
"列出实例 prod-db 在项目 data-store-654 中的 Spanner 数据库"
"计算引擎实例在项目 infrastructure-987 中的 CPU 使用情况是什么?"

认证

此服务器支持两种与 Google Cloud 进行认证的方法:

  1. 服务账户密钥文件(推荐):设置环境变量 GOOGLE_APPLICATION_CREDENTIALS 为服务账户密钥文件的路径。这是标准的 Google Cloud 认证方法。

  2. 环境变量:直接设置 GOOGLE_CLIENT_EMAILGOOGLE_PRIVATE_KEY 环境变量。这在存储密钥文件不切实际的环境中非常有用。

如果设置了,服务器还将使用 GOOGLE_CLOUD_PROJECT 环境变量来确定项目ID,否则它会尝试从认证凭据中确定项目ID。

安装

# 克隆仓库
git clone https://github.com/krzko/google-cloud-mcp.git
cd google-cloud-mcp

# 安装依赖
pnpm install

# 构建
pnpm build

对 Google Cloud 进行认证:

gcloud auth application-default login

在客户端中配置 mcpServers

{
  "mcpServers": {
      "google-cloud-mcp": {
          "command": "node",
          "args": [
              "/Users/foo/code/google-cloud-mcp/dist/index.js"
          ],
          "env": {
              "GOOGLE_APPLICATION_CREDENTIALS": "/Users/foo/.config/gcloud/application_default_credentials.json"
          }
      }
  }
}

开发

启动服务器

# 构建项目
pnpm build

# 启动服务器
pnpm start

开发模式

# 构建项目
pnpm build

# 启动服务器和调试器
npx -y @modelcontextprotocol/inspector node dist/index.js

故障排除

服务器超时问题

如果您在使用 Smithery 运行服务器时遇到超时问题,请尝试以下操作:

  1. 通过在配置中设置 debug: true 启用调试日志记录
  2. 确保 lazyAuth: true 设置为延迟认证直到实际需要
  3. 确保凭证文件可访问且有效
  4. 检查日志中的任何错误消息

重要:尽管认证仍然需要,但启用懒加载后,服务器将在初始化时立即启动并在需要时进行认证,而不是在初始化时进行认证。

认证问题

服务器支持两种认证方法:

  1. 服务账户密钥文件:设置环境变量 GOOGLE_APPLICATION_CREDENTIALS 为服务账户密钥文件的路径
  2. 环境变量:设置 GOOGLE_CLIENT_EMAILGOOGLE_PRIVATE_KEY 环境变量

如果您遇到认证问题,请确保:

  • 您的服务账户具有必要的权限
  • 密钥文件格式正确且可访问
  • 环境变量设置正确