Sample Cfm Tips Mcp

Sample Cfm Tips Mcp

🚀 CFM提示 - 成本优化MCP服务器

这是一个全面的模型上下文协议(MCP)服务器,用于AWS成本分析和提供优化建议,旨在与Amazon Q CLI及其他支持MCP的客户端无缝协作。

🚀 快速开始

CFM提示 - 成本优化MCP服务器可以帮助你对AWS资源进行成本分析和优化。按照以下步骤,你可以轻松使用该服务器:

  1. 安装必要的依赖和配置AWS凭证。
  2. 应用所需的IAM权限。
  3. 选择合适的使用方式,如使用Q CLI聊天或与Amazon Q开发者插件集成。

✨ 主要特性

核心AWS服务集成

  • 成本资源管理器 - 检索成本数据和使用指标。
  • 成本优化中心 - 获取AWS成本优化建议。
  • 计算优化器 - 提供计算资源的合理调整建议。
  • 可信顾问 - 进行成本优化检查并给出建议。
  • 性能洞察 - 提供RDS性能指标和分析。
  • 成本和使用报告(CUR) - 分析S3中的成本和使用报告。

成本优化手册

  • 🔧 EC2合理调整 - 识别未充分利用的EC2实例。
  • 💾 EBS优化 - 查找未使用和未充分利用的卷。
  • 🗄️ RDS优化 - 识别闲置和未充分利用的数据库。
  • Lambda优化 - 查找过度配置和未使用的函数。
  • 📊 综合分析 - 多服务成本分析。

高级特性

  • 实时CloudWatch指标 - 使用实际的AWS指标进行分析。
  • 多种输出格式 - 生成JSON和Markdown报告。
  • 成本计算 - 估算节省的成本和成本明细。
  • 可操作的建议 - 基于优先级的优化建议。

📦 安装指南

前提条件

  • Python 3.11 或更高版本。
  • 已配置适当凭证的AWS CLI。
  • Amazon Q CLI(用于MCP集成) - 安装链接

安装步骤

  1. 克隆仓库
git clone https://github.com/aws-samples/sample-cfm-tips-mcp.git
cd sample-cfm-tips-mcp
  1. 安装依赖
pip install -r requirements.txt
  1. 配置AWS凭证
aws configure
# 或者设置环境变量:
# export AWS_ACCESS_KEY_ID=your_access_key
# export AWS_SECRET_ACCESS_KEY=your_secret_key
# export AWS_DEFAULT_REGION=us-east-1
  1. 应用IAM权限
  • 创建一个包含上述权限的IAM策略。
  • 将该策略附加到你的IAM用户或角色。
  1. 安装MCP配置
python3 setup.py
  1. 使用选项1:使用Q CLI聊天
q chat
Show me cost optimization recommendations
  1. 使用选项2:与Amazon Q开发者插件或Kiro集成
  • 在你的IDE中打开Amazon Q开发者插件。
  • 点击聊天 -> 🛠️ 配置MCP服务器 -> ➕ 添加新的MCP。
  • 使用以下配置
- 范围:全局
- 名称:cfm - tips
- 传输方式:stdio
- 命令:python3
- 参数:<替换为文件夹路径>/mcp_server_with_runbooks.py
- 超时时间:60

💻 使用示例

基础用法

"获取我上个月的AWS成本"
"显示成本优化建议"
"我的主要成本驱动因素是什么?"

资源优化

"查找us - east - 1中未充分利用的EC2实例"
"显示我可以删除的未使用EBS卷"
"识别闲置的RDS数据库"
"查找未使用的Lambda函数"

报告生成

"生成全面的成本优化报告"
"以Markdown格式创建EC2合理调整报告"
"生成包含成本节省的EBS优化报告"

多服务分析

"对us - east - 1中的所有服务进行全面成本分析"
"分析我的AWS基础设施以寻找成本优化机会"
"显示即时的成本节省机会"

📚 详细文档

项目结构

sample-cfm-tips-mcp/
├── playbooks/                            # CFM提示优化手册引擎
├── services/                             # 作为成本优化数据源的AWS服务
├── mcp_server_with_runbooks.py           # 主MCP服务器
├── runbook_functions.py                  # 成本优化手册实现
├── mcp_runbooks.json                     # MCP配置文件的模板文件
├── requirements.txt                      # Python依赖项
├── test_runbooks.py                      # 集成测试
├── diagnose_cost_optimization_hub_v2.py  # 诊断实用工具
├── RUNBOOKS_GUIDE.md                     # 详细使用指南
└── README.md                             # 项目说明文档

可用工具

成本分析工具

  • get_cost_explorer_data - 检索AWS成本和使用数据。
  • list_coh_enrollment - 检查成本优化中心的注册状态。
  • get_coh_recommendations - 获取成本优化建议。
  • get_coh_summaries - 获取建议摘要。
  • get_compute_optimizer_recommendations - 获取计算优化建议。

EC2优化

  • ec2_rightsizing - 分析EC2实例以寻找合理调整机会。
  • ec2_report - 生成详细的EC2优化报告。

EBS优化

  • ebs_optimization - 分析EBS卷以进行优化。
  • ebs_unused - 识别未使用的EBS卷。
  • ebs_report - 生成EBS优化报告。

RDS优化

  • rds_optimization - 分析RDS实例以进行优化。
  • rds_idle - 识别闲置的RDS实例。
  • rds_report - 生成RDS优化报告。

Lambda优化

  • lambda_optimization - 分析Lambda函数以进行优化。
  • lambda_unused - 识别未使用的Lambda函数。
  • lambda_report - 生成Lambda优化报告。

综合分析

  • comprehensive_analysis - 多服务成本分析。

其他工具

  • list_cur_reports - 列出S3中的成本和使用报告。
  • get_trusted_advisor_checks - 获取可信顾问建议。
  • get_performance_insights_metrics - 获取RDS性能洞察数据。

🔧 技术细节

安全与权限 - 最小权限原则

MCP工具需要特定的AWS权限才能正常工作:

  • 创建只读IAM角色 - 限制大语言模型(LLM)代理修改AWS资源,防止意外的创建、更新或删除操作。
  • 启用CloudTrail - 跟踪你的AWS账户中的API活动,用于安全监控。
  • 遵循最小权限原则 - 仅为所需服务授予必要的读取权限(Describe*、List*、Get*)。

以下是一个仅包含列出、读取和描述操作的IAM策略:

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"cost-optimization-hub:ListEnrollmentStatuses",
"cost-optimization-hub:ListRecommendations",
"cost-optimization-hub:GetRecommendation",
"cost-optimization-hub:ListRecommendationSummaries",
"ce:GetCostAndUsage",
"ce:GetCostForecast",
"compute-optimizer:GetEC2InstanceRecommendations",
"compute-optimizer:GetEBSVolumeRecommendations",
"compute-optimizer:GetLambdaFunctionRecommendations",
"ec2:DescribeInstances",
"ec2:DescribeVolumes",
"rds:DescribeDBInstances",
"lambda:ListFunctions",
"cloudwatch:GetMetricStatistics",
"s3:ListBucket",
"s3:ListObjectsV2",
"support:DescribeTrustedAdvisorChecks",
"support:DescribeTrustedAdvisorCheckResult",
"pi:GetResourceMetrics"
],
"Resource": "*"
}
]
}

故障排除

常见问题

  1. 成本优化中心无法工作
python3 diagnose_cost_optimization_hub_v2.py
  1. 未找到指标
  • 确保资源至少已运行14天。
  • 验证CloudWatch指标已启用。
  • 检查你分析的区域是否正确。
  1. 权限错误
  • 验证IAM权限是否正确应用。
  • 检查AWS凭证配置。
  • 确保在AWS控制台中启用了成本优化中心。
  1. 导入错误
# 检查Python路径和依赖项
python3 -c "import boto3, mcp; print('Dependencies OK')"

获取帮助

  • 查看RUNBOOKS_GUIDE.md以获取详细的使用说明。
  • 运行诊断脚本:python3 diagnose_cost_optimization_hub_v2.py
  • 运行集成测试:python3 test_runbooks.py

🧩 附加MCP

附加AWS定价MCP服务器可用于访问实时AWS定价信息并提供成本分析功能。 附加AWS定价MCP服务器仓库

# 附加AWS定价MCP服务器的使用示例:
"通过将CDK与我的AWS账户堆栈集的实际支出进行比较来审查它。相应地为应用程序提出成本优化建议"

🎯 主要优势

  • 即时节省成本 - 识别可删除的未使用资源。
  • 合理调整机会 - 优化过度配置的资源。
  • 真实指标分析 - 使用实际的CloudWatch数据。
  • 可操作的报告 - 提供带有成本估算的明确建议。
  • 全面覆盖 - 分析EC2、EBS、RDS、Lambda等多种资源。
  • 易于集成 - 与Amazon Q CLI无缝协作。

📈 预期效果

CFM提示成本优化服务器可以帮助你:

  • 平均识别成本节省机会
  • 找到每月耗费数百美元的未使用资源
  • 合理调整过度配置的实例,以实现最佳性能/成本比。
  • 通过卷类型建议优化存储成本
  • 消除无业务价值的闲置资源

🤝 贡献

我们欢迎贡献!请遵循以下贡献指南:

  1. 分叉仓库。
  2. 创建功能分支。
  3. 进行更改。
  4. 为新功能添加测试。
  5. 提交拉取请求。

📄 许可证

本项目采用MIT许可证 - 详情请参阅LICENSE文件。

  • 0 关注
  • 0 收藏,6 浏览
  • system 提出于 2025-09-25 18:30

相似服务问题

相关AI产品