Skip to main content
Glama
alialbaker

cloudprice-mcp

cloudprice-mcp

PyPI version Python versions License: MIT alialbaker/cloudprice-mcp MCP server

一个 MCP 服务器,允许 Claude(或任何兼容 MCP 的客户端)实时比较 AWS、Azure 和 GCP 之间的按需 计算 + 存储 定价。

demo

你可以询问如下问题:

“在 us-east 区域,4 vCPU / 16 GB 的 Linux 虚拟机在 AWS、Azure 和 GCP 上的价格分别是多少?”

“我有一个三层部署架构:8 个 Web 服务器 (4/16)、12 个应用服务器 (8/32)、4 个数据库服务器 (16/64),每个服务器配有 200 GB SSD 操作系统磁盘,外加 5 TB SSD 共享存储和 50 TB HDD 大容量存储。请比较 AWS、Azure 和 GCP 的月度成本。”

“EC2 t3.xlarge 每月的费用是多少?”

Claude 会调用正确的工具,你将获得一份清晰的答案,包含按行、按云厂商以及合并后的总计费用。无需点击控制台,也无需在三个定价计算器之间切换标签页。


安装

pip install cloudprice-mcp

或者直接运行而不安装:

pipx run cloudprice-mcp

需要 Python 3.10+。

连接到 Claude Desktop

编辑你的 Claude Desktop 配置文件:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

添加:

{
  "mcpServers": {
    "cloudprice": {
      "command": "cloudprice-mcp"
    }
  }
}

重启 Claude Desktop。下方列出的七个工具将变为可用状态。

公开的工具

单规格查询 (v0.1)

工具

功能

get_aws_price

查询 EC2 实例类型 → vCPU、内存、每小时 + 每月美元价格 (us-east-1)

get_azure_price

查询 Azure 虚拟机大小 → vCPU、内存、每小时 + 每月美元价格 (eastus)

get_gcp_price

查询 GCP Compute Engine 机器类型 → vCPU、内存、每小时 + 每月美元价格 (us-east1)

compare_clouds

给定目标规格 (vCPU + GB),返回每个云厂商最便宜的匹配 SKU,按月度成本排序,并附带节省摘要

批量 + 工作负载比较 (v0.2)

工具

功能

compare_compute_inventory

批量比较计算工作负载列表(每个包含 vCPU / 内存 / 数量 / 小时 / 可选操作系统磁盘)。返回按行匹配结果、按云厂商总计以及整体最便宜的云厂商。

compare_storage_inventory

批量比较存储卷列表(每个包含容量 / 磁盘类型 / 数量)。返回按行匹配结果、按云厂商总计以及最便宜的云厂商。

compare_workload

在一次调用中合并计算 + 存储。镜像两张表的工作负载估算(计算物料清单 + 存储物料清单)。返回嵌套的各部分明细以及合并后的各云厂商总计。

示例:compare_workload 输入格式

{
  "compute": [
    { "name": "web", "tier": "Web", "vcpus": 4, "memory_gb": 16, "quantity": 8,  "os_disk_gb": 100, "os_disk_type": "ssd" },
    { "name": "app", "tier": "App", "vcpus": 8, "memory_gb": 32, "quantity": 12, "os_disk_gb": 200, "os_disk_type": "ssd" },
    { "name": "db",  "tier": "DB",  "vcpus": 16, "memory_gb": 64, "quantity": 4, "os_disk_gb": 500, "os_disk_type": "ssd" }
  ],
  "storage": [
    { "name": "shared-fast", "tier": "DB",  "capacity_gb": 5000,  "disk_type": "ssd" },
    { "name": "shared-bulk", "tier": "App", "capacity_gb": 50000, "disk_type": "hdd" }
  ]
}

快照 (v0.2.1)

存储行上的 snapshot_count 和计算行上的 os_disk_snapshot_count 现在已计费。每个云厂商每种磁盘类型的快照费率已打包(AWS/Azure 约为 $0.05/GB-月,GCP 约为 $0.026/GB-月)。

警告 — 上限估算: 快照价格计算方式为 snapshot_per_gb_month × full_capacity × quantity × snapshot_count。实际生产中的快照是 增量式 的(仅记录变更块),因此实际成本通常仅为此模型数值的 20-50%。如果快照在你的总成本中占比较大,请咨询云厂商的计算器以获取更精确的估算。

存储行上的 iopsthroughput_mbs 仍仅作为元数据接受,在此版本中不用于 SKU 匹配。

预留实例 / 节省计划估算器 (v0.2.1)

compare_workload 接受一个可选的 commitment 参数:

计算折扣

使用场景

none (默认)

0%

仅按需付费

1yr_no_upfront

30%

1 年期 AWS 节省计划 / Azure RI / GCP CUD(无预付)

3yr_partial_upfront

50%

3 年期,部分预付 — 典型的“已知基准线”交易

存储和快照不享受折扣(大多数云厂商不提供有意义的存储承诺折扣)。折扣层级是保守的平均值 — 你的实际费率取决于实例系列、付款方式和区域。

定价数据

价格以每个云厂商常用 SKU 的精选数据集形式打包 — 虚拟机(3 个云厂商共约 45 个 SKU)和块存储(每个云厂商的 SSD + HDD)— 数据源自 AWS / Azure / GCP 的公开价格表。每个响应都包含一个 as_of 日期,以便你了解数据的时效性。

未来版本将增加实时模式,直接从每个云厂商的公开定价 API 获取价格:

跟踪 issue #1 以获取实时模式更新,跟踪 issue #2 以获取跨云服务映射(RDS↔SQL DB↔Cloud SQL 等)。

本地开发

git clone https://github.com/alialbaker/cloudprice-mcp.git
cd cloudprice-mcp
pip install -e ".[dev]"
pytest

要将 Claude Desktop 指向你的开发副本,请修改配置中的 command

{
  "mcpServers": {
    "cloudprice": {
      "command": "python",
      "args": ["-m", "cloudprice_mcp.server"]
    }
  }
}

许可证

MIT — 参见 LICENSE

致谢

由云架构师 Ali Albaker 构建 — 在 AWS、Azure 和 GCP 上运行着一个每月约 $1.80 的三云组合环境。

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
0dRelease cycle
3Releases (12mo)

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/alialbaker/cloudprice-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server