A production-grade multi-agent AI system that plans, books, manages, and supports complex travel itineraries — from initial planning through active trip support to post-trip maintenance.
- 13 Specialized AI Agents (Relationship Manager, Synthesizer, Logistics, Accommodation, Excursion, Budget, Security, Locations Intel, Concierge, Live Re-Routing, Emergency, Feedback/Claims, Profile)
- 14 MCP Tool Servers (flights, accommodation, routing, weather, currency, safety, places, notifications, flight-status, emergency, payments, messaging, profile, RAG)
- RAG Knowledge Base (ChromaDB, 9 collections, OpenAI embeddings, Pahalgam domain knowledge pre-seeded)
- Redis Streams event bus for real-time inter-agent communication
- PostgreSQL state store (Prisma ORM)
- Next.js frontend with trip planner, agent activity feed, itinerary view
cp .env.example .env
# Fill in API keys (system works without them in mock mode)
# Required for full functionality: ANTHROPIC_API_KEYIf you prefer to run PostgreSQL, Redis, and ChromaDB inside Docker containers instead of locally, start them now:
pnpm docker:up
# You can tear them down later with: pnpm docker:downThe system requires a PostgreSQL database for state storage (trips, segments, expenses, etc.). Ensure you have PostgreSQL running locally or remotely, then: ```bash
pnpm db:migrate
pnpm db:generate
pnpm db:seed ```
```bash pnpm install ```
pnpm buildcd packages/rag-pipeline
pip install -r requirements.txt
python3 src/ingest.py --seedpnpm cli
# Then type: "Plan a honeymoon trip to Pahalgam, Kashmir for 2 people, June 15-22, INR 150,000 budget"pnpm acceptance
# Requires ANTHROPIC_API_KEY for LLM-dependent testspnpm --filter @travel/frontend dev
# Visit http://localhost:3000packages/
shared/ — TypeScript types, schemas, event bus, utilities
orchestrator/ — 13 agent characters, Synthesizer, RM, CLI
mcp-flights/ — Flight search (Amadeus + Duffel)
mcp-accommodation/ — Hotel search (Booking.com + Google Hotels)
mcp-routing/ — Directions + places (Google Maps)
mcp-weather/ — Forecasts (OpenWeatherMap + Visual Crossing)
mcp-currency/ — FX rates (Open Exchange Rates + Wise)
mcp-safety/ — Travel advisories + hospitals
mcp-places/ — Restaurants + attractions (Google + Foursquare)
mcp-notifications/ — Push + SMS + email + WhatsApp (Twilio, SendGrid)
mcp-flight-status/ — Real-time flight tracking (FlightAware)
mcp-emergency/ — Crisis response (embassies, emergency numbers)
mcp-payments/ — Payments + receipt scanning (Stripe, Mindee)
mcp-messaging/ — WhatsApp + Telegram ingress
mcp-profile/ — Traveler profile CRUD
mcp-rag/ — RAG retrieval MCP bridge
rag-pipeline/ — Python: ChromaDB setup, ingestion, FastAPI retrieval
scheduler/ — node-cron workflows (pre-flight, briefing, scans)
webhook-ingress/ — Express webhook receiver (FlightAware, Stripe, etc.)
frontend/ — Next.js trip planner + active trip dashboard
The system is validated against this acceptance scenario:
{
"destination": "Pahalgam, Jammu & Kashmir, India",
"dates": { "start": "2026-06-15", "end": "2026-06-22" },
"budget": { "amount": 150000, "currency": "INR" },
"party_size": 2,
"purpose": "honeymoon",
"preferences": {
"accommodation_style": "boutique",
"activity_level": "moderate",
"dietary": "vegetarian",
"must_include": ["Betaab Valley", "shikara ride"],
"avoid": ["overcrowded spots"]
}
}- T-24hr flight delay injection → re-routing fires ✅
- Day 2 morning briefing trigger → daily push ✅
- Concierge "find vegetarian restaurant nearby" with GPS ✅
- Medical emergency at Chandanwari → hospital route + contacts ✅
- Post-trip feedback collection → RAG ingestion ✅
- Passport expiry scan → alert if within 6 months ✅
| API | Est. Monthly Cost |
|---|---|
| Amadeus + Duffel | $0 (free tier) |
| Google Maps Platform | $0-50 |
| OpenWeatherMap | $0 |
| OpenAI Embeddings | $5-15 |
| Twilio SMS | $1-5 |
| FlightAware | $0-20 |
| TOTAL | $6-90/month |