An open-source MCP server that groups the building blocks of consumer trip planning into a single tool surface, so an assistant can plan a trip end to end without juggling five separate integrations.
Written in TypeScript on the MCP SDK, with Axios for HTTP calls and Zod for schema validation. Works with Claude Desktop and any MCP-compatible client.
Worth understanding before you install it: this is an integration shell rather than a data source. You supply your own API keys for the flight, accommodation, currency and weather providers you choose, plus a Google Places key for attractions and restaurants. The server gives you the tool definitions, the parameter schemas and the wiring; the data comes from whichever providers you contract with.
That makes it most useful in two situations: as a starting point for a trip planning agent where you already hold provider credentials, and as a reference for how to structure a multi-service travel MCP server.
Documentation
Tools
searchFlights
Search flights between two points.
origin, destination: departure and arrival airport or city
departureDate, returnDate: return date optional for one-way
passengers: number of travellers
class: economy, business or first
searchAccommodation
Find hotels, apartments and other stays.
destination: city or location
checkIn, checkOut: stay dates
guests, rooms: party size
type: hotel, apartment and similar
getExchangeRate
from, to: currency codes such as USD and EUR
amount: optional, converts a specific sum
getWeatherForecast
location: city or location
date: date to forecast
days: optional forecast window
calculateTripBudget
Estimates total trip cost.
destination, duration in days, travelers
category: budget, mid-range or luxury
Install
git clone https://github.com/gs-ysingh/travel-mcp-server
cd travel-mcp-server
npm install
cp .env.example .env
The server calls providers on your behalf and ships with none of them:
Flights: Amadeus, Skyscanner or equivalent
Accommodation: a booking data provider
Currency: Fixer.io, ExchangeRate-API or equivalent
Weather: OpenWeatherMap, WeatherAPI or equivalent
Google Places: attractions and restaurants
They go in .env as FLIGHT_API_KEY, BOOKING_API_KEY, EXCHANGE_API_KEY, WEATHER_API_KEY and GOOGLE_PLACES_API_KEY.
Maturity
Early stage at the time of listing: a single commit, no published release, and the provider integrations are yours to complete. Treat it as a scaffold to build on rather than a finished product, and read the source before putting it in front of customers.