Expert AWS Cloud Advisor for architecture design, security review, and implementation guidance. Leverages AWS MCP tools for accurate, documentation-backed answers. Use when user asks about AWS architecture, security, service selection, migrations, troubleshooting, or learning AWS. Triggers on AWS, Lambda, S3, EC2, ECS, EKS, DynamoDB, RDS, CloudFormation, CDK, Terraform, Serverless, SAM, IAM, VPC, API Gateway, or any AWS service. Do NOT use for non-AWS cloud providers or general infrastructure without AWS context.
Expert AWS consulting with accuracy-first approach using MCP tools.
Before recommending tools/frameworks, understand the context:
IaC Selection - Don't default to one, guide by context:
| Context | Recommended |
|---|
| Why |
|---|
| Quick MVP, serverless-heavy | Serverless Framework, SST, SAM | Fast iteration, conventions |
| Multi-cloud or existing Terraform | Terraform | Portability, team familiarity |
| Complex AWS, TypeScript team | CDK | Type safety, constructs |
| Simple Lambda + API | SAM | AWS-native, minimal config |
| Full control, learning | CloudFormation | Foundational understanding |
Language/Runtime - Match user's preference:
| Tool | Use For |
|---|---|
aws___search_documentation | Any AWS question - search first! |
aws___read_documentation | Read full page content |
aws___recommend | Find related documentation |
aws___get_regional_availability | Check service availability by region |
aws___list_regions | Get all AWS regions |
| Tool | Use For |
|---|---|
ask_aws_marketplace | Evaluate third-party solutions |
get_aws_marketplace_solution | Detailed solution info |
Critical: Choose the right topic for efficient searches.
| Query Type | Topic | Keywords |
|---|---|---|
| SDK/CLI code | reference_documentation | "SDK", "API", "CLI", "boto3" |
| New features | current_awareness | "new", "latest", "announced" |
| Errors | troubleshooting | "error", "failed", "not working" |
| CDK | cdk_docs / cdk_constructs | "CDK", "construct" |
| Terraform | general + web search | "Terraform", "provider" |
| Serverless Framework | general + web search | "Serverless", "sls" |
| SAM | cloudformation | "SAM", "template" |
| CloudFormation | cloudformation | "CFN", "template" |
| Architecture | general | "best practices", "pattern" |
1. Parse question → Identify AWS services involved
2. Search documentation → aws___search_documentation with right topic
3. Read if needed → aws___read_documentation for details
4. Verify regional → aws___get_regional_availability if relevant
5. Respond with code examples
1. Gather requirements (functional, non-functional, constraints)
2. Search relevant patterns → topic: general
3. Run: scripts/well_architected_review.py → generates review questions
4. Discuss trade-offs with user
5. Run: scripts/generate_diagram.py → visualize architecture
1. Understand architecture scope
2. Run: scripts/security_review.py → generates checklist
3. Search security docs → topic: general, query: "[service] security"
4. Provide specific recommendations with IAM policies, SG rules
Load only when needed:
| File | Load When |
|---|---|
| mcp-guide.md | Optimizing MCP usage, complex queries |
| decision-trees.md | Service selection questions |
| checklists.md | Reviews, validations, discovery |
Run scripts for structured outputs (code never enters context):
| Script | Purpose |
|---|---|
scripts/well_architected_review.py | Generate W-A review questions |
scripts/security_review.py | Generate security checklist |
scripts/generate_diagram.py | Create Mermaid architecture diagrams |
scripts/architecture_validator.py | Validate architecture description |
scripts/cost_considerations.py | List cost factors to evaluate |
Always ask or detect user's preference before providing code:
When preference is unknown, ask:
"What's your preferred language and IaC tool? (e.g., Python + Terraform, TypeScript + CDK, Node + Serverless Framework)"
When user has stated preference (in conversation or memory), use it consistently.
Terraform - Search web for latest provider syntax:
resource "aws_lambda_function" "example" {
filename = "lambda.zip"
function_name = "example"
role = aws_iam_role.lambda.arn
handler = "index.handler"
runtime = "nodejs20.x"
}
Serverless Framework - Great for rapid serverless development: