mcp/aws-pricing-mcp-server提供AWS服务定价和成本估算功能的MCP Server。
什么是MCP Server?
| 属性 | 详情 |
|---|---|
| Docker镜像 | mcp/aws-pricing-mcp-server |
| 作者 | awslabs |
| 仓库 | [***] |
| 属性 | 详情 |
|---|---|
| Dockerfile | [***] |
| Docker镜像构建者 | Docker Inc. |
| Docker Scout健康评分 | !Docker Scout Health Score |
| 验证签名 | COSIGN_REPOSITORY=mcp/signatures cosign verify mcp/aws-pricing-mcp-server --key [***] |
| 许可证 | Apache License 2.0 |
| 工具名称 | 简短描述 |
|---|---|
analyze_cdk_project | 分析CDK项目以识别使用的AWS服务。 |
analyze_terraform_project | 分析Terraform项目以识别使用的AWS服务。 |
generate_cost_report | 基于一个或多个AWS服务的定价数据生成详细的成本分析报告。 |
get_bedrock_patterns | 获取Amazon Bedrock应用程序的架构模式,包括组件关系和成本考虑因素。 |
get_price_list_urls | 获取批量定价数据文件的下载URL。 |
get_pricing | 从AWS Price List API获取详细定价信息,支持可选过滤条件。 |
get_pricing_attribute_values | 获取定价过滤属性的有效值。 |
get_pricing_service_attributes | 获取AWS服务在定价API中可用的可过滤属性。 |
get_pricing_service_codes | 获取Price List API中可用的AWS服务代码。 |
analyze_cdk_project分析CDK项目以识别使用的AWS服务。此工具从CDK构造中动态提取服务信息,不依赖硬编码的服务映射。
| 参数 | 类型 | 描述 |
|---|---|---|
project_path | string | 项目目录路径 |
analyze_terraform_project分析Terraform项目以识别使用的AWS服务。此工具从Terraform资源声明中动态提取服务信息。
| 参数 | 类型 | 描述 |
|---|---|---|
project_path | string | 项目目录路径 |
generate_cost_report基于一个或多个AWS服务的定价数据生成详细的成本分析报告。
此工具需要AWS定价数据,并提供添加详细成本信息的选项。
重要要求:
输出格式选项:
示例用法:
json{ // 必需参数 "pricing_data": { // 应包含从get_pricing获取的定价数据 "status": "success", "service_name": "bedrock", "data": "... 定价信息 ...", "message": "从AWS定价URL检索到bedrock的定价" }, "service_name": "Amazon Bedrock", // 核心参数(常用) "related_services": ["Lambda", "S3"], "pricing_model": "ON DEMAND", "assumptions": [ "标准按需付费定价模型", "未应用缓存或优化", "平均请求大小为4KB" ], "exclusions": [ "区域间数据传输成本", "自定义模型训练成本", "开发和维护成本" ], "output_file": "cost_analysis_report.md", // 或"cost_analysis_report.csv"用于CSV格式 "format": "markdown", // 或"csv"用于CSV格式 // 复杂场景的高级参数 "detailed_cost_data": { "services": { "Amazon Bedrock基础模型": { "usage": "使用Claude 3.5 Haiku处理100万输入令牌和50万输出令牌", "estimated_cost": "80.00***", "free_tier_info": "Bedrock基础模型无免费套餐", "unit_pricing": { "input_tokens": "每1K令牌0.0008***", "output_tokens": "每1K令牌0.0016***" }, "usage_quantities": { "input_tokens": "1,000,000令牌", "output_tokens": "500,000令牌" }, "calculation_details": "0.0008***/1K × 1,000K输入令牌 + 0.0016***/1K × 500K输出令牌 = 80.00***" }, "AWS Lambda": { "usage": "每月6,000次请求,512MB内存", "estimated_cost": "0.38***", "free_tier_info": "前12个月:每月100万次请求免费", "unit_pricing": { "requests": "每100万请求0.20***", "compute": "每GB-秒0.0000166667***" }, "usage_quantities": { "requests": "6,000次请求", "compute": "6,000次请求 × 1秒 × 0.5GB = 3,000 GB-秒" }, "calculation_details": "0.20***/100万 × 0.006百万请求 + 0.0000166667*** × 3,000 GB-秒 = 0.38***" } } }, // 建议参数 - 可直接提供或生成 "recommendations": { "immediate": [ "优化提示工程以减少Claude 3.5 Haiku的令牌使用量", "根据实际查询模式配置知识库OCU", "为常见查询实施响应缓存以减少令牌使用" ], "best_practices": [ "监控OCU利用率指标并根据需要调整容量", "对API调用中重复的上下文使用提示缓存", "对于可预测的工作负载考虑预配置吞吐量" ] } }
| 参数 | 类型 | 描述 |
|---|---|---|
pricing_data | object | 来自AWS定价工具的原始定价数据 |
service_name | string | AWS服务名称 |
assumptions | string 可选 | 成本分析的假设列表 |
detailed_cost_data | string 可选 | 复杂场景的详细成本信息 |
exclusions | string 可选 | 成本分析中排除的项目列表 |
format | string 可选 | 输出格式("markdown"或"csv") |
output_file | string 可选 | 报告文件保存路径 |
pricing_model | string 可选 | 定价模型(例如:"ON DEMAND","Reserved") |
recommendations | string 可选 | 直接建议或生成指导 |
related_services | string 可选 | 相关AWS服务列表 |
get_bedrock_patterns获取Amazon Bedrock应用程序的架构模式,包括组件关系和成本考虑因素。
| 参数 | 类型 | 描述 |
|---|---|---|
ctx | string 可选 | 上下文信息 |
get_price_list_urls获取批量定价数据文件的下载URL。
用途: 访问完整的AWS定价数据集作为可下载文件,用于历史分析和批量处理。
工作流程: 当get_pricing()提供的当前定价不足以满足需求时,使用此工具进行历史定价分析或批量数据处理。
参数:
返回: 包含不同格式下载URL的字典:
使用场景:
文件处理:
tail -n +7 pricing.csv | grep "t3.medium"过滤数据| 参数 | 类型 | 描述 |
|---|---|---|
region | string | AWS区域(例如:"us-east-1","eu-west-1") |
service_code | string | AWS服务代码(例如:"AmazonEC2","AmazonS3","AmazonES") |
effective_date | string 可选 | 定价生效日期,格式为"YYYY-MM-DD HH:MM"(默认:当前时间戳) |
get_pricing从AWS Price List API获取详细定价信息,支持可选过滤条件。
参数:
必须遵循的工作流程:
步骤1:发现可用选项
pythonservice_codes = get_pricing_service_codes() # 查找正确的服务(已知时可跳过) attributes = get_pricing_service_attributes('AmazonEC2') # 发现可过滤维度 attribute_values = get_pricing_attribute_values('AmazonEC2', 'memory') # 获取过滤的有效值
步骤2:构建精确过滤器
python# 仅使用步骤1中发现的值 filters = [ {"Field": "memory", "Value": ["8 GiB", "16 GiB", "32 GiB"], "Type": "ANY_OF"}, # 多个选项 {"Field": "instanceType", "Value": "m5", "Type": "CONTAINS"}, # 模式匹配 {"Field": "instanceType", "Value": ["t2", "m4"], "Type": "NONE_OF"} # 排除旧类型 ]
步骤3:执行查询
pythonpricing = get_pricing('AmazonEC2', 'us-east-1', filters)
过滤类型:
{"Field": "instanceType", "Value": "m5.large"}{"Field": "memory", "Value": ["8 GiB", "16 GiB"], "Type": "ANY_OF"}{"Field": "instanceType", "Value": "m5", "Type": "CONTAINS"}{"Field": "instanceType", "Value": ["t2", "m4"], "Type": "NONE_OF"}重要:ANY_OF过滤值限制
["8 GiB", "16 GiB", "32 GiB", "64 GiB", "96 GiB", "128 GiB", ...](过长)["8 GiB", "16 GiB", "32 GiB", "36 GiB", "48 GiB"](目标明确的列表)常见使用场景:
成本优化 - 穷尽式最低优先方法: 当用户询问"最低价格"、"最便宜"或成本优化时
输出选项(响应大小和性能控制):
{"pricing_terms": ["OnDemand"], "product_attributes": ["instanceType", "location", "memory"]}关键要求:
示例使用场景:
1. 成本优化的多属性过滤(正确方法):
python# 查找满足最低要求(≥8 GiB内存,≥30 GB存储)的最便宜EC2实例 # 合格层级的穷尽枚举 - 每个都是互斥的 filters = [ {"Field": "memory", "Value": ["8 GiB", "16 GiB", "32 GiB"], "Type": "ANY_OF"}, # 所有≥8GB的层级,直至合理限制 {"
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像服务
在 Docker Desktop 配置镜像
Docker Compose 项目配置
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
MacOS OrbStack 容器配置
在宝塔面板一键配置镜像
Synology 群晖 NAS 配置
飞牛 fnOS 系统配置镜像
极空间 NAS 系统配置服务
爱快 iKuai 路由系统配置
绿联 NAS 系统配置镜像
QNAP 威联通 NAS 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
免费版仅支持 Docker Hub 访问,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等;免费版仅支持 docker.io。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
来自真实用户的反馈,见证轩辕镜像的优质服务