Token导航 LogoToken导航TokenDH.com
Cloudcost MCP (cloudcostmcp) logo
运维云端stdio官方级别未说明来源级核验

Cloudcost MCP (cloudcostmcp)

MCP Server

@jadenrazo/cloudcost-mcp

CloudCost MCP是一款支持Terraform、CloudFormation、Pulumi和Bicep/ARM的多云基础设施成本分析服务,能够实时查询AWS、Azure和GCP的定价数据并生成成本比较报告。

工具数

12

提示词数

0

GitHub Stars

0

资源数

0
TypeScriptClaude云端部署Claude DesktopClaudeCursor

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

JadenRazo

提供方

JadenRazo

最后核验

2026/5/17 20:23

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx -y @jadenrazo/cloudcost-mcp

详细介绍

CloudCost MCP Server

Multi-cloud cost analysis for Terraform, CloudFormation, Pulumi, and Bicep/ARM. Live pricing from AWS, Azure, and GCP.

Built on the Model Context Protocol for seamless AI agent integration.

Installation • Tools • Pricing • Config • Architecture • Limitations

______________________________________________________________________

CloudCost MCP是一个 模型上下文协议 该服务器允许人工智能代理将基础设施解析为多种格式(Terraform、CloudFormation、Pulumi、Dimis/ARM)的代码,查询实时定价数据,并生成多云成本比较报告。它直接连接到AWS、Azure和GCP的公共定价API。不需要API密钥或云凭据。

它做什么

  • 解析Terraform HCL文件、CloudFormation模板、Pulumi堆栈导出和具有自动格式检测功能的二头肌/ARM模板
  • 提取具有可变分辨率的资源清单,包括引用的模块和OpenTofu .tofu 文件
  • 从AWS批量定价CSV和Azure零售价格REST API查询实时按需定价;GCP通过实时云计费目录API与捆绑回退
  • 跨AWS、Azure和GCP映射等效资源(计算、数据库、存储、网络、Kubernetes、容器注册表、机密管理、DNS)
  • 生成跨多种货币的按资源细分(每月和每年)的成本估算
  • 以markdown、JSON、CSV或FOCUS格式并排比较所有三个提供商的成本
  • 提供优化建议:正确的规模、保留定价、提供商切换、现货/可抢占实例
  • 在不修改Terraform文件的情况下对假设场景(实例类型更改、区域移动、承诺级别)进行建模
  • 项目成本超过3、6、12和36个月,并保留实例比较
  • 按团队、环境或任何自定义标签标记成本归因和组报告输出的资源
  • 通过可重用的GitHub Actions复合操作发布成本估算注释以拉取请求

支持的IaC格式

格式扩展名自动检测
Terraform/OpenTofu.tf, .tofu是的
云层形成.yaml, .yml, .json, .template是的
Pulumi.json (堆栈导出)
二头肌/手臂.json (ARM模板)

这与基础设施成本相比如何

基础设施成本是成熟的选择 CI中AWS成本估算的Terraform --公关评论成本增量、阈值门控、深度Terragrun支持。如果这是你的工作流程,就使用它。

CloudCostMCP针对不同的表面:

  • 通过MCP本地代理。 模型称之为工具 *在...期间* 一代。 check_cost_budget 回报 allow / warn / block 使用指定的特定阻塞资源,在热定价缓存上足够快,以便代理在将昂贵的配置写入磁盘之前否决它。
  • 一台服务器中的多个IaC。 Terraform、CloudFormation、Pulumi、二头肌/手臂——一个工具,而不是四个。
  • 零凭据。 所有定价均来自公共端点。没有帐户,没有云IAM,没有API密钥。
  • 优化+内置假设场景。 合适的规模、保留定价、跨提供商切换和现货建模是一流的工具。

两者相辅相成。在CI中使用基础设施成本;在您的代理或编辑器中使用CloudCostMCP。

______________________________________________________________________

安装

需要 Node.js 20 或稍后。

60秒快速启动(克劳德代码)

npm install -g @jadenrazo/cloudcost-mcp
claude mcp add cloudcost -- cloudcost-mcp

然后,在一个包含Terraform文件的项目目录中,问Claude:

*“使用cloudcost估算此Terraform配置的每月AWS成本,然后使用check_cost_budget将其与每月2000美元的预算进行核对。”*

没有API密钥,没有云凭据,没有单独的帐户。对于其他MCP客户端(Claude Desktop、Cursor、任何兼容MCP的代理),请参阅下面的详细设置。

所有安装选项

