跳到主要内容

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 工具数量29125
Lambda 函数519
路由单一路径9 级优先级
意图分类关键词匹配Sonnet 自然语言分类
Container 响应时间~50 秒~23 秒

7 个基于角色的 Gateway

每个 Gateway 提供针对特定领域优化的工具集。URL 在 agent.pyGATEWAYS 字典中管理。

Gateway工具数主要功能Lambda 函数
Network17VPC Flow Logs、SG 规则、Reachabilitynetwork_analyzerreachability_analyzertgw_analyzervpn_analyzerfirewall_analyzer
Container24EKS、ECS、Istio 故障排查eks_analyzerecs_analyzeristio_analyzer
IaC12CloudFormation、CDK、Terraformcfn_analyzer
Data24DynamoDB、RDS、ElastiCache、MSKdynamodb_analyzerrds_analyzerelasticache_analyzermsk_analyzer
Security14IAM 策略模拟、权限分析iam_analyzer
Monitoring16CloudWatch 指标/告警、CloudTrail 事件cloudwatch_analyzercloudtrail_analyzer
Cost9Cost Explorer、Budgets 预算cost_analyzerbudget_analyzer

19 个 Lambda 函数

agent/lambda/ 目录中管理,使用 create_targets.py 批量创建 Gateway Target。

Gateway Target 创建

使用 Python/boto3 而非 CLI(mcp.lambda + credentialProviderConfigurations)。 由于 CLI 的 inlinePayload 问题,必须采用编程方式。

#Lambda领域主要功能
1network_analyzerNetworkVPC Flow Logs 分析、SG 规则验证
2reachability_analyzerNetworkVPC Reachability Analyzer 路径分析
3tgw_analyzerNetworkTransit Gateway 路由
4vpn_analyzerNetworkSite-to-Site VPN 状态/隧道
5firewall_analyzerNetworkNetwork Firewall 规则
6eks_analyzerContainerEKS 集群、节点组、插件
7ecs_analyzerContainerECS 服务、任务、洞察
8istio_analyzerContainerIstio 服务网格配置
9dynamodb_analyzerData表容量、GSI/LSI
10rds_analyzerData实例性能、参数组
11elasticache_analyzerData集群状态、Valkey 支持
12msk_analyzerDataBroker 状态、主题分析
13iam_analyzerSecurity策略模拟、权限分析
14cloudwatch_analyzerMonitoring指标/告警分析
15cloudtrail_analyzerMonitoring事件搜索
16cost_analyzerCostCost Explorer 成本/预测
17budget_analyzerCostBudgets 预算监控
18cfn_analyzerIaCCloudFormation 堆栈/漂移
19steampipe_queryOpsSteampipe 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 个工具)下可以立即选中相关工具。