GCP MCP Server
通过标准化的 MCP 接口,AI 助手可以与 Google Cloud Platform 资源进行交互和管理,包括 Compute Engine、Cloud Run、Storage、BigQuery 以及其他 GCP 服务。
README
这不是一个现成的 MCP 服务器
GCP MCP 服务器
一个全面的模型上下文协议 (MCP) 服务器实现,用于 Google Cloud Platform (GCP) 服务,使 AI 助手能够通过标准化接口与 GCP 资源交互和管理。
概述
GCP MCP 服务器为 AI 助手提供以下能力:
- 查询 GCP 资源: 获取有关您的云基础设施的信息
- 管理云资源: 创建、配置和管理 GCP 服务
- 获得帮助: 获取 AI 指导的 GCP 配置和最佳实践帮助
该实现遵循 MCP 规范,使 AI 系统能够以安全、受控的方式与 GCP 服务交互。
支持的 GCP 服务
此实现包括对以下 GCP 服务的支持:
- Artifact Registry: 容器和软件包管理
- BigQuery: 数据仓库和分析
- Cloud Audit Logs: 日志记录和审计跟踪分析
- Cloud Build: CI/CD 管道管理
- Cloud Compute Engine: 虚拟机实例
- Cloud Monitoring: 指标、警报和仪表板
- Cloud Run: 无服务器容器部署
- Cloud Storage: 对象存储管理
架构
该项目的结构如下:
gcp-mcp-server/
├── core/ # 核心 MCP 服务器功能:身份验证上下文、日志处理、安全性
├── prompts/ # 用于 GCP 操作的 AI 助手提示
├── services/ # GCP 服务实现
│ ├── README.md # 服务实现细节
│ └── ... # 单个服务模块
├── main.py # 主服务器入口点
└── ...
关键组件:
- 服务模块: 每个 GCP 服务都有自己的模块,包含资源、工具和提示
- 客户端实例: 用于身份验证和资源访问的集中式客户端管理
- 核心组件: MCP 服务器实现的基本功能
快速入门
前提条件
- Python 3.10+
- 启用了您要使用的服务的 API 的 GCP 项目
- 已通过身份验证的 GCP 凭据(建议使用应用程序默认凭据)
安装
-
克隆存储库:
git clone https://github.com/yourusername/gcp-mcp-server.git cd gcp-mcp-server -
设置虚拟环境:
python -m venv venv source venv/bin/activate # 在 Windows 上:venv\Scripts\activate -
安装依赖项:
pip install -r requirements.txt -
配置您的 GCP 凭据:
# 使用 gcloud gcloud auth application-default login # 或者设置 GOOGLE_APPLICATION_CREDENTIALS export GOOGLE_APPLICATION_CREDENTIALS="/path/to/service-account-key.json" -
设置环境变量:
cp .env.example .env # 使用您的配置编辑 .env
运行服务器
启动 MCP 服务器:
python main.py
用于开发和测试:
# 具有自动重载的开发模式
python main.py --dev
# 使用特定配置运行
python main.py --config config.yaml
Docker 部署
使用 Docker 构建和运行:
# 构建镜像
docker build -t gcp-mcp-server .
# 运行容器
docker run -p 8080:8080 -v ~/.config/gcloud:/root/.config/gcloud gcp-mcp-server
配置
可以通过环境变量或配置文件配置服务器:
| 环境变量 | 描述 | 默认值 |
|---|---|---|
GCP_PROJECT_ID |
默认 GCP 项目 ID | None (必需) |
GCP_DEFAULT_LOCATION |
默认区域/区域 | us-central1 |
MCP_SERVER_PORT |
服务器端口 | 8080 |
LOG_LEVEL |
日志级别 | INFO |
有关完整的配置选项列表,请参见 .env.example。
开发
添加新的 GCP 服务
- 在
services/目录中创建一个新文件 - 按照现有服务中的模式实现该服务
- 在
main.py中注册该服务
有关详细的实现指南,请参见 services README。
安全注意事项
- 服务器使用应用程序默认凭据进行身份验证
- 授权由已验证身份的权限确定
- 服务实现中没有硬编码的凭据
- 考虑使用具有适当权限的服务帐户运行
贡献
欢迎贡献! 请随时提交 Pull Request。
- Fork 存储库
- 创建您的功能分支 (
git checkout -b feature/amazing-feature) - 提交您的更改 (
git commit -m 'Add some amazing feature') - 推送到分支 (
git push origin feature/amazing-feature) - 打开一个 Pull Request
许可证
该项目已获得 MIT 许可证的许可 - 有关详细信息,请参见 LICENSE 文件。
致谢
- Google Cloud Platform 团队提供的全面 API
- 模型上下文协议,用于为 AI 提供与服务交互的标准化方式
使用服务器
要使用此服务器:
- 将您的 GCP 服务帐户密钥文件作为
service-account.json放在同一目录中 - 安装 MCP 包:
pip install "mcp[cli]" - 安装所需的 GCP 包:
pip install google-cloud-run - 运行:
mcp dev gcp_cloudrun_server.py
或者将其安装在 Claude Desktop 中:
mcp install gcp_cloudrun_server.py --name "GCP Cloud Run Manager"
MCP 服务器配置
可以将以下配置添加到 GCP Cloud Tools 的配置文件中:
"mcpServers": {
"GCP Cloud Tools": {
"command": "uv",
"args": [
"run",
"--with",
"google-cloud-artifact-registry>=1.10.0",
"--with",
"google-cloud-bigquery>=3.27.0",
"--with",
"google-cloud-build>=3.0.0",
"--with",
"google-cloud-compute>=1.0.0",
"--with",
"google-cloud-logging>=3.5.0",
"--with",
"google-cloud-monitoring>=2.0.0",
"--with",
"google-cloud-run>=0.9.0",
"--with",
"google-cloud-storage>=2.10.0",
"--with",
"mcp[cli]",
"--with",
"python-dotenv>=1.0.0",
"mcp",
"run",
"C:\\Users\\enes_\\Desktop\\mcp-repo-final\\gcp-mcp\\src\\gcp-mcp-server\\main.py"
],
"env": {
"GOOGLE_APPLICATION_CREDENTIALS": "C:/Users/enes_/Desktop/mcp-repo-final/gcp-mcp/service-account.json",
"GCP_PROJECT_ID": "gcp-mcp-cloud-project",
"GCP_LOCATION": "us-east1"
}
}
}
配置详情
此配置使用以下设置设置 Google Cloud Platform 工具的 MCP 服务器:
- 命令: 使用
uv包管理器运行服务器 - 依赖项: 包括各种 Google Cloud 库(Artifact Registry、BigQuery、Cloud Build 等)
- 环境变量:
GOOGLE_APPLICATION_CREDENTIALS: 指向您的 GCP 服务帐户凭据的路径GCP_PROJECT_ID: 您的 Google Cloud 项目 IDGCP_LOCATION: GCP 区域 (us-east1)
用法
将此配置添加到您的 MCP 配置文件以启用 GCP Cloud Tools 功能。
推荐服务器
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。
mcp-server-qdrant
这个仓库展示了如何为向量搜索引擎 Qdrant 创建一个 MCP (Managed Control Plane) 服务器的示例。
AIO-MCP Server
🚀 集成了 AI 搜索、RAG 和多服务(GitLab/Jira/Confluence/YouTube)的一体化 MCP 服务器,旨在增强 AI 驱动的开发工作流程。来自 Folk。
Knowledge Graph Memory Server
为 Claude 实现持久性记忆,使用本地知识图谱,允许 AI 记住用户的信息,并可在自定义位置存储,跨对话保持记忆。
Hyperbrowser
欢迎来到 Hyperbrowser,人工智能的互联网。Hyperbrowser 是下一代平台,旨在增强人工智能代理的能力,并实现轻松、可扩展的浏览器自动化。它专为人工智能开发者打造,消除了本地基础设施和性能瓶颈带来的麻烦,让您能够:
https://github.com/Streen9/react-mcp
react-mcp 与 Claude Desktop 集成,能够根据用户提示创建和修改 React 应用程序。
MCP Atlassian
适用于 Atlassian Cloud 产品(Confluence 和 Jira)的 Model Context Protocol (MCP) 服务器。此集成专为 Atlassian Cloud 实例设计,不支持 Atlassian Server 或 Data Center 部署。