GCloud MCP服务器
封装Google Cloud CLI的模型上下文协议(MCP)服务器(gcloud)提供LLM可访问的工具来管理GCP资源。
特性
- 67+工具 涵盖12项GCP服务
- 包装本地
gcloud CLI命令 - 结构化数据的JSON输出
- 项目、地区和区域的可配置默认值
支持服务列表
| 服务 | 工具 | 说明 |
|---|
| 云运行 | 10 | 部署和管理容器化服务 |
| 机密管理器 | 12 | 管理机密和版本 |
| IAM | 11 | 服务帐户、角色和策略 |
| 云日志 | 3 | 读写日志 |
| 云存储 | 9 | 管理存储桶和对象 |
| 计算引擎 | 12 | 管理VM实例和磁盘 |
| 云功能 | 6 | 部署和调用无服务器功能 |
| Firestore | 6 | 管理数据库和索引 |
| GKE | 6 | 管理Kubernetes集群 |
| 账单 | 4 | 查看帐户和管理预算 |
| 发布/订阅 | 8 | 管理主题和订阅 |
| 项目 | 7 | 创建、列出和管理GCP项目 |
先决条件
- 谷歌云SDK -从以下位置安装https://cloud.google.com/sdk/docs/install
- 认证 -快跑
gcloud auth login 验证 - 项目 -设置默认项目:
gcloud config set project YOUR_PROJECT_ID
安装
来源
git clone https://github.com/khalideidoo/gcloud-go-mcp.git
cd gcloud-go-mcp
make build
安装到PATH
make install
配置
环境变量
| 变量 | 描述 | 默认值 |
|---|
GCLOUD_PROJECT | 默认GCP项目ID | (来自gcloud配置) |
GCLOUD_REGION | 默认区域 | us-east1 |
GCLOUD_ZONE | 默认区域 | us-east1 |
GCLOUD_PATH | gcloud二进制文件的路径 | gcloud |
GCLOUD_TIMEOUT | 命令超时 | 5m |
Claude桌面配置
添加到您的Claude Desktop配置文件中:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json - 视窗:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"gcloud": {
"command": "/path/to/gcloud-go-mcp",
"env": {
"GCLOUD_PROJECT": "your-default-gcp-project-id",
"GCLOUD_REGION": "your-default-gcp-region",
"GCLOUD_ZONE": "your-default-gcp-zone",
"GCLOUD_PATH": "your-gcloud-cli-path",
"GCLOUD_TIMEOUT": "gcloud-cli-timeout"
}
}
}
}
工具参考
工具命名约定
所有工具都遵循以下模式: gcp_{service}_{resource}_{action}
示例:
gcp_run_services_list -列出云运行服务gcp_run_services_deploy -部署到云端运行gcp_secrets_versions_access -访问秘密版本gcp_compute_instances_create -创建VM实例
云运行工具
| 工具 | 说明 |
|---|
gcp_run_services_list | 列出云运行服务 |
gcp_run_services_describe | 获取服务详细信息 |
gcp_run_services_deploy | 部署容器映像 |
gcp_run_services_delete | 删除服务 |
gcp_run_services_update_traffic | 更新流量分配 |
gcp_run_services_get_iam_policy | 获取IAM策略 |
gcp_run_services_add_iam_policy_binding | 添加IAM绑定 |
gcp_run_revisions_list | 列表修订 |
gcp_run_jobs_list | 列出作业 |
gcp_run_jobs_execute | 执行作业 |
秘密管理器工具
| 工具 | 说明 |
|---|
gcp_secrets_list | 列出秘密 |
gcp_secrets_create | 创建一个秘密 |
gcp_secrets_describe | 获取秘密细节 |
gcp_secrets_delete | 删除机密 |
gcp_secrets_versions_add | 添加版本 |
gcp_secrets_versions_access | 访问版本数据 |
gcp_secrets_versions_list | 列出版本 |
gcp_secrets_versions_disable | 禁用版本 |
gcp_secrets_versions_enable | 启用版本 |
gcp_secrets_versions_destroy | 销毁版本 |
gcp_secrets_get_iam_policy | 获取IAM策略 |
gcp_secrets_add_iam_policy_binding | 添加IAM绑定 |
IAM工具
| 工具 | 说明 |
|---|
gcp_iam_service_accounts_list | 列出服务帐户 |
gcp_iam_service_accounts_create | 创建服务帐户 |
gcp_iam_service_accounts_delete | 删除服务帐户 |
gcp_iam_service_accounts_describe | 获取SA详细信息 |
gcp_iam_service_accounts_keys_list | 列出SA密钥 |
gcp_iam_service_accounts_keys_create | 创建SA密钥 |
gcp_iam_roles_list | 列出角色 |
gcp_iam_roles_describe | 获取角色详细信息 |
gcp_projects_get_iam_policy | 获取项目IAM策略 |
gcp_projects_add_iam_policy_binding | 添加绑定 |
gcp_projects_remove_iam_policy_binding | 删除绑定 |
云存储工具
| 工具 | 说明 |
|---|
gcp_storage_buckets_list | 列出桶 |
gcp_storage_buckets_describe | 获取存储桶详细信息 |
gcp_storage_buckets_create | 创建bucket |
gcp_storage_buckets_delete | 删除存储桶 |
gcp_storage_objects_list | 列出对象 |
gcp_storage_objects_cat | 显示对象内容 |
gcp_storage_objects_copy | 复制对象 |
gcp_storage_objects_delete | 删除对象 |
gcp_storage_objects_signed_url | 生成签名URL |
计算引擎工具
| 工具 | 说明 |
|---|
gcp_compute_instances_list | 列出实例 |
gcp_compute_instances_describe | 获取实例详细信息 |
gcp_compute_instances_create | 创建实例 |
gcp_compute_instances_delete | 删除实例 |
gcp_compute_instances_start | 启动实例 |
gcp_compute_instances_stop | 停止实例 |
gcp_compute_instances_reset | 重置实例 |
gcp_compute_instances_ssh_command | 获取SSH命令 |
gcp_compute_disks_list | 列出磁盘 |
gcp_compute_disks_create | 创建磁盘 |
gcp_compute_disks_snapshot | 创建快照 |
gcp_compute_snapshots_list | 列出快照 |
项目工具
| 工具 | 说明 |
|---|
gcp_projects_list | 列出所有可访问的项目 |
gcp_projects_describe | 获取项目元数据 |
gcp_projects_create | 创建新项目 |
gcp_projects_delete | 删除项目 |
gcp_projects_update | 更新项目名称 |
gcp_projects_undelete | 还原已删除的项目 |
gcp_projects_get_ancestors | 获取项目层次结构 |
使用示例
列出云运行服务
"List my Cloud Run services in us-central1"
部署到云端运行
"Deploy the image gcr.io/my-project/my-app:latest to a Cloud Run service named my-service"
获取秘密
"Get the value of the secret named api-key"
创建VM实例
"Create a VM instance named test-vm in zone us-central1-a with machine type e2-small"
读取日志
"Show me the last 20 error logs from Cloud Run"
发展
构建
make build
运行测试
make test
棉绒
make lint
许可证
MIT许可证