v1.1.0 — 7 Gateway x 125 MCP Tools Architecture
A milestone release featuring a complete redesign from a single Gateway (29 tools) to 7 specialized Gateways x 125 MCP tools.
1 Gateway → 7 Gateways · 29 tools → 125 tools · 19 Lambda functions · Sonnet intent classifier introduced
Before / After: Gateway Architecture
| Item | Before (v1.0) | After (v1.1.0) |
|---|---|---|
| Gateway Count | 1 (Ops) | 7 (role-based) |
| MCP Tools | 29 | 125 |
| Lambda Functions | 5 | 19 |
| Routing | Single path | 9-level priority |
| Intent Classification | Keyword matching | Sonnet natural language classification |
| Container Response Time | ~50s | ~23s |
7 Role-Based Gateways
Each Gateway provides a tool set optimized for a specific domain. Gateway URLs are managed in the GATEWAYS dictionary in agent.py.
| Gateway | Tools | Key Features | Lambda Functions |
|---|---|---|---|
| Network | 17 | VPC Flow Logs, SG Rules, Reachability | network_analyzer, reachability_analyzer, tgw_analyzer, vpn_analyzer, firewall_analyzer |
| Container | 24 | EKS, ECS, Istio troubleshooting | 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 policy simulation, permission analysis | iam_analyzer |
| Monitoring | 16 | CloudWatch metrics/alarms, CloudTrail events | cloudwatch_analyzer, cloudtrail_analyzer |
| Cost | 9 | Cost Explorer, Budgets | cost_analyzer, budget_analyzer |
19 Lambda Functions
Managed in the agent/lambda/ directory, with create_targets.py for bulk Gateway Target creation.
Uses Python/boto3 instead of CLI (mcp.lambda + credentialProviderConfigurations).
The programmatic approach is required due to CLI inlinePayload issues.
| # | Lambda | Domain | Key Features |
|---|---|---|---|
| 1 | network_analyzer | Network | VPC Flow Logs analysis, SG rule validation |
| 2 | reachability_analyzer | Network | VPC Reachability Analyzer path analysis |
| 3 | tgw_analyzer | Network | Transit Gateway routing |
| 4 | vpn_analyzer | Network | Site-to-Site VPN status/tunnels |
| 5 | firewall_analyzer | Network | Network Firewall rules |
| 6 | eks_analyzer | Container | EKS clusters, node groups, add-ons |
| 7 | ecs_analyzer | Container | ECS services, tasks, insights |
| 8 | istio_analyzer | Container | Istio service mesh configuration |
| 9 | dynamodb_analyzer | Data | Table capacity, GSI/LSI |
| 10 | rds_analyzer | Data | Instance performance, parameter groups |
| 11 | elasticache_analyzer | Data | Cluster status, Valkey support |
| 12 | msk_analyzer | Data | Broker status, topic analysis |
| 13 | iam_analyzer | Security | Policy simulation, permission analysis |
| 14 | cloudwatch_analyzer | Monitoring | Metrics/alarm analysis |
| 15 | cloudtrail_analyzer | Monitoring | Event search |
| 16 | cost_analyzer | Cost | Cost Explorer cost/forecasting |
| 17 | budget_analyzer | Cost | Budgets monitoring |
| 18 | cfn_analyzer | IaC | CloudFormation stack/drift |
| 19 | steampipe_query | Ops | Steampipe SQL query execution |
Dynamic Routing System
9-level priority keyword-based routing in src/app/api/ai/route.ts.
agent.py: Gateway selection viapayload.gatewayparameterroute.ts: 9-level priority keyword-based routing- Sonnet intent classifier introduced (
c56f557) — Selects optimal Gateway via natural language analysis when no keyword match
AI Test Results
104-question test conducted to verify the effectiveness of Gateway separation.
| Item | Result |
|---|---|
| Test Questions | 104 |
| Routing Accuracy | 93% (97/104) |
| Container Response Speed Improvement | 54% (50s → 23s) |
| Gateway Separation Effect | Improved response quality through domain-specific tools |
Separating Gateways reduces the number of tools the agent references, improving both tool selection accuracy and response speed. With a single Gateway (125 tools), the LLM takes time to find the right tool, but with the Container Gateway (24 tools), it selects the relevant tool immediately.