# From source
git clone https://github.com/jadenrazo/CloudCostMCP.git
cd CloudCostMCP
npm install
npm run build
# Global npm install
npm install -g @jadenrazo/cloudcost-mcp
# One-shot, no install
npx -y @jadenrazo/cloudcost-mcp

克劳德桌面

添加到您的Claude Desktop MCP配置(claude_desktop_config.json):

{
  "mcpServers": {
    "cloudcost": {
      "command": "node",
      "args": ["/path/to/CloudCostMCP/dist/index.js"]
    }
  }
}

如果通过npm全局安装:

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

克劳德代码

claude mcp add cloudcost -- node /path/to/CloudCostMCP/dist/index.js

或者通过npm全局安装:

claude mcp add cloudcost -- cloudcost-mcp

作为独立的MCP服务器(stdio)

node dist/index.js

______________________________________________________________________

工具

服务器公开了12个MCP工具。每个都接受JSON输入并返回结构化的JSON输出。对于以代理为中心的工作流, check_cost_budget 是标题工具:它返回一个 allow / warn / block 判断速度足够快,可以在IaC生成和磁盘写入之间调用——请参阅 docs/guardails.md.

analyze_terraform

解析Terraform文件并返回资源清单。检测云提供商,解析变量(包括 tfvars),并提取与成本相关的属性,如实例类型、存储大小和数据库引擎。

参数类型必填说明
files{path, content}[]地形 .tf 要分析的文件
tfvarsstring内容 terraform.tfvars 文件

estimate_cost

计算特定提供程序上解析资源的成本。返回每个资源的月度和年度细分以及置信度得分。

参数类型必填说明
files{path, content}[]地形文件
tfvarsstring变量覆盖
provider`aws \azure \gcp`定价的目标提供商
regionstring目标区域(如果省略,则自动映射)
currencystring输出货币(默认值: USD).支持:美元、欧元、英镑、日元、加元、澳元、印度卢比、巴西雷亚尔

compare_providers

完整管道:解析Terraform,跨提供商映射资源,获取定价,并生成比较报告。这是成本分析的主要切入点。

参数类型必填说明
files{path, content}[]地形文件
tfvarsstring变量覆盖
format`markdown \json \csv \focus`报告格式(默认: markdown)
providersstring[]要比较的提供商(默认值:全部三个)
currencystring输出货币(默认值: USD).支持:美元、欧元、英镑、日元、加元、澳元、印度卢比、巴西雷亚尔

get_equivalents

跨提供程序查找等效的Terraform资源类型和实例大小。对迁移规划有用。

参数类型必填说明
resource_typestring地形资源类型(例如。, aws_instance)
source_provider`aws \azure \gcp`提供资源所属的提供商
target_provider`aws \azure \gcp`具体目标(全部省略)
instance_typestring也要映射的实例类型(例如。, t3.large)

get_pricing

直接价格查询。返回特定提供者上特定资源的标准化单价及其元数据。

参数类型必填说明
provider`aws \azure \gcp`云提供商
service`compute \database \storage \network \kubernetes`服务类别
resource_typestring实例类型、存储类型等。
regionstring云区域

optimize_cost

分析地形资源并返回优化建议。包括正确的规模建议、保留实例比较和跨提供商节约机会。

参数类型必填说明
files{path, content}[]地形文件
tfvarsstring变量覆盖
providersstring[]要评估的提供者(默认值:全部三个)

what_if

对现有的Terraform资源运行假设的定价方案。更改实例类型、区域、提供程序或承诺级别,在不修改实际配置的情况下查看成本增量。

参数类型必填说明
files{path, content}[]地形文件
tfvarsstring变量覆盖
scenariosobject[]更改模型。每个都指定了一个资源名称和要覆盖的属性
providersstring[]要评估的提供者(默认值:全部三个)
currencystring输出货币(默认值: USD)

示例:模拟跨提供商将计算从按需转换为现货的成本影响:

{
  "files": [{ "path": "main.tf", "content": "..." }],
  "scenarios": [
    { "resource": "aws_instance.web", "pricing_model": "spot" },
    { "resource": "aws_instance.app", "instance_type": "m6i.2xlarge" }
  ]
}

analyze_plan

解析地形图JSON输出,用于变更成本分析前后。显示正在添加、更改或销毁的资源以及每次更改的成本影响。

参数类型必填说明
plan_jsonstringJSON输出来自 terraform show -json planfile
provider`aws \azure \gcp`定价的目标提供商(如果省略,则自动检测)
currencystring输出货币(默认值: USD)

