这是一个全面的模型上下文协议(MCP)服务器,用于AWS成本分析和提供优化建议,旨在与Amazon Q CLI及其他支持MCP的客户端无缝协作。
CFM提示 - 成本优化MCP服务器可以帮助你对AWS资源进行成本分析和优化。按照以下步骤,你可以轻松使用该服务器:
git clone https://github.com/aws-samples/sample-cfm-tips-mcp.git
cd sample-cfm-tips-mcp
pip install -r requirements.txt
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
python3 setup.py
q chat
Show me cost optimization recommendations
- 范围:全局
- 名称: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_rightsizing - 分析EC2实例以寻找合理调整机会。ec2_report - 生成详细的EC2优化报告。ebs_optimization - 分析EBS卷以进行优化。ebs_unused - 识别未使用的EBS卷。ebs_report - 生成EBS优化报告。rds_optimization - 分析RDS实例以进行优化。rds_idle - 识别闲置的RDS实例。rds_report - 生成RDS优化报告。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策略:
{
"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": "*"
}
]
}
python3 diagnose_cost_optimization_hub_v2.py
# 检查Python路径和依赖项
python3 -c "import boto3, mcp; print('Dependencies OK')"
python3 diagnose_cost_optimization_hub_v2.py。python3 test_runbooks.py。附加AWS定价MCP服务器可用于访问实时AWS定价信息并提供成本分析功能。 附加AWS定价MCP服务器仓库
# 附加AWS定价MCP服务器的使用示例:
"通过将CDK与我的AWS账户堆栈集的实际支出进行比较来审查它。相应地为应用程序提出成本优化建议"
CFM提示成本优化服务器可以帮助你:
我们欢迎贡献!请遵循以下贡献指南:
本项目采用MIT许可证 - 详情请参阅LICENSE文件。