AI Travel Advisor
A content-rich travel website, turned into an intelligent conversational advisor grounded in the company’s own published content.
A travel business had a large website with destination pages, trip packages, itineraries, offers, FAQs, and editorial content. The content was valuable, but customers still had to browse across many pages to find the right trip.
The client wanted an AI-based travel advisor in the form of a chat experience. The advisor needed to answer customer questions, recommend relevant travel options, and stay grounded in the travel company's own published website content.
Thoughtful Robots designed and built the solution using Mastra as the AI agent framework. We also created an ingestion mechanism that transformed the website's published JSON and Markdown content into structured and unstructured knowledge sources for reliable AI retrieval.
The Problem
The website already had strong travel content, but it was not organized in a way that an AI advisor could use directly.
| Challenge | Impact on Customer Experience |
|---|---|
| Content was spread across destination pages, package pages, Markdown files, JSON files, and metadata. | Customers had to manually browse and compare pages. |
| Package data had exact facts like price, duration, dates, inclusions, and categories. | Generic keyword search could not answer precise travel questions reliably. |
| Editorial content carried descriptive meaning about destinations, experiences, and travel style. | Useful recommendations were hidden inside long-form content. |
| Customers asked mixed questions involving budget, dates, interests, inclusions, and destination mood. | The system needed both factual lookup and semantic reasoning. |
| Website content changed whenever the site was published. | The AI system needed a repeatable way to stay aligned with published content. |
The Strategy
We treated the published website as the source of truth.
Whenever the website was published, it produced a manifest containing references to JSON and Markdown files. Thoughtful Robots used this manifest as the starting point for ingestion.
The content was then separated into two useful forms:
| Knowledge Type | What It Contains | Where It Is Stored | Why It Matters |
|---|---|---|---|
| Structured data | Package names, prices, dates, destinations, durations, inclusions, tags, categories, availability, and metadata. | SQL database | Supports exact filtering and factual answers. |
| Unstructured data | Destination descriptions, itinerary narratives, travel notes, FAQs, highlights, and long-form Markdown content. | Vector database | Supports semantic search and natural-language discovery. |
This gave the AI advisor the ability to answer both precise and exploratory travel questions.
Ingestion Architecture
The ingestion pipeline converted published website content into AI-ready knowledge.
How The AI Advisor Answers Questions
The advisor does not rely on one search method. Instead, the Mastra agent classifies the user's query, retrieves the right type of information, ranks the results, and then generates a grounded response.
| Customer Query Type | Example Question | Retrieval Approach | Response Behavior |
|---|---|---|---|
| Structured lookup | "Show me trips under Rs. 80,000 for 5 days." | SQL database | Filters exact records by budget, duration, and availability. |
| Semantic discovery | "Where should I go for a calm beach holiday?" | Vector database | Finds destination and itinerary content that matches the intent. |
| Hybrid recommendation | "Suggest a premium 6-day trip with beaches and good food." | SQL database plus vector database | Combines factual package filters with descriptive travel context. |
| Clarification | "Plan something nice for December." | Agent-led follow-up | Asks for missing details like budget, destination preference, duration, or travel style. |
| Comparison | "Which option is better for a relaxed family trip?" | Ranked structured and unstructured results | Compares relevant options using both facts and experience descriptions. |
Example Customer Experience
| Customer Question | What The Advisor Does |
|---|---|
| "What are the best honeymoon destinations in April?" | Uses seasonal and destination content to suggest relevant options. |
| "Do you have trips below Rs. 1 lakh?" | Uses structured package data to filter available options. |
| "I want a relaxing 4-day beach vacation." | Combines package facts with semantic destination matching. |
| "What is included in this package?" | Pulls exact inclusions from structured data. |
| "Which destination is better for kids?" | Compares destination content, itinerary notes, and relevant package metadata. |
What Thoughtful Robots Built
| Component | Purpose |
|---|---|
| Manifest-based ingestion | Reads the website's published manifest and identifies content files. |
| JSON parser | Extracts structured package, destination, and metadata fields. |
| Markdown processor | Converts long-form pages into clean text chunks. |
| SQL storage | Stores exact facts for filtering, comparison, and factual answers. |
| Vector storage | Stores embedded content chunks for semantic discovery. |
| Mastra agent | Orchestrates query understanding, retrieval, ranking, and response generation. |
| Chat interface | Gives customers a natural way to discover trips and ask follow-up questions. |
Before And After
| Before | After |
|---|---|
| Customers browsed multiple pages manually. | Customers asked questions through chat. |
| Search depended heavily on keywords. | The advisor understood intent and context. |
| Package data and editorial content were disconnected. | Structured and unstructured knowledge worked together. |
| Website updates were not automatically AI-ready. | Published content could be ingested into the AI system. |
| Discovery was passive. | Discovery became conversational and guided. |
Business Value
| Business Goal | How The Solution Helped |
|---|---|
| Improve first-time visitor engagement | Customers could ask natural questions instead of browsing from scratch. |
| Increase relevance of recommendations | The advisor used the company's own content and package data. |
| Reduce manual discovery effort | Users could filter, compare, and explore through chat. |
| Reuse existing content | Published website files became an AI-ready knowledge base. |
| Build a scalable AI foundation | The same ingestion pattern can support future advisors, internal tools, and customer journeys. |
Short Summary
Thoughtful Robots helped a travel business transform its published website content into an AI-powered travel advisor. The ingestion layer converted JSON and Markdown files from the website manifest into structured SQL data and semantic vector data. Mastra powered the advisor layer on top, orchestrating retrieval, ranking, and grounded responses so customers could ask questions, compare options, and discover relevant trips through conversation.
// Technical architecture · AI Hub
AI Hub is the intelligence layer that connects a published website, structured business data, semantic content search, agent tools, and an AI chat advisor into one coordinated system.
It transforms website content into an AI-ready knowledge system and uses a Mastra-powered agent to retrieve, compare, rank, and respond with grounded answers.
Architecture Layers
| Layer | Purpose |
|---|---|
| Website content source | Uses the published website manifest as the source of truth. |
| Ingestion pipeline | Reads JSON and Markdown files, cleans them, and prepares them for AI usage. |
| Data storage layer | Stores structured facts in SQL and unstructured content in a vector database. |
| Tool layer | Exposes dedicated tools for structured lookup, semantic search, comparison, ranking, and response preparation. |
| Agent orchestration layer | Uses Mastra to understand the query, call the right tools, compare results, rank evidence, and generate answers. |
| Chat experience | Presents the AI advisor as a conversational interface on the website. |
How It Works
When the website is published, a manifest is generated with references to content files. AI Hub reads that manifest and processes two types of content.
| Content Type | Example | Storage | Used For |
|---|---|---|---|
| Structured data | Packages, dates, prices, destinations, metadata, inclusions | SQL database | Exact filtering, factual answers, comparisons |
| Unstructured data | Markdown pages, descriptions, FAQs, itinerary notes, travel narratives | Vector database | Intent matching, semantic discovery, contextual reasoning |
For exact questions, such as budget, dates, availability, or package inclusions, the agent calls structured-data tools that query the SQL database.
For intent-based questions, such as "quiet beach holiday" or "premium family trip", the agent calls semantic-search tools that retrieve relevant chunks from the vector database.
For richer questions, the agent calls both tool types, compares the structured and unstructured results, ranks the strongest matches, and then generates a grounded response.
Agent Tool Flow
Customer query -> Mastra agent -> intent and constraint analysis -> structured lookup and/or semantic search -> compare evidence -> rank best matches -> grounded response.
Ranking Logic
The ranking step is important because the best answer often comes from combining both sources.
| Signal | Source | Why It Matters |
|---|---|---|
| Exact match | SQL database | Confirms facts like price, duration, destination, category, or availability. |
| Semantic match | Vector database | Captures intent, mood, travel style, and descriptive relevance. |
| Constraint fit | SQL database | Checks whether the option satisfies user constraints. |
| Context fit | Vector database | Checks whether the experience matches the user's stated preference. |
| Confidence | Combined | Helps the agent choose whether to answer directly or ask a follow-up question. |
Example Query
If a customer asks:
"Suggest a premium 5-day beach holiday with good food."
The agent may:
- Call the structured lookup tool to find 5-day beach-related packages.
- Call the semantic search tool to find content about premium stays, coastal experiences, food, and relaxed travel.
- Compare both result sets.
- Rank trips that satisfy the duration constraint and also match the desired travel style.
- Generate a concise recommendation with supporting reasons.
Core Architecture Flow
Published website -> manifest -> ingestion pipeline -> structured data and unstructured content -> SQL database and vector database -> agent tools -> Mastra agent -> ranked answer -> AI chat advisor.
Short Summary
AI Hub transforms published website content into an AI-ready knowledge system. It ingests JSON and Markdown files from the website manifest, separates structured facts from unstructured content, stores them in SQL and vector databases, and exposes both sources through agent tools.
A Mastra-powered agent calls the right tools, compares structured and unstructured evidence, ranks the best matches, and delivers accurate conversational answers through chat.