AWS AI Engineering Month Competition Submission
Building with Agents using Amazon Bedrock AgentCore and AWS Strands
A production-ready multi-agent system that transforms complex hotel booking workflows into natural conversations through intelligent agent orchestration.
Hotel booking involves complex workflows: search, policy evaluation, booking management, and communication. Traditional systems force users through rigid interfaces, requiring multiple interactions for simple changes and leaving customers frustrated when policies aren't clear upfront.
Real-world pain points:
- 2 AM booking changes that require calling customer service
- Hidden cancellation fees discovered too late
- Starting over when modifying existing bookings
- No memory of previous preferences or conversations
Instead of building another booking form, I created a team of AI specialists that work together like a hotel's back-office staff:
- Supervisor Agent: Orchestrates workflows with persistent memory and policy-aware routing
- Specialized Agents: Each handles a specific domain (search, booking, policies, notifications)
- A2A Communication: Agents collaborate through Agent-to-Agent protocols
- Policy-Aware Workflows: Automatic compliance checking before any booking action
- Memory Service: Persistent conversation context across sessions (7-day retention)
- Gateway Service: Secure Lambda function access via Model Context Protocol (MCP)
- Runtime Service: Production deployment with automatic scaling and observability
- Identity Service: OAuth2 authentication with fine-grained access control
- Lambda Functions: Business logic for hotel inventory, booking, and policy management
- DynamoDB: Hotel inventory and reservation data storage
- Cognito: Authentication and authorization for AgentCore Gateway
- Knowledge Base: Hotel policies and advisory information (Bedrock Knowledge Base)
User: "I need to cancel my booking for next week, but I'm worried about fees."
Traditional System: Navigate → Find booking → Read policy → Call support → Wait → Explain...
Our System:
1. Supervisor identifies policy-sensitive cancellation
2. Guest Advisory Agent retrieves specific policy
3. Reservation Agent calculates exact fees and alternatives
4. Present clear options: "Cancelling now = $50 fee, modifying dates = free until tomorrow"
5. User chooses, system executes, confirmation sent
- Remembers preferences across sessions ("ground floor rooms like last time")
- Maintains conversation context ("your previous concern about cancellation fees")
- Enables intelligent recommendations based on history
- Error Handling: Graceful degradation when components fail
- Observability: Deep insights into agent interactions and performance
- Scalability: Independent agent scaling based on demand
- Security: End-to-end authentication and authorization
├── app/ # Multi-agent application
│ ├── src/
│ │ ├── agents/ # Individual agent implementations
│ │ ├── core/ # Supervisor and memory management
│ │ ├── config/ # Configuration management
│ │ └── utils/ # Shared utilities
│ └── scripts/ # Development and deployment tools
│
├── infrastructure/ # AWS CDK infrastructure
│ ├── lib/
│ │ ├── constructs/ # Reusable CDK constructs
│ │ └── config/ # Infrastructure configuration
│ └── lambda/ # Lambda function implementations
│
└── README.md # This file
AI & Agents:
- Amazon Bedrock AgentCore (Memory, Gateway, Runtime, Identity)
- AWS Strands Agents (Multi-agent framework)
- Model Context Protocol (MCP) for tool integration
- Agent2Agent Protocol (A2A) for multi-agent communication
Infrastructure:
- AWS CDK (TypeScript) for infrastructure as code
- AWS Lambda for business logic
- Amazon DynamoDB for data storage
- Amazon Cognito for authentication
- Amazon Bedrock Knowledge Base for policies
Application:
- Python 3.12 with async/await patterns
- Pydantic for configuration and data validation
- UV package manager for dependency management
- 4x faster support interactions (12 minutes → 2-3 minutes)
- 24/7 intelligent assistance without staffing costs
- Reduced abandoned bookings through policy clarity
- Improved customer retention via seamless modifications
- Conversational booking instead of form-filling
- Proactive policy guidance prevents booking mistakes
- Contextual recommendations based on actual preferences
- Seamless cross-session continuity
This project demonstrates:
- Multiple AgentCore Services: Memory, Gateway, Runtime, and Identity working together
- Third-Party Integration: AWS Strands Agents framework with production deployment
- Real Business Value: Solving actual hotel booking pain points with measurable impact
- Production Architecture: Error handling, observability, and scalable infrastructure
- Advanced AI Patterns: Policy-aware workflows and intelligent agent orchestration
- Blog Post: Building Production Multi-Agent Systems: My Experience with Amazon Bedrock AgentCore, and AWS Strands Agents
This project showcases the transformative potential of AWS Strands Agents and Amazon Bedrock AgentCore for building production-ready multi-agent systems. By combining Memory persistence, Gateway tool access, Runtime scalability, and Identity security, we've created a foundation for AI workflows that solve real business problems at scale.
The future of customer service: intelligent agent teams that think, remember, and collaborate like the best human support staff.