compare_actual

解析 .tfstate 将实际基础设施成本与估算值进行比较的文件。识别计划资源和部署资源之间的偏差。

参数类型必填说明
state_jsonstring内容 terraform.tfstate 文件
provider`aws \azure \gcp`定价的目标提供商(如果省略,则自动检测)
currencystring输出货币(默认值: USD)

price_trends

查询历史定价趋势和价格变化跟踪。显示特定资源类型的定价随时间的变化情况。

参数类型必填说明
provider`aws \azure \gcp`云提供商
servicestring服务类别
resource_typestring实例类型、存储类型等。
regionstring云区域
period_daysnumber回溯期(以天为单位)(默认值: 90)

detect_anomalies

通过预算检查、价格变化、集中风险和正确的规模提示进行成本异常检测。分析解析的资源并标记潜在的成本问题。

参数类型必填说明
files{path, content}[]要分析的IaC文件
tfvarsstring变量覆盖
provider`aws \azure \gcp`目标提供程序(如果省略,则自动检测)
budget_monthlynumber每月预算上限(美元)
currencystring输出货币(默认值: USD)

check_cost_budget

为AI代理设计的快速成本安全护栏。退货 allow / warn / block 通过指定特定的阻塞资源,代理可以在将昂贵的IaC生成写入磁盘之前否决它。阈值级联:每次调用参数→ CLOUDCOST_GUARDRAIL_* env → CLOUDCOST_BUDGET_* 环境。看 docs/guardails.md 对于集成模式。

参数类型必填说明
files{path, content}[]要评估的IaC文件
tfvarsstring变量覆盖
provider`aws \azure \gcp`目标提供程序(如果省略,则自动检测)
regionstring目标区域(如果省略,则自动检测)
currencystring输出货币(默认值: USD)
max_monthlynumber每月总阈值。完毕= block.
max_per_resourcenumber按资源阈值。一个过去= block.
warn_rationumber (0–1)触发的限制分数 warn (默认值 0.8)

______________________________________________________________________

定价如何运作

CloudCost使用分层方法获得最准确的定价,而无需任何API密钥或凭证。

亚马逊云服务

  1. 实时CSV流媒体 主要的,重要的对于EC2计算定价,服务器逐行流式传输目标区域的AWS批量定价CSV。这避免了将约267 MB的完整文件加载到内存中。该地区的所有按需计算价格都是一次性提取的,并在SQLite中缓存24小时。对同一区域的并发请求共享一个下载。
  1. 实时JSON API (次要)。对于RDS(~24 MB)、S3、ELB和VPC,服务器从 AWS批量API价格表。这些文件足够小,可以直接解析。
  1. 回退表+插值。如果实时获取失败(网络问题、超时),服务器将退回到内置的定价表,涵盖85+EC2和29个RDS实例类型。尺寸插值算法通过遵循AWS的可预测加倍模式(例如。, largexlarge 价格翻倍)。

Azure

  1. Live REST API 主要的,重要的查询 Azure零售价格API 使用OData过滤器进行精确SKU匹配(armSkuName).快速、免费、未经身份验证。返回精确的每个SKU定价。结果被分页并完全消耗。
  1. 回退表+插值.如果无法访问API,则返回到覆盖40+VM大小和14个数据库层的内置表。vCPU比例插值算法估计未上市尺寸的价格。

谷歌云平台

  1. 直播云计费目录API 主要的,重要的查询GCP云计费目录API(cloudbilling.googleapis.com)使用未经身份验证的公共端点。结果将缓存24小时。
  1. 捆绑定价数据 (回退)。如果无法访问实时API,请返回中的策划定价数据 data/gcp-pricing/ 随包裹一起发货。涵盖所有主要地区的计算引擎机器类型、云SQL层、云存储类和持久磁盘类型。
  1. 基础设施服务负载均衡器、Cloud NAT和GKE定价使用固定的公共费率。

定价来源透明度

每个退回的价格都包括 pricing_source 指示其来源的属性:

  • "live":实时从公共API获取
  • "fallback":来自内置表(近似,但估计合理)
  • "bundled":来自软件包附带的捆绑数据文件

所有定价数据都缓存在本地SQLite数据库中(~/.cloudcost/cache.db)24小时TTL,最大限度地减少多余的API调用。

______________________________________________________________________

示例

给定此Terraform配置:

# infrastructure.tf
resource "aws_instance" "web" {
  count         = 3
  ami           = "ami-0c55b159cbfafe1f0"
  instance_type = "t3.xlarge"
}

resource "aws_instance" "app" {
  count         = 2
  ami           = "ami-0c55b159cbfafe1f0"
  instance_type = "m5.2xlarge"
}

resource "aws_db_instance" "primary" {
  instance_class    = "db.r6g.xlarge"
  engine            = "postgres"
  allocated_storage = 200
}

resource "aws_ebs_volume" "data" {
  count = 5
  size  = 500
  type  = "gp3"
}

resource "aws_s3_bucket" "assets" {}

resource "aws_lb" "main" {
  load_balancer_type = "application"
}

resource "aws_nat_gateway" "main" {}

resource "aws_eks_cluster" "main" {
  name = "prod"
}

跑步 compare_providers 针对该配置生成:

| Category        | AWS (USD/mo) | Azure (USD/mo) | GCP (USD/mo) |
|-----------------|-------------|----------------|--------------|
| Compute         |   $1,176.48 |      $1,209.60 |    $1,142.88 |
| Database        |     $314.64 |        $297.12 |      $285.48 |
| Storage         |      $48.00 |         $52.80 |       $44.00 |
| Load Balancer   |      $16.20 |         $18.00 |       $18.26 |
| NAT Gateway     |      $32.40 |         $32.40 |       $31.68 |
| Kubernetes      |      $72.00 |         $72.00 |       $72.00 |
| **Total**       | **$1,659.72** | **$1,681.92** | **$1,594.30** |

*价格是按需估算的。实际成本因使用情况、地区和承诺水平而异。*

______________________________________________________________________

配置

所有配置都是可选的。服务器使用合理的默认值即可开箱即用。

环境变量

变量默认值描述
CLOUDCOST_CACHE_TTL86400缓存TTL(秒)(24小时)
CLOUDCOST_CACHE_PATH~/.cloudcost/cache.dbSQLite缓存文件位置
CLOUDCOST_LOG_LEVELinfo日志级别: debug, info, warn, error
CLOUDCOST_MONTHLY_HOURS730每月用于成本计算的小时数
CLOUDCOST_INCLUDE_DATA_TRANSFERfalse在报告中包括估计的数据传输成本
CLOUDCOST_PRICING_MODELon_demand默认定价模型: on_demand, spot,或 reserved
CLOUDCOST_RESOLVE_MODULEStrue在解析过程中展开引用的Terraform模块
CLOUDCOST_BUDGET_MONTHLY每月预算上限(美元)。超过时触发警告
CLOUDCOST_BUDGET_PER_RESOURCE每月资源预算上限(美元)
CLOUDCOST_BUDGET_WARN_PCT80出现警告的预算百分比(默认值:80%)
CLOUDCOST_GUARDRAIL_MAX_MONTHLY每月总上限 check_cost_budget.完毕= block 判决书
CLOUDCOST_GUARDRAIL_MAX_PER_RESOURCE按资源上限 check_cost_budget.多一个= block 判决书
CLOUDCOST_GUARDRAIL_WARN_RATIO0.8触发护栏阈值的分数 warn 而不是 allow

配置文件

您还可以创建 ~/.cloudcost/config.json:

{
  "cache": {
    "ttl_seconds": 43200,
    "db_path": "/tmp/cloudcost-cache.db"
  },
  "pricing": {
    "monthly_hours": 730,
    "default_currency": "USD"
  },
  "logging": {
    "level": "debug"
  }
}

配置优先级:环境变量>配置文件>内置默认值。

______________________________________________________________________

