亚马逊AWS官方博客
Amazon Q Developer 结合 MCP 实现智能化云成本分析
![]() |
1. 引言
随着企业数字化转型的深入推进,Amazon 云服务的使用规模和复杂度急剧增长,成本管理面临前所未有的挑战。企业需要处理包含数百个 Amazon 服务、数千个计费维度的海量 CUR 数据,而现有工具在实际使用中存在以下局限性:
- 学习曲线陡峭:Amazon Cost Explorer、Billing Dashboard 等工具需要专业知识
- 交互方式单一:主要依赖图形界面操作,缺乏自然语言交互
- 数据孤岛问题:成本数据、定价信息、项目分析分散在不同工具中
- 自动化程度低:大部分分析工作需要手动完成,效率有限
相比之下,Amazon Q Developer 结合 MCP(Model Context Protocol,模型上下文协议)为 Amazon 成本管理带来革命性的改变:
- 自然语言交互:通过对话方式进行成本查询和分析
- 多数据源整合:统一访问成本数据、定价信息、项目配置
- 智能分析能力:自动识别成本异常、提供优化建议
- 高度自动化:从数据获取到报告生成的全流程自动化
2. 方案介绍
2.1 Amazon Q Developer + MCP 架构概述
MCP,是一个开放协议,用于标准化应用程序向 LLM 提供上下文的方式。遵循 MCP 协议的应用,可以调用各种工具,扩展 AI 能力。本文采用如下方案来实现智能化成本分析。
![]() |
具体而言,该方案包含两个核心组件,通过专门的 MCP 服务器来处理不同类型的成本管理需求。
2.2 Amazon 云成本相关的 MCP 服务器
这两个服务器分工明确,相互协作。
awslabcost_explorer_mcp_server
专注于 Amazon Cost Explorer API 的封装,核心功能包括:
- 实时成本查询:支持按服务、区域、账户等多维度分析
- 趋势分析:自动比较不同时间段成本变化,识别异常波动
- 成本预测:基于历史数据生成未来趋势,为预算制定提供支持。
支持以下工具:
- get_today_date:获取当前日期和月份,用于确定回答”上个月”等问题时的相关数据
- get_dimension_values:获取特定维度的可用值(例如:服务 SERVICE、区域 REGION)
- get_tag_values:获取特定标签键的可用值
- get_cost_and_usage:检索 Amazon 成本和使用数据,支持过滤和分组选项
- get_cost_and_usage_comparisons:比较两个时间段之间的成本,识别变化和趋势
- get_cost_comparison_drivers:分析导致时间段间成本变化的因素(前 10 个最重要的驱动因素)
- get_cost_forecast:基于历史使用模式生成成本预测
awslabscost_analysis_mcp_server
与前者形成互补,专注于定价查询和项目评估:
- 定价查询:从 Amazon 官方 API 和网页获取最新定价信息,覆盖主要 Amazon 服务的定价查询,可以对按需、预留实例、Savings Plans 等不同定价模式进行对比,
- 项目分析:支持 Terraform、CDK 项目的成本预估,提供常见架构模式的成本参考。
- 报告生成:生成包含单价、用量、计算过程的详细报告,支持 Markdown、CSV 等多种格式,并基于分析结果提供成本优化建议
支持以下工具:
- get_pricing_from_web: 从 Amazon 定价网页获取定价信息
- get_pricing_from_api:从 Amazon 价格列表 API 获取定价数据
- generate_cost_report:创建详细的成本分析报告,包含明细和可视化图表
- analyze_cdk_project:分析 Amazon 云开发工具包(Amazon CDK)项目,识别所使用的服务并估算成本
- analyze_terraform_project:分析 Terraform 项目,识别所使用的服务并估算成本
- get_bedrock_patterns:获取 Amazon Bedrock 的架构模式,并考虑成本因素
综合来看,两个服务器的协同效应体现在以下几个方面。
2.3 协同效应分析
这两个成本相关 MCP 服务器对比如下:
awslabcost_explorer_mcp_server | awslabscost_analysis_mcp_server | |
主要用途 | 历史成本分析 | 定价查询和项目评估 |
数据源 | Amazon Cost Explorer API | Amazon 定价 API + 网页 |
当两个 MCP 服务器协同工作时,能够实现:
- 完整的成本生命周期管理:从规划、监控到优化的全流程覆盖
- 数据交叉验证:历史成本数据与定价信息的相互验证
- 智能决策支持:结合历史趋势和当前定价制定优化策略
- 自动化工作流:减少手动操作,提高分析效率
3. 配置步骤
开始之前,请确保已经在本地电脑安装了必要的工具:
- 安装 Amazon Q Developer CLI,操作说明:安装适用于命令行的 Amazon Q
- Amazon Q Developer CLI 已安装并配置,操作说明:安装或更新最新版本的 AWS CLI
然后配置 MCP 服务器到 Amazon Q Developer 中:
通过以上配置,系统已经具备了完整的智能化成本分析能力。接下来,我们可以开始实际应用,通过三个典型场景来展示该方案的强大功能。
4. 实际应用案例
以下案例基于真实的企业使用场景,展示了不同复杂度下的分析能力:
场景 1:多维度成本分析(按服务、区域、时间维度)
Amazon Q Developer CLI 交互示例:
请分析 2025 年 5 月的 Amazon 成本,按服务和区域进行分组。请使用成本相关的 MCP Server 进行分析。
此处如果不指定使用 MCP Server 进行分析,会使用默认的 use_aws 工具进行分析。但是 MCP Server 会提供更清晰、结构化的成本数据。
可以看到 Amazon Q Developer 在分析过程中首先调用 awslabcost_explorer_mcp_serve 相关工具进行数据收以及和上一个月的趋势对比,最后调用 awslabscost_analysis_mcp_server 的 generate_cost_report 工具生成了结构化的成本分析报告以及优化建议。
Amazon Q Developer 分析结果显示:
![]() |
![]() |
此外,用户可以通过 Prompt 让 Amazon Q Developer 把结果保存成 markdown、CSV 或者 Json 格式。
以上展示了多维度成本分析的基本能力。在此基础上,让我们进一步探索异常检测功能。
场景 2:成本异常检测和驱动因素分析
Amazon Q Developer CLI 交互示例:
2025 年 2 季度,成本有没有异常,如果有请找出具体原因。
可以看到 Amazon Q Developer 给出了异常发现,并分析了可能造成的业务影响,还给出了建议措施。
Amazon Q Developer 分析结果显示:
![]() |
![]() |
除了历史数据分析,该方案还支持前瞻性的项目评估。下面通过一个实际项目来演示这一功能。
场景 3:新项目成本评估
Amazon Q Developer CLI 交互示例:
我有一个新的微服务项目,需要完整的成本评估。项目使用 CDK 部署,路径是
/Users/guanzl/microservices-cost-demo
。
Amazon Q Developer 分析结果显示:
![]() |
5. 总结
综上所述,本文详细介绍了如何利用 Amazon Q Developer 结合 Model Context Protocol (MCP) 技术,实现 Amazon 成本和使用报告(CUR)的智能化分析。通过前述三个实际案例,我们可以看到该方案在多维度分析、异常检测和项目评估方面的显著优势。展望未来,这种 AI 驱动的成本管理模式将成为企业云成本优化的重要工具,帮助企业更高效地进行云成本管理和优化。
*前述特定亚马逊云科技生成式人工智能相关的服务仅在亚马逊云科技海外区域可用,亚马逊云科技中国仅为帮助您了解行业前沿技术和发展海外业务选择推介该服务。