README
🚀 Google Cloud MCP 服务器
Google Cloud MCP 服务器是一个基于模型上下文协议(Model Context Protocol)的服务器,它能连接到 Google Cloud 服务,为您提供上下文和工具,方便您与 Google Cloud 资源进行交互。
🚀 快速开始
安装
# 克隆仓库
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"
}
}
}
}
✨ 主要特性
支持的服务
已支持的服务
- [x] Google Cloud Logging
- [x] Google Cloud Monitoring
- [x] Google Cloud Spanner
正在开发中的服务
- [ ] Google Cloud Trace
- [ ] Google IAM
- [ ] Google Cloud Compute
- [ ] Google Cloud Run
- [ ] Google Cloud Storage
各服务具体功能
Google Cloud Logging
可对来自 Google Cloud Logging 的日志条目进行查询和过滤:
- 使用自定义过滤器查询日志
- 在特定时间范围内搜索日志
- 以易读的格式显示日志条目
Google Cloud Spanner
能与 Google Cloud Spanner 数据库进行交互:
- 对 Spanner 数据库执行 SQL 查询
- 列出可用的数据库和表
- 探索数据库模式
Google Cloud Monitoring
可检索并分析来自 Google Cloud Monitoring 的度量数据:
- 使用自定义过滤器查询度量
- 随时间可视化度量数据
- 列出可用的度量类型
Google Cloud Trace
可分析来自 Google Cloud Trace 的分布式跟踪:
- 通过 ID 获取跟踪
- 列出带有筛选选项的最近跟踪
- 查找与日志关联的跟踪
- 确定失败的跟踪
- 使用自然语言查询跟踪(例如,“显示过去一小时中的失败跟踪”)
🔧 认证
此服务器支持两种与 Google Cloud 进行认证的方法:
- 服务账户密钥文件(推荐):将
GOOGLE_APPLICATION_CREDENTIALS环境变量设置为您的服务账户密钥文件的路径。这是 Google Cloud 的标准认证方法。 - 环境变量:直接设置
GOOGLE_CLIENT_EMAIL和GOOGLE_PRIVATE_KEY环境变量。这对于在无法存储密钥文件的环境中很有用。
服务器还将使用 GOOGLE_CLOUD_PROJECT 环境变量(如果已设置),否则将尝试从认证凭证中确定项目 ID。
💻 使用示例
开发
启动服务器
# 构建项目
pnpm build
# 启动服务器
pnpm start
开发模式
# 构建项目
pnpm build
# 启动服务器和检查工具
npx -y @modelcontextprotocol/inspector node dist/index.js
与 Smithery 使用(即将推出)
此服务器可以与 Smithery 部署并使用。服务器实现了认证的惰性加载,这意味着它会立即启动并将认证推迟到实际需要时。认证仍然需要进行操作,但惰性加载允许服务器在初始化期间不会超时。
⚠️ 重要提示
Smithery 本地服务器支持目前仍在开发中,可能尚未可用。
🛠️ 故障排除
服务器超时问题
如果您在使用 Smithery 运行服务器时遇到超时问题,请尝试以下步骤:
- 启用调试日志记录,设置
debug: true在您的配置中 - 确保
lazyAuth: true设置以推迟认证直到实际需要 - 确保您的凭证文件可访问且格式正确
- 检查日志中的任何错误消息
⚠️ 重要提示
认证仍然是操作所需的,但启用惰性加载后,服务器会立即启动并在需要时进行认证,而不是在初始化期间。
认证问题
该服务器支持两种认证方法:
- 服务账户密钥文件:将
GOOGLE_APPLICATION_CREDENTIALS环境变量设置为您的服务账户密钥文件的路径 - 环境变量:将
GOOGLE_CLIENT_EMAIL和GOOGLE_PRIVATE_KEY环境变量正确设置
如果遇到认证问题,请确保:
- 您的服务账户具有必要的权限
- 密钥文件格式正确且可访问
- 环境变量已正确设置
微信扫一扫