关于 CloudScope MCP
CloudScope MCP 为使用 Azure 或 GCP 的团队提供只读云成本分析。其工具和引导式提示词涵盖支出、预算、异常、预测、闲置资源及优化建议。
主要功能
- 01按服务、标签或资源拆分成本
- 02比较支出时段并检测异常
- 03检查预算并预测成本
- 04查找闲置和未标记资源
- 05获取成本优化建议
- 06生成引导式成本报告
适用场景
- 01回顾每月云支出及变化
- 02调查近期成本激增
- 03查找闲置资源和潜在节省
- 04按标签准备成本分摊报告
MCP 相关
它向 MCP 客户端提供云成本分析与监控工具及引导式报告提示词。支持 Azure 和 GCP,访问权限为只读。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
npx -y cloudscope-mcpAZURE_SUBSCRIPTION_IDAzure subscription ID to query for cost data. Optional; auto-detected from az login session if not set.AZURE_TENANT_IDAzure tenant ID for service principal authentication. Optional; falls back to DefaultAzureCredential (e.g. az login) if unset.AZURE_CLIENT_IDService principal client ID. Optional; required only when using ClientSecretCredential.AZURE_CLIENT_SECRET密钥Service principal client secret. Optional; required only when using ClientSecretCredential.GOOGLE_CLOUD_PROJECTGCP project ID. Recommended to set explicitly in the MCP client env block — may not be inherited from gcloud shell configuration.GCP_BILLING_TABLEFully-qualified BigQuery billing export table (project.dataset.table_name). Required for GCP cost queries.GCP_PROJECT_IDOverride GCP project ID if the billing dataset lives in a different project than GOOGLE_CLOUD_PROJECT.GCP_BILLING_ACCOUNT_IDGCP billing account ID (format: XXXXXX-XXXXXX-XXXXXX). Optional; needed only for budget monitoring.GOOGLE_APPLICATION_CREDENTIALS密钥Path to GCP service account JSON key file. Optional; falls back to Application Default Credentials (gcloud auth).本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
15收录的工具列表 · 更新于 3 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| provider | enum | 否 | 要查询的云服务提供商(azure 或 gcp)azure | gcp |
| start_date | string | 否 | 开始日期(YYYY-MM-DD)。默认为当月第一天。 |
| end_date | string | 否 | 结束日期(YYYY-MM-DD)。默认为今天。 |
| group_by | enum | 否 | 成本分组方式:service、resource_group、tag 或 regionservice | resource_group | tag | region |
详细介绍
CloudScope MCP
向 AI 询问你的云账单。
你将获得什么
只需询问一次:“给我本月的成本审查”——CloudScope 就会运行完整工作流(支出、变化、异常、闲置资源、预算、预测),并返回可直接用于决策的报告,而非需要你自行解读的原始数字:
TL;DR
Azure 本月至今的支出为 $4,312(5 月 1 日至 29 日),较 4 月 增长 11%。 主要变化来自 App Service(+$280)——一个新的暂存槽位一直在运行。 2 个闲置资源每月花费 $94;
prod-budget已使用 78%,还剩 2 天。 首要行动:删除孤立的托管磁盘 → 每月节省 $63。本月支出
服务 成本 % Virtual Machines $2,140 49.6% App Service $890 20.6% Storage $612 14.2% Redis Cache $410 9.5% Networking $260 6.0% 与上月相比
总体 +$427(+11%)。App Service 的 +$280 是主要原因;其他项目 均持平。→ 新增的
staging-slot-2于 5 月 12 日创建,之后一直未拆除。闲置和浪费的资源
资源 类型 $/月 orphaned-osdisk-01托管磁盘 $63 old-lb-ip公共 IP $31 预算状态
prod-budget— 已使用 78%,$4,312 / $5,500,进度正常(还剩 2 天)。建议操作
- 删除
orphaned-osdisk-01(已卸载 40 天)→ $63/月- 如果暂存环境处于闲置状态,则拆除
staging-slot-2→ ~$280/月- 释放
old-lb-ip(未绑定)→ $31/月
示例仅用于展示报告格式。对你自己的订阅运行 /cloudscope:monthly-cost-review,即可获取实时数据。
安装
| Claude Code | Cursor | VS Code |
|---|---|---|
claude mcp add cloudscope -- npx -y cloudscope-mcp | 安装 | 安装 |
Azure 会从你的
az login会话中自动检测。GCP 需要设置 BigQuery 账单导出(见下文)。
支持的服务商
| 服务商 | 状态 |
|---|---|
| Azure | ✅ 已支持 |
| GCP | ✅ 已支持 |
| AWS | 使用 AWS 官方服务 |
前置条件
Azure
- 已安装 Azure CLI 并已登录(
az login) - 在订阅上拥有 Cost Management Reader 角色
GCP
- 已安装 gcloud CLI 并已登录(
gcloud auth application-default login) - 已启用 将结算数据导出到 BigQuery — 这是一次性的手动设置步骤,默认未启用(建议使用详细导出进行资源级成本查询)
- 在数据集所属项目上拥有 BigQuery Data Viewer + BigQuery Job User 角色
- 注意:BigQuery 按需查询的费用为每扫描 TiB 6.25 美元(定价)。每月前 1 TiB 免费。结算导出表较小,CloudScope 的典型查询每次费用低于 0.01 美元。
配置
Azure(零配置)
CloudScope 会根据 az login 自动检测你的订阅。只需添加服务:
{
"mcpServers": {
"cloudscope": {
"command": "npx",
"args": ["-y", "cloudscope-mcp"]
}
}
}
若要指定特定订阅,请添加 env 区块:
{
"mcpServers": {
"cloudscope": {
"command": "npx",
"args": ["-y", "cloudscope-mcp"],
"env": {
"AZURE_SUBSCRIPTION_ID": "your-subscription-id"
}
}
}
}
高级:服务主体(CI/CD 和自动化环境)
| 变量 | 说明 |
|---|---|
AZURE_TENANT_ID | Azure AD 租户 ID |
AZURE_CLIENT_ID | 应用注册客户端 ID |
AZURE_CLIENT_SECRET | 应用注册客户端密钥 |
在上方的 env 区块中,同时设置这些变量和 AZURE_SUBSCRIPTION_ID。
GCP
GCP 需要 BigQuery 结算导出表。可在 GCP Console > Billing > Billing export > BigQuery export 中查找表名。
{
"mcpServers": {
"cloudscope": {
"command": "npx",
"args": ["-y", "cloudscope-mcp"],
"env": {
"GOOGLE_CLOUD_PROJECT": "my-project",
"GCP_BILLING_TABLE": "my-project.my_dataset.gcp_billing_export_resource_v1_XXXXXX"
}
}
}
}
将 GOOGLE_CLOUD_PROJECT 设置为你的 GCP 项目 ID。如果结算数据集位于其他项目中,可使用 GCP_PROJECT_ID 覆盖。
这些变量仅在使用 GCP 时适用;仅使用 Azure 的用户可以跳过。
| 变量 | 说明 | 必需 |
|---|---|---|
GOOGLE_CLOUD_PROJECT | GCP 项目 ID | 是 |
GCP_BILLING_TABLE | BigQuery 表的完整限定名称(project.dataset.table) | 是 |
GCP_PROJECT_ID | 若项目 ID 与 GOOGLE_CLOUD_PROJECT 不同,则覆盖项目 ID | 否 |
GCP_BILLING_ACCOUNT_ID | 用于预算监控的结算账号 ID | 否 |
GOOGLE_APPLICATION_CREDENTIALS | 服务账号 JSON 密钥文件的路径 | 否 |
两个服务商
{
"mcpServers": {
"cloudscope": {
"command": "npx",
"args": ["-y", "cloudscope-mcp"],
"env": {
"AZURE_SUBSCRIPTION_ID": "your-subscription-id",
"GOOGLE_CLOUD_PROJECT": "my-project",
"GCP_BILLING_TABLE": "my-project.my_dataset.gcp_billing_export_resource_v1_XXXXXX"
}
}
}
}
Azure 会根据 az login 自动检测。添加 AZURE_SUBSCRIPTION_ID 以指定特定订阅。
示例问题
- “上个月 Azure 的费用是多少?”
- “显示过去 7 天 GCP 各服务的支出”
- “GCP 这周有成本异常吗?”
- “下个月 Azure 的费用会是多少?”
- “显示 GCP 的成本优化建议”
- “比较所有项目和订阅中 Azure 与 GCP 的成本”
安全性
CloudScope 为只读工具。它无法创建、修改或删除任何云资源。Azure 使用 Cost Management Reader 权限。GCP 使用 BigQuery Data Viewer + Job User,且没有写入权限。
常见问题
这会修改我的云资源吗? 不会。仅提供只读访问权限。
我需要服务主体吗? 不需要。本地使用时,az login(Azure)或 gcloud auth application-default login(GCP)即可。
Azure Cost Management API 会产生费用吗? 不会。它是免费的。
GCP BigQuery 费用查询会产生费用吗? 会,但通常每次查询费用低于 0.01 美元(每扫描 TiB 收费 6.25 美元,每月前 1 TiB 免费)。请参阅 BigQuery 定价。
我可以同时使用 Azure 和 GCP 吗? 可以。配置两组环境变量后,CloudScope 会根据你在每次工具调用中指定的提供商执行查询。
开发
git clone https://github.com/alexpota/cloudscope-mcp.git
cd cloudscope-mcp
npm install
npm run build
npm test
npx @modelcontextprotocol/inspector node dist/index.js
参考
工具
大多数工具接受 provider 参数(azure 或 gcp);特定于提供商的工具(list_subscriptions、list_projects,以及跨账户工具 get_cross_subscription_costs / get_cross_project_costs)固定使用各自对应的云平台。默认提供商会根据已配置的提供商自动检测。
成本分析
| 工具 | 描述 | 关键参数 |
|---|---|---|
get_cost_summary | 按服务、组或区域细分支出 | start_date、end_date、group_by |
get_cost_by_tag | 按标签键对成本分组 | tag_key、start_date、end_date |
compare_periods | 并排比较两个日期范围的成本 | period_a_start/end、period_b_start/end |
top_spending_resources | 成本最高的单个资源 | days、limit |
get_cross_subscription_costs | 汇总 Azure 订阅的成本 | subscription_ids、start_date、end_date |
get_cross_project_costs | 汇总 GCP 项目的成本 | project_ids、start_date、end_date |
监控
| 工具 | 描述 | 关键参数 |
|---|---|---|
detect_anomalies | 查找相较于上一周期的支出激增 | days、threshold |
check_budgets | 预算状态、当前支出和预计超支 | (无) |
get_cost_forecast | 根据当前趋势预测支出 | days |
优化
| 工具 | 描述 | 关键参数 |
|---|---|---|
list_recommendations | 成本优化建议(Azure Advisor / GCP Recommender) | category |
find_idle_resources | 已预配但未使用的资源及其成本估算 | (无) |
find_untagged_resources | 没有标签的资源(成本归属缺口) | (无) |
实用工具
| 工具 | 描述 | 关键参数 |
|---|---|---|
get_current_date | 今天的日期以及当前月/上月的起止日期 | (无) |
list_subscriptions | 带有活动状态指示的 Azure 订阅 | (无) |
list_projects | 带有活动状态指示的 GCP 项目 | (无) |
提示词
用于生成结构化报告的引导式工作流。所有提示词都接受可选的 provider 参数(azure 或 gcp)。在 Claude Code 中,输入 /cloudscope: 即可查看所有提示词。在 Claude Desktop 中,点击 + 按钮 → Connectors → cloudscope。
| 提示词 | 描述 | 参数 |
|---|---|---|
monthly-cost-review | 完整的月度审查:支出、与上月的对比、异常、主要资源、预算、预测、节省机会 | provider(可选) |
waste-audit | 查找浪费的支出:主要资源、优化建议、有风险的预算、潜在节省总额 | provider(可选) |
cost-spike-investigation | 成本上涨的根因分析:涉及哪些服务和资源、趋势性还是一次性、建议采取的行动 | days(可选),provider(可选) |
executive-summary | 面向领导层的简要非技术成本摘要:支出、趋势、预算状态、主要驱动因素、预测、关键建议 | provider(可选) |
chargeback-report | 按标签键分配成本,用于成本分摊:各值的支出、未添加标签的资源、已添加和未添加标签的资源对比、月环比 | tag_key(必填),provider(可选) |
许可证
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。