v1.1.0 — 7 Gateway x 125 MCP ツールアーキテクチャ
· 約3分で読めます
単一 Gateway(29 ツール)から 7 つの専門 Gateway x 125 MCP ツールへ全面再設計したマイルストーンリリースです。
主要な変化
1 Gateway → 7 Gateway · 29 ツール → 125 ツール · 19 Lambda 関数 · Sonnet インテント分類器の導入
Before / After: Gateway アーキテクチャ
| 項目 | Before (v1.0) | After (v1.1.0) |
|---|---|---|
| Gateway 数 | 1 (Ops) | 7 (ロールベース) |
| MCP ツール数 | 29 | 125 |
| Lambda 関数 | 5 | 19 |
| ルーティング | 単一経路 | 9 段階優先順位 |
| インテント分類 | キーワードマッチング | Sonnet 自然言語分類 |
| Container 応答時間 | ~50 秒 | ~23 秒 |
7 つのロールベース Gateway
各 Gateway が特定のドメインに最適化されたツールセットを提供します。agent.py の GATEWAYS ディクショナリで URL を管理します。
| Gateway | ツール数 | 主要機能 | Lambda 関数 |
|---|---|---|---|
| Network | 17 | VPC Flow Logs、SG ルール、Reachability | network_analyzer, reachability_analyzer, tgw_analyzer, vpn_analyzer, firewall_analyzer |
| Container | 24 | EKS、ECS、Istio トラブルシューティング | eks_analyzer, ecs_analyzer, istio_analyzer |
| IaC | 12 | CloudFormation、CDK、Terraform | cfn_analyzer |
| Data | 24 | DynamoDB、RDS、ElastiCache、MSK | dynamodb_analyzer, rds_analyzer, elasticache_analyzer, msk_analyzer |
| Security | 14 | IAM ポリシーシミュレーション、権限分析 | iam_analyzer |
| Monitoring | 16 | CloudWatch メトリクス/アラーム、CloudTrail イベント | cloudwatch_analyzer, cloudtrail_analyzer |
| Cost | 9 | Cost Explorer、Budgets 予算 | cost_analyzer, budget_analyzer |
19 の Lambda 関数
agent/lambda/ ディレクトリで管理され、create_targets.py で Gateway Target を一括作成します。
Gateway Target 作成
CLI の代わりに Python/boto3 を使用します (mcp.lambda + credentialProviderConfigurations)。
CLI の inlinePayload 問題により、プログラマティックな方式が必須です。
| # | Lambda | ドメイン | 主要機能 |
|---|---|---|---|
| 1 | network_analyzer | Network | VPC Flow Logs 分析、SG ルール検証 |
| 2 | reachability_analyzer | Network | VPC Reachability Analyzer 経路分析 |
| 3 | tgw_analyzer | Network | Transit Gateway ルーティング |
| 4 | vpn_analyzer | Network | Site-to-Site VPN ステータス/トンネル |
| 5 | firewall_analyzer | Network | Network Firewall ルール |
| 6 | eks_analyzer | Container | EKS クラスター、ノードグループ、アドオン |
| 7 | ecs_analyzer | Container | ECS サービス、タスク、インサイト |
| 8 | istio_analyzer | Container | Istio サービスメッシュ構成 |
| 9 | dynamodb_analyzer | Data | テーブル容量、GSI/LSI |
| 10 | rds_analyzer | Data | インスタンス性能、パラメータグループ |
| 11 | elasticache_analyzer | Data | クラスターステータス、Valkey 対応 |
| 12 | msk_analyzer | Data | ブローカーステータス、トピック分析 |
| 13 | iam_analyzer | Security | ポリシーシミュレーション、権限分析 |
| 14 | cloudwatch_analyzer | Monitoring | メトリクス/アラーム分析 |
| 15 | cloudtrail_analyzer | Monitoring | イベント検索 |
| 16 | cost_analyzer | Cost | Cost Explorer コスト/予測 |
| 17 | budget_analyzer | Cost | Budgets 予算モニタリング |
| 18 | cfn_analyzer | IaC | CloudFormation スタック/ドリフト |
| 19 | steampipe_query | Ops | Steampipe SQL クエリ実行 |
動的ルーティングシステム
src/app/api/ai/route.ts で 9 段階優先順位のキーワードベースルーティングを実行します。
agent.py:payload.gatewayパラメータでゲートウェイを選択route.ts: 9 段階優先順位のキーワードベースルーティング- Sonnet インテント分類器の導入 (
c56f557) — キーワード未マッチ時に自然言語分析で最適な Gateway を選択
AI テスト結果
Gateway 分離の効果を検証するため、104 問のテストを実施しました。
| 項目 | 結果 |
|---|---|
| テスト質問数 | 104 問 |
| ルーティング精度 | 93% (97/104) |
| Container 応答速度の改善 | 54% (50s → 23s) |
| Gateway 分離の効果 | ドメイン別専門ツールにより応答品質が向上 |
性能改善のポイント
Gateway を分離すると、エージェントが参照するツール数が減り、ツール選択の精度と応答速度の両方が向上します。 単一 Gateway(125 ツール)では LLM が適切なツールを見つけるのに時間がかかりますが、Container Gateway(24 ツール)では即座に関連ツールを選択します。