云成本分析服务器

一个生产就绪的模型上下文协议(MCP)服务器,用于与CloudZero计费API集成,提供高级成本分析工具,支持复杂的云成本管理和FinOps工作流程。

  • by bhuv1436
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 bhuv1436/cloudzeromcpserver

使用说明

CloudZero MCP服务器

生产准备就绪 模型上下文协议(MCP)服务器 用于与CloudZero计费API集成。该服务器通过标准化的MCP接口提供高级成本分析工具,实现复杂的云成本管理和FinOps工作流。

特性

  • 🔍 计费成本检索:使用筛选选项获取详细的成本数据
  • 🔒 安全认证:基于环境变量的API密钥管理
  • ✅ 输入验证:使用用户友好的错误消息进行全面验证
  • 📊 灵活查询:支持不同粒度、分组和成本类型

先决条件

  • Node.js 18+
  • 具有API访问权限的CloudZero帐户
  • CloudZero API密钥

安装

  1. 克隆或下载此项目

  2. 安装依赖项:

    npm install
    
  3. 安装CloudZero SDK:

    npx api install "@cloudzero/v2.0.0-main#1dpb61pmea4h1ld"
    
  4. 设置环境变量:

    cp .env.example .env
    

    编辑 .env 文件并添加您的CloudZero API密钥:

    CLOUDZERO_API_KEY=your_actual_api_key_here
    
  5. 构建项目:

    npm run build
    

用法

发展模式

npm run dev

生产模式

npm run build
npm start

可用工具

get_billing_costs

使用过滤选项从CloudZero检索计费成本。

参数:

  • start_date (必填):ISO格式的开始日期(例如。, 2025-01-01T00:00:00Z)
  • end_date (必填):ISO格式的结束日期(例如。, 2025-01-31T23:59:59Z)
  • granularity (可选):时间粒度- daily, weekly,或 monthly (默认值: daily)
  • group_by (可选):按维度对成本进行分组(默认值: Service)
  • cost_type (可选):成本计算类型- real_cost, amortized_cost,或 blended_cost (默认值: real_cost)

MCP客户端中的示例用法:

{
  "tool": "get_billing_costs",
  "arguments": {
    "start_date": "2025-01-01T00:00:00Z",
    "end_date": "2025-01-31T23:59:59Z",
    "granularity": "daily",
    "group_by": "Service",
    "cost_type": "real_cost"
  }
}

错误处理

服务器为常见问题提供用户友好的错误消息:

  • API密钥配置丢失或无效
  • 日期格式不正确
  • 参数值无效
  • CloudZero API连接问题

配置

环境变量

变量 必填 描述
CLOUDZERO_API_KEY 是 您的CloudZero API密钥
MCP_SERVER_NAME 否 服务器名称(默认:“cloudzero-mcp服务器”)
MCP_SERVER_VERSION 否 服务器版本(默认:“1.0.0”)

项目结构

├── src/
│   ├── index.ts                 # Main MCP server
│   ├── cloudzero-client.ts      # CloudZero API client
│   └── tools/
│       └── billing-costs.ts     # Billing costs tool implementation
├── .env.example                 # Environment variables template
├── package.json
├── tsconfig.json
└── README.md

发展

建筑

npm run build

以开发模式运行

npm run dev

许可证

麻省理工学院