项目简介
该GitHub仓库提供了两个Model Context Protocol (MCP) 服务器实现:
- gcloud MCP 服务器: 允许AI助手通过自然语言与Google Cloud CLI进行交互,执行各种云操作。
- Observability MCP 服务器: 允许AI助手访问Google Cloud的可观测性API,查询日志、指标、追踪和错误报告数据。
这些服务器的核心目标是简化AI助手与Google Cloud环境的集成,让用户可以通过对话式界面管理云资源和监控应用。
主要功能点
- 自然语言交互: 无需记忆复杂的命令行语法、标志和参数,通过日常语言描述您希望实现的结果,AI助手即可代您执行操作。
- 自动化工作流: 将多个云操作串联成一个单一、可重复的命令,减少手动操作和潜在错误,提高效率。
- 降低管理门槛: 赋能不熟悉gcloud命令的团队成员,使其能够自信、安全地执行强大的云操作。
- 可观测性数据访问: 通过专门的工具访问Google Cloud的日志、指标、追踪和错误报告,帮助AI助手诊断问题和理解系统行为。
安装步骤
在开始使用前,请确保您的系统满足以下先决条件:
- Node.js: 版本20或更高。
- gcloud CLI: 已安装并配置好,以便gcloud MCP服务器能够调用Google Cloud命令行工具。
安装和初始化MCP服务器:
- 对于Gemini CLI 或 Gemini Code Assist (推荐):
在您的主目录中运行以下命令来安装MCP服务器作为Gemini CLI扩展(请将 '[PACKAGE_NAME]' 替换为 'gcloud-mcp' 或 'observability-mcp'):
例如,安装 'gcloud-mcp' 服务器:npx @google-cloud/[PACKAGE_NAME] init --agent=gemini-cli
安装后,您可以通过运行 'gemini mcp list' 命令来验证服务器是否已正确配置并连接。npx @google-cloud/gcloud-mcp init --agent=gemini-cli
服务器配置
MCP服务器通过JSON-RPC协议与客户端通信。您的AI客户端(如Claude Desktop, Cline, Cursor, Gemini CLI等)需要配置MCP服务器的启动信息。通常,这涉及在客户端的配置文件中添加一个JSON片段,指定服务器的名称、启动命令及其参数。
-
服务器启动命令示例:
- gcloud 服务器: 启动命令是 'npx',参数是 '-y' 和 '@google-cloud/gcloud-mcp'。这意味着MCP客户端会运行 'npx -y @google-cloud/gcloud-mcp' 来启动该服务器。
- Observability 服务器: 启动命令是 'npx',参数是 '-y' 和 '@google-cloud/observability-mcp'。这意味着MCP客户端会运行 'npx -y @google-cloud/observability-mcp' 来启动该服务器。
-
配置信息说明:
- '[SERVER_NAME]': 您在AI客户端中为该MCP服务器指定的名称,例如 "gcloud" 或 "observability"。
- 'command': 启动MCP服务器的可执行文件路径或命令,通常是 "npx"。
- 'args': 传递给启动命令的参数列表,用于指定要运行的MCP包。
请根据您使用的AI客户端的具体文档,将上述概念应用于其MCP服务器配置界面或配置文件中。
基本使用方法
一旦MCP服务器成功配置并连接到您的AI客户端,您就可以开始通过AI助手与Google Cloud进行交互:
- 自然语言查询: 在您的AI客户端中,像与人类交流一样,提出您对Google Cloud的操作或查询需求。例如:
- “列出我的所有Compute Engine虚拟机实例。”
- “帮我创建一个名为'my-new-bucket'的Cloud Storage存储桶。”
- “查找过去一小时内项目'my-project'中所有严重性为'ERROR'的日志条目。”
- “显示我的'my-service'应用的CPU使用率指标。”
- AI助手执行: AI助手会理解您的请求,并调用相应的MCP服务器(gcloud或observability)及其内置工具来执行操作或获取数据。
- 获取结果: AI助手会将工具执行的结果以易于理解的方式呈现给您。
可用工具 (部分示例)
- gcloud 服务器:
- 'run_gcloud_command': 执行任意gcloud命令行命令(部分敏感命令受限制)。
- Observability 服务器:
- 'list_log_entries': 列出项目的日志条目。
- 'list_metric_descriptors': 列出项目的指标描述符。
- 'list_time_series': 列出给定指标的时间序列数据。
- 'list_traces': 搜索项目的追踪数据。
- 'get_trace': 根据ID获取特定追踪的详细信息。
- 'list_alert_policies': 列出项目的警报策略。
- 'list_group_stats': 列出项目的错误分组统计信息。
信息
分类
AI与计算