A comprehensive travel planning server for flight search, accommodation booking, currency exchange, and weather forecasting.
A Model Context Protocol (MCP) server for comprehensive travel planning, providing flight search, accommodation booking, currency exchange, weather forecasting, and trip budget calculation capabilities.
git clone <repository-url>
cd travel-mcp-server
npm install
.env.example
to .env
You'll need to obtain API keys from the following services:
Update your .env
file with these keys:
FLIGHT_API_KEY=your_flight_api_key
BOOKING_API_KEY=your_booking_api_key
EXCHANGE_API_KEY=your_exchange_api_key
WEATHER_API_KEY=your_weather_api_key
GOOGLE_PLACES_API_KEY=your_google_places_api_key
Run the server in development mode with hot reload:
npm run dev
Build and start the server:
npm run build
npm start
Run with automatic restart on file changes:
npm run watch
The MCP server provides the following tools:
search_flights
)Search for flights between destinations with customizable options.
Parameters:
origin
: Departure airport/citydestination
: Arrival airport/citydepartureDate
: Departure datereturnDate
: Return date (optional for one-way)passengers
: Number of passengersclass
: Flight class (economy, business, first)search_accommodation
)Find hotels, vacation rentals, and other accommodation options.
Parameters:
destination
: City or locationcheckIn
: Check-in datecheckOut
: Check-out dateguests
: Number of guestsrooms
: Number of roomstype
: Accommodation type (hotel, apartment, etc.)get_exchange_rate
)Get current exchange rates between currencies.
Parameters:
from
: Source currency code (e.g., USD)to
: Target currency code (e.g., EUR)amount
: Amount to convert (optional)get_weather_forecast
)Check weather conditions for your travel destination.
Parameters:
location
: City or locationdate
: Date for forecastdays
: Number of days to forecast (optional)calculate_trip_budget
)Calculate estimated trip costs including flights, accommodation, and daily expenses.
Parameters:
destination
: Travel destinationduration
: Trip duration in daystravelers
: Number of travelerscategory
: Budget category (budget, mid-range, luxury)travel-mcp-server/
āāā src/
ā āāā index.ts # Main server entry point
ā āāā services/
ā āāā FlightService.ts # Flight search functionality
ā āāā AccommodationService.ts # Accommodation search
ā āāā CurrencyService.ts # Currency exchange
ā āāā WeatherService.ts # Weather forecasting
āāā dist/ # Compiled TypeScript output
āāā package.json # Project dependencies and scripts
āāā tsconfig.json # TypeScript configuration
āāā .env # Environment variables (not in repo)
āāā .gitignore # Git ignore rules
āāā README.md # This file
This server can be used with any MCP-compatible client such as:
Add the server to your MCP client configuration:
{
"mcpServers": {
"travel-planner": {
"command": "npx",
"args": ["travel-mcp-server"]
}
}
}
src/services/
src/index.ts
npm test
git checkout -b feature-name
npm test
git commit -m 'Add feature'
git push origin feature-name
This project is licensed under the ISC License - see the LICENSE file for details.
If you encounter any issues or have questions:
Note: Remember to keep your API keys secure and never commit them to version control. Always use environment variables for sensitive configuration.
A multi-model agent for managing tasks across various platforms, requiring API keys for different AI models.
Interact with Home Assistant to control smart home devices, query states, manage automations, and troubleshoot your smart home setup.
An MCP server that analyzes the screen with OmniParser to automate GUI operations.
Manage schedules using the Dooray API. Requires API key, member ID, and calendar ID to be configured.
Interact with Google Workspace services like Gmail and Google Calendar.
Provides real-time currency conversion and exchange rate data using the Frankfurter API.
A simple note storage system with tools to add and summarize notes using a custom note:// URI scheme.
A Python monorepo for AI-powered project management and productivity servers, utilizing the Claude API.
Interact with and control your web browser via a browser extension.
A server for interacting with the Hyperweb platform and its tools using AI agents.