建筑

                        ┌───────────────────────────────┐
                        │          MCP Client           │
                        │   (Claude Desktop / Agent)    │
                        └──────────────┬────────────────┘
                                       │ stdio
                        ┌──────────────▼────────────────┐
                        │     CloudCost MCP Server      │
                        │        (src/server.ts)        │
                        └──────────────┬────────────────┘
                                       │
              ┌────────────────────────┼───────────────────────┐
              │                        │                       │
    ┌─────────▼─────────┐    ┌─────────▼─────────┐   ┌─────────▼─────────┐
    │   Tool Handlers   │    │   HCL Parsers     │   │   Cost Engine     │
    │ (src/tools/*.ts)  │    │  (src/parsers/)   │   │ (src/calculator/) │
    └─────────┬─────────┘    └───────────────────┘   └─────────┬─────────┘
              │                                                │
    ┌─────────▼────────────────────────────────────────────────▼─────────┐
    │                       PricingEngine (router)                       │
    │                  (src/pricing/pricing-engine.ts)                   │
    └──────┬───────────────────┬─────────────────────┬───────────────────┘
           │                   │                     │
  ┌────────▼───────┐  ┌────────▼───────┐    ┌────────▼───────┐
  │  AWS Bulk      │  │  Azure Retail  │    │  GCP Bundled   │
  │  Loader        │  │  Client        │    │  Loader        │
  │  (CSV + JSON)  │  │  (REST API)    │    │  (static JSON) │
  └────────┬───────┘  └────────┬───────┘    └────────┬───────┘
           │                   │                     │
           ▼                   ▼                     ▼
  AWS Bulk Pricing   Azure Retail API       data/gcp-pricing/
  CSV (public)       (public, no auth)      (bundled files)

亮点:零API密钥(所有通过公共端点公开的提供商),SQLite-based价格缓存在工具调用之间共享,267 MB AWS批量CSV的流式接收,以及优雅的现场直播→ 后备方案→ 插值表链,因此每个响应都带有 pricing_sourceconfidence 现场。中的完整逐层漫游和扩展指南 docs/architecture.md.

______________________________________________________________________

支持的资源

类别AWSAzureGCP
计算aws_instanceazurerm_virtual_machine, azurerm_linux_virtual_machinegoogle_compute_instance
数据库aws_db_instance, aws_rds_clusterazurerm_postgresql_flexible_server, azurerm_mysql_flexible_servergoogle_sql_database_instance
存储aws_ebs_volume, aws_s3_bucketazurerm_managed_disk, azurerm_storage_accountgoogle_compute_disk, google_storage_bucket
网络aws_lb, aws_nat_gatewayazurerm_lb, azurerm_nat_gatewaygoogle_compute_forwarding_rule
Kubernetesaws_eks_clusterazurerm_kubernetes_clustergoogle_container_cluster
集装箱登记处aws_ecr_repositoryazurerm_container_registrygoogle_artifact_registry_repository
秘密管理aws_secretsmanager_secretazurerm_key_vaultgoogle_secret_manager_secret
域名系统aws_route53_zoneazurerm_dns_zonegoogle_dns_managed_zone
API网关aws_api_gateway_rest_api, aws_apigatewayv2_apiazurerm_api_managementgoogle_api_gateway_api
网络应用防火墙aws_wafv2_web_aclazurerm_web_application_firewall_policy
OpenSearchaws_opensearch_domain
消息传递aws_sns_topic, aws_mq_brokerazurerm_servicebus_namespace, azurerm_eventhub_namespacegoogle_pubsub_topic
ML/AIaws_sagemaker_endpoint, aws_sagemaker_notebook_instancegoogle_vertex_ai_endpoint

实例类型映射涵盖70多种AWS实例类型(包括Graviton/ARM系列:m6g、m7g、c6g、c7g、r6g、r7g、t4g),40多种Azure VM大小,以及20多种具有完全双向跨提供商映射的GCP机器类型。

______________________________________________________________________

局限性

  • 仅按需定价 默认情况下。价格反映了现收现付的费率。这 optimize_cost 工具建议保留实例;AWS储蓄计划尚不受支持(在中跟踪 docs/roadmap.md).通过 pricing_model: "spot"what_if 对现货/抢先定价进行建模的情景。
  • GCP实时定价 从云计费目录API获取,并在API无法访问时自动回退到绑定数据。捆绑价格可能略低于实际价格。
  • 回退数据信号。 当无法访问实时定价API,并且 estimate_cost / compare_providers / get_pricing 从捆绑或回退表中提供数据,响应包括 warnings 条目(“使用回退/捆绑定价数据…”),以便呼叫者可以标记过时的估计。捆绑数据每周通过CI刷新一次。
  • 首次请求延迟CSV文件流式传输时,新AWS区域的初始EC2定价查找可能需要30-120秒。对同一区域的后续查找是即时的(缓存24小时)。
  • 特殊实例类型.GPU实例(p4d、g5等)、高内存(x2idn)和裸机类型可能会退回到插值定价,如果不在内置表中并且实时获取失败。

______________________________________________________________________

更多文档

______________________________________________________________________

许可证

MIT。看 许可证 了解详情。

目录标签

目录标签

TypeScriptClaude云端部署多云管理本地部署成本分析基础设施即代码云计算定价优化

支持客户端

Claude DesktopClaudeCursor

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

来源包(packageName,安装包名)

@jadenrazo/cloudcost-mcp

工具数量(toolCount,工具数)

12

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP