AWS MCPサーバでクラウドのコスト分析を劇的に効率化する方法
はじめに
株式会社GENDA Platform Engineering部 SRE/インフラエンジニアの大澤です。
全組織横断で、各プロダクトに伴奏しながら、日々クラウド環境の最適化・管理、開発者の生産性向上につながる取り組みをしています。
皆さんは、AWS環境のコスト分析をどのように行っていますか? 今回は、AWSから提供されているMCP(Model Context Protocol)サーバを使用し、AIエージェントと連携して効率良くコスト分析する方法をご紹介します。
背景と課題
従来、AWSのコスト分析は、マネジメントコンソールにログインして Cost Explorer を操作したり、AWS Pricing Calculator で手動で計算したりする必要がありました。
しかし、以下のような場面で手間がかかることが課題でした。
-
コストの現状把握: 「今月なぜ高いのか?」を分析する際、Cost Explorer の操作に習熟が必要。
-
新規構築時の試算: IaC(Terraform/CDK)で構築する前に、構成案から迅速にコストを知りたい。
これらの作業を、自然言語でAIと対話しながら完結させるのが今回の狙いです。
使用するMCPサーバについて
MCP(Model Context Protocol)は、AIエージェントが外部ツールやデータと安全にやり取りするための共通規格です。今回はAWS公式から提供されている2つのMCPサーバを活用します。
Billing and Cost Management MCP サーバについて
AWSのコスト管理と最適化を支援するためのMCPサーバ
■ 主なユースケース
- AWSコストと使用状況の分析
- 任意の期間のコスト比較
- 将来のコスト予測
- 新しいワークロードのコスト推定
→ AWSコンソールにアクセスすることなく、自然言語でコスト分析・比較・予測が可能
AWS Pricing MCP サーバについて
AWSの AWS Price List API を実行し、料金情報を確認するためのMCPサーバ
■ 主なユースケース
- CDKやTerraformなどのIaCのコードを元に、構築した場合のコストを予測
- 特定のAWSリソースの見直しをする際の試算
- 公式の料金を参照することができるので、より精度高く、見積もることができる
→ AWS の AWS Pricing Calculator を使うことなく、自然言語でコスト分析・比較・予測が可能で、手元にあるIaCのコードの情報も考慮したコスト分析も可能
準備
以下の手順で環境を整えます。
-
uvコマンドをインストール
-
Pythonをインストール
-
AWSクレデンシャルの設定(
aws configureやaws sso loginを完了させておく) -
mcp.json に設定を記述
※1 Billing and Cost Management MCP Server を利用する場合、使用する認証プロファイルに Cost Explorer へのアクセス権限が必要です。
※2 AWS_PROFILE と AWS_REGION はご自身の環境に合わせて書き換えてください。
mcp.json に記載する設定例 ① - Billing and Cost Management MCP Server -
{
"mcpServers": {
"awslabs.billing-cost-management-mcp-server": {
"command": "uvx",
"args": [
"awslabs.billing-cost-management-mcp-server@latest"
],
"env": {
"FASTMCP_LOG_LEVEL": "ERROR",
"AWS_PROFILE": "your-aws-profile",
"AWS_REGION": "your-region"
},
"disabled": false,
"autoApprove": []
}
}
}
mcp.json に記載する設定例 ② - AWS Pricing MCP Server -
{
"mcpServers": {
"awslabs.aws-pricing-mcp-server": {
"command": "uvx",
"args": [
"awslabs.aws-pricing-mcp-server@latest"
],
"env": {
"FASTMCP_LOG_LEVEL": "ERROR",
"AWS_PROFILE": "your-aws-profile",
"AWS_REGION": "your-region"
},
"disabled": false,
"autoApprove": []
}
}
}
実践:AIエージェントによるコスト分析
AWS からリリースされているAIエージェント「Kiro」を使用し、MCPサーバを有効化した状態で2つのパターンを試しました。
-
特定のAWSアカウントの1ヶ月先のコスト予測
-
新しくリソースを構築するときのコストの概算
今回は、2パターンの結果をMarkdownファイルに出力させてみました。
(内容は一部の抜粋となることをご了承ください)
特定のAWSアカウントの1ヶ月先のコスト予測
とあるアカウントに対して、1ヶ月先のコストを予測させるという例です。
Kiro に以下の指示を出しました。
今回は、コスト予測と削減や最適化の余地も分析するようにしてみました。
<対象のAWSアカウント名> のAWSアカウントの2025/12 月末のコスト予測をしてほしいです。
進めるにあたり下記を遵守してください
■ 遵守事項
- aws-pricing-mcp-server と billing-cost-management-mcp-server のMCPサーバを利用してください。
- ローカルの認証プロファイルは、xxxxxxxx を利用してください
- 利用している各AWSサービスごとの利用量を算出してください。
- コスト削減もしくは最適化の余地がある場合は、その箇所を提示してください。
- 結果は、ワークスペース内の/logs にmdファイルとしてまとめてください
■ 総コストの予測
## 📊 総コスト予測
### 予測コスト (USD)
- **予測値**: $******
- **予測範囲**: $****** - $******
- **信頼区間**: 80%
### 予測コスト (JPY) ※1USD=150円換算
- **予測値**: ¥******
- **予測範囲**: ¥****** - ¥******
■ サービス別コストの内訳
具体的に指示しなくても、消費の多いTop 10サービスを一覧化してくれました。
## 💰 サービス別コスト内訳 (2025年11月実績ベース)
### Top 10 コストサービス
| 順位 | サービス名 | 月額コスト (USD) | 月額コスト (JPY) | 構成比 |
|------|-----------|-----------------|-----------------|--------|
| 1 | Amazon RDS | $****** | ¥****** | 49.0% |
| 2 | Amazon ECS | $****** | ¥****** | 11.0% |
### その他のサービス
| サービス名 | 月額コスト (USD) | 月額コスト (JPY) |
|-----------|-----------------|-----------------|
| Amazon Cognito | $****** | ¥****** |
| Amazon ELB | $****** | ¥****** |
| AWS WAF | $****** | ¥****** |
■ コスト最適化の提案
RI(予約済みインスタンス)の検討や、開発環境のSingle-AZ化、gp3への変更など、具体的なアクションプランまで提示されました。これにより、コスト最適化に対する意思決定スピードが格段に向上します。
**現在のコスト**: $******/月 (¥******)
**最適化施策**:
- **Reserved Instances (RI) の検討**: 1年または3年のRIを購入することで、最大72%のコスト削減が可能
- **インスタンスサイズの見直し**: CloudWatchメトリクスでCPU/メモリ使用率を確認し、過剰なスペックがあれば適正サイズに変更
- **ストレージタイプの最適化**:
- 高IOPSが不要なDBはgp3に変更
- 古いスナップショットの削除
- **Multi-AZ構成の見直し**: 開発/ステージング環境でMulti-AZが不要な場合はSingle-AZに変更
**期待効果**: 月額 $******-****** (¥******-******) の削減可能性
■ コスト削減の優先順位
コスト削減の方法に続いて、どの施策を優先するべきかも考慮の上、整理されました。
## 📈 コスト削減の優先順位
### 即座に実施可能 (1-2週間)
1. CloudWatch/CloudTrailのログ保持期間最適化
2. 不要なリソース(古いスナップショット、未使用EBS等)の削除
3. ECSタスクサイズの見直し
**期待削減額**: 月額 $******-****** (¥******-******)
### 短期施策 (1-2ヶ月)
1. RDS Reserved Instancesの購入検討
2. ECS Fargate Spotの導入
3. Compute Savings Plansの検討
**期待削減額**: 月額 $******-****** (¥******-******)
### 中長期施策 (3-6ヶ月)
1. サポートプランの見直し
2. アーキテクチャ全体の見直し
**期待削減額**: 月額 $******-****** (¥******-******)
新しくリソースを構築するときのコストの概算
Amazon RDS for SQL Server を新規構築する際のコストを試算させます。
Kiroに以下の指示を出しました。
<AWSアカウント名> のAWSアカウントにおいて、Amazon RDS for SQL Server を構築します。
その際の1ヶ月のコストについて、分析・試算してください。
また、このアカウントにおける、構築後のコスト予測もお願いします。
進めるにあたり下記を遵守してください
■ 条件
- 用途は開発環境
- インスタンスクラスは db.m5.large
- Performance Insights と 拡張モニタリングを有効化
- ストレージタイプは、汎用 SSD (gp3)
- プロビジョンド IOPSは、12000
- ストレージスループットは、750 MiBps
■ 遵守事項
- aws-pricing-mcp-server と billing-cost-management-mcp-server のMCPサーバを利用してください。
- ローカルの認証プロファイルは、xxxxxxxx を利用してください
- コストは日本円での算出としてください、
- Cost Optimization Hub と Compute Optimizer は使用せず、取得可能なコスト情報から分析してください。
- アカウント名に対応するローカルの認証プロファイルを確認し、mcp.json に記述されているプロファイル名を修正してください。
- AWSプロファイルを確認するときは、~/.aws/config から使用できるプロファイ情報を参照してください。
- 結果は、ワークスペース内の/logs にmdファイルとしてまとめてください
結果は以下の通りになりました。
■ コスト内訳
AWS Pricing API を参照しているため、時間単価まで正確に反映されています。
## コスト内訳 (USD)
### 1. データベースインスタンス料金
**db.m5.large Multi-AZ (License Included)**
- 時間単価: $2.114/時間
- 月額 (730時間): **$1,543.22**
> **注**: License Includedモデルを選択しているため、SQL Serverライセンス料金が含まれています。
### 2. ストレージ料金 (GP3)
**Multi-AZ GP3ストレージ**
- 単価: $0.276/GB-月
- 想定容量: 100GB (開発環境の一般的な初期容量)
- 月額: **$27.60**
> **注**: Multi-AZ構成のため、ストレージは2倍の料金となります(プライマリとスタンバイ)。
### 3. バックアップストレージ料金
**自動バックアップ**
- 単価: $0.095/GB-月 (無料枠超過分)
- 無料枠: プロビジョニングされたストレージと同容量まで無料
- 想定: 無料枠内で運用 (100GB以下)
- 月額: **$0.00**
> **注**: 自動バックアップは、プロビジョニングされたデータベースストレージと同じ容量まで無料です。
■ 月額コスト総計
実際に掛かることになるコストの総計が整理されました。
この情報を元に事前にコスト計画を立てやすくなりました。
| 項目 | 月額 (USD) | 月額 (JPY) |
|------|------------|------------|
| DBインスタンス (db.m5.large Multi-AZ) | $1,543.22 | ¥231,483 |
| ストレージ (GP3 100GB Multi-AZ) | $27.60 | ¥4,140 |
| バックアップストレージ | $0.00 | ¥0 |
| Performance Insights | $0.00 | ¥0 |
| 拡張モニタリング | $3.00 | ¥450 |
| **合計** | **$1,573.82** | **¥236,073** |
> **為替レート**: 1 USD = 150 JPY で計算
■ 検討事項の補足
追加で検討する可能性のある項目についても整理されました。
ライセンスモデルの選択、開発環境におけるAZの検討、RIやデータ転送料金の考慮などが提示されました。
```markdown
## コスト最適化の検討事項
### 1. ライセンスモデルの選択
現在の構成では **License Included** を使用していますが、既存のSQL Serverライセンスがある場合は **BYOL (Bring Your Own License)** を検討できます。
- **BYOL (customer-provided media)**: $0.738/時間 (Multi-AZ)
- **月額差額**: 約 $1,003/月の削減可能
### 2. 開発環境での Single-AZ 検討
開発環境で高可用性が必須でない場合、Single-AZ構成を検討できます。
- **Single-AZ (License Included)**: $1.057/時間
- **月額**: 約 $771.61
- **削減額**: 約 $771/月
### 3. ストレージ容量の最適化
実際の使用量に応じてストレージ容量を調整してください。
- 50GB: $13.80/月 (Multi-AZ)
- 200GB: $55.20/月 (Multi-AZ)
### 4. Reserved Instances (RI)
長期利用が確定している場合、Reserved Instancesの購入で最大40-60%のコスト削減が可能です。
---
## 追加で発生する可能性のあるコスト
### データ転送料金
- 同一リージョン内のAZ間転送: $0.01/GB
- インターネットへのアウトバウンド: $0.114/GB (最初の10TB)
### スナップショットのエクスポート
- S3へのエクスポート: 別途S3料金が発生
### IOPSの追加
- GP3のベースライン (3,000 IOPS) を超える場合: 追加料金
まとめ
AWS環境のコスト分析は、従来はCost ExplorerやAWS Pricing Calculatorを使う必要がありましたが、
MCPサーバを活用することで、より効率的に実施できるようになりました。
本記事では、以下の2つのMCPサーバを活用したコスト分析の実践例を紹介しました。
-
Billing and Cost Management MCP Server
- 既存のAWS環境のコスト分析
- コスト予測
- コスト最適化の提案
-
AWS Pricing MCP Server
- 新規構築時のコスト試算
- 公式の料金情報を参照した精度の高い見積もり
実践例で得られた成果
1. コスト予測と最適化提案
- 1ヶ月先のコスト予測を自動で実施
- サービス別のコスト内訳を自動で整理
- コスト削減の優先順位を自動で提案
2. 新規構築時のコスト試算
- 構築前にコストを事前に把握
- ライセンスモデルや構成の選択肢を考慮した試算
- 追加で発生する可能性のあるコストも提示
MCPサーバを活用するメリット
- 効率性: AWSコンソールにアクセスすることなく、自然言語でコスト分析が可能
- 精度: AWS Pricing APIを直接参照することで、公式の料金情報を基にした試算が可能
- 自動化: コスト分析から最適化提案まで、一連の流れを自動化できる
- 再現性: 同じ手順で繰り返し分析できるため、定期的なコストレビューが容易
今後の展開
MCPサーバの活用によりコスト分析のハードルが下がることで、より多くのエンジニアが「コスト」という指標を武器に、最適なインフラ構築・運用に取り組めるようになると期待しています。
また、定期的なコストレビューを自動化することで、
継続的なコスト最適化につながることも期待できます。
Discussion