ico

Cases

AI-Powered Travel Search and Ranking with MCP + RAG on AWS

About the Company
travelagency-canada-logo

 

A leading Canadian online travel agency specializing in discounted vacation packages, flights, hotels, and cruises. The company supports Canadian travelers through its online booking experience and a team of 150+ travel agents, offering services such as last-minute deals and travel financing. The agency is a licensed retail travel agency in Ontario, governed by the Travel Industry Council of Ontario (TICO), with customer travel funds protected in Ontario by TICO and in Quebec by OPC.

The Challenge

The agency offers a broad set of travel products through its website, including vacation packages. For the vacation packages experience, the search and ranking layer was constrained by the underlying data model and retrieval approach. Package results could be filtered using structured attributes exposed by the vacations/packages API, but critical traveler intent often lives in unstructured partner content — hotel descriptions and amenity lists delivered as files and stored separately. Without an AI-powered retrieval layer that can index and search this content semantically, those details couldn't be used effectively to match intent at query time.

 

In parallel, ranking logic could not reliably incorporate business signals such as "top picks" or recent booking momentum as first-class ordering criteria. As a result, highly desirable packages could appear on later pages while lower-performing options surfaced earlier. Technically, the system lacked a unified mechanism to combine: (1) real-time package availability and pricing, (2) AI-powered semantic matching against unstructured hotel content, and (3) deterministic ranking boosts based on the agency's performance metrics.

The Solution

Elevata addressed these constraints by introducing a search architecture that supports natural-language intent, matches that intent across both structured and unstructured data, and returns results ordered using the agency's business signals — while preserving real-time pricing behavior from the source API. To deliver this, Elevata implemented an MCP (Model Context Protocol) server on AWS that leverages Bedrock models, sitting between the user experience and the agency's internal data sources, enabling AI-powered natural-language travel search with business-aware ranking.

 

The MCP server was built in Node.js and deployed on Kubernetes within the agency's AWS environment, reusing existing CI/CD pipeline and operational patterns. From an architecture perspective, the server aggregates three primary sources:

 

  • The Vacation Packages API for package availability and current pricing
  • Amazon S3 for partner-provided hotel content (descriptions and amenities)
  • Bedrock Knowledge Base to index and retrieve relevant content (backed by Amazon OpenSearch Vector Database)
  • Amazon OpenSearch Service to support ranking logic

 

A key part of the solution is the Retrieval Augmented Generation (RAG) pattern used for hotel content. Partner descriptions and amenity data stored in S3 are ingested into a Bedrock Knowledge Base, allowing the MCP server to retrieve the most relevant content chunks at query time based on the traveler's natural-language intent. That retrieved context is then used to drive matching and filtering across packages — so the user can search the way they would on modern consumer platforms (e.g., "a family-friendly hotel with a kids club near the beach"), even when those preferences live inside unstructured text rather than fixed dropdown filters.

 

Once candidate packages are identified, the MCP layer applies the agency's business logic for ordering results. The same query can return packages ranked using internal performance signals — such as top picks and recent booking momentum — so high-performing inventory is surfaced earlier in the customer journey rather than being buried on later pages.

 

Pricing remains authoritative to the agency's platform. Every query triggers a call to the packages API to retrieve the current price at the moment of search, ensuring the experience reflects real-time pricing changes without maintaining a separate pricing cache inside the MCP layer.

 

Finally, the MCP server was implemented as a reusable foundation. The initial focus was the vacations/packages API, but the design supports extending the same RAG-backed integration pattern to additional APIs over time — for example, hotels-only or flights-only search — without rebuilding the architecture.

The Outcome

With the MCP layer in place, the agency introduced an AI-powered search experience that lets travelers describe what they want in plain language and receive results matched against hotel descriptions and amenities — without navigating complex filter combinations. Because the experience preserves real-time pricing from the packages API, customers see current prices at the moment they search.

 

For the agency, the most immediate impact is improved discoverability and merchandising control. Results can now be ranked using internal business signals — such as top picks and recent booking momentum — so high-performing packages are easier to find earlier in the journey instead of appearing on later pages. This aligns product discovery with commercial priorities while keeping the experience grounded in customer intent.

 

Operationally, the MCP server establishes a repeatable foundation for expanding this capability across the site. Because the implementation aggregates multiple data sources (API, S3 content, Bedrock Knowledge Base, and OpenSearch) through a single interface and runs in the agency's Kubernetes environment using existing deployment pipelines, the same RAG-backed approach can be extended beyond vacation packages to other experiences — such as hotels-only or flights-only — while maintaining consistent ranking logic, real-time pricing behavior, and operational governance.

ico

Alcance Novos Horizontes com a Elevata

Descubra como nossas soluções inovadoras de nuvem podem transformar seu negócio. Agende uma consulta personalizada hoje e inicie sua jornada rumo à excelência digital com a Elevata.