home / mcp / mcp travel concierge server

MCP Travel Concierge Server

🌟 MCP Travel Concierge Server - AI-powered travel planning with Google Travel & Amadeus integration

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "abhinavmathur-atlan-mcp-travel-assistant": {
      "url": "http://localhost:8000/",
      "headers": {
        "SERPAPI_KEY": "your_serpapi_key_here",
        "AMADEUS_API_KEY": "your_amadeus_api_key_here",
        "AMADEUS_API_SECRET": "your_amadeus_api_secret_here",
        "EXCHANGE_RATE_API_KEY": "your_exchange_rate_api_key_here"
      }
    }
  }
}

The MCP Travel Concierge Server unifies consumer-friendly Google Travel Services with professional Amadeus GDS data to plan flights, hotels, events, and related travel needs. It provides a single, scalable interface that lets you search, compare, and book using multiple underlying data sources while handling weather, geocoding, currency, and travel-aware insights.

How to use

Connect an MCP client to the Travel Concierge Server to start planning trips. You can perform dual searches for flights and hotels, discover events and activities, and leverage utility services like weather, geocoding, and currency conversion. Start by running the server locally, then issue requests from your MCP client to query multiple providers through one endpoint. The server coordinates Google Travel Services for consumer-facing results and Amadeus GDS for professional inventory and pricing, giving you broad coverage and robust data.

How to install

Prerequisites you need before setup are Python 3.x and pip, plus access to required API keys.

Step 1. Clone the project and install dependencies.

git clone https://github.com/your-username/mcp_travelassistant.git
cd mcp_travelassistant

# Install dependencies
pip install -r requirements.txt

Step 2. Set up environment variables.

# Copy the example environment file
cp env.example .env

# Edit the .env file with your actual API keys:
SERPAPI_KEY=your_serpapi_key_here
AMADEUS_API_KEY=your_amadeus_api_key_here
AMADEUS_API_SECRET=your_amadeus_api_secret_here
EXCHANGE_RATE_API_KEY=your_exchange_rate_api_key_here

Step 3. Run the server.

python travel_server.py

Configuration and examples

To connect from an MCP client, you can use either the built-in HTTP mode or local stdio mode. The following configurations demonstrate both approaches. Replace placeholder paths with your actual project paths and API keys.

{
  "mcpServers": {
    "travel-concierge": {
      "type": "http",
      "name": "travel_concierge_http",
      "command": "npx",
      "args": ["@modelcontextprotocol/client-http", "http://localhost:8000/"]
    }
  }
}
{
  "mcpServers": {
    "travel-concierge": {
      "type": "stdio",
      "name": "travel_concierge",
      "command": "python",
      "args": ["travel_server.py"],
      "cwd": "/path/to/your/mcp_travelassistant",
      "env": {
        "SERPAPI_KEY": "your_serpapi_key_here",
        "AMADEUS_API_KEY": "your_amadeus_api_key_here",
        "AMADEUS_API_SECRET": "your_amadeus_api_secret_here",
        "EXCHANGE_RATE_API_KEY": "your_exchange_rate_api_key_here"
      }
    }
  }
}
{
  "mcpServers": {
    "travel-concierge": {
      "type": "stdio",
      "name": "travel_concierge_uv",
      "command": "uv",
      "args": ["--directory", "/path/to/your/mcp_travelassistant/", "run", "python", "combined_travel_server.py"],
      "env": {
        "SERPAPI_KEY": "your_serpapi_key_here",
        "AMADEUS_API_KEY": "your_amadeus_api_key_here",
        "AMADEUS_API_SECRET": "your_amadeus_api_secret_here",
        "EXCHANGE_RATE_API_KEY": "your_exchange_rate_api_key_here"
      }
    }
  }
}

Notes on HTTP vs STDIO modes

The HTTP mode config delegates request handling to a client endpoint that connects to the server at the specified URL. The STDIO mode runs the server locally and exposes its functionality to your MCP client directly. Choose the approach that best fits your environment and tooling.

Troubleshooting and tips

Common issues include missing API keys, port conflicts, or invalid credentials for Amadeus. Ensure your environment variables are correctly set in the .env file or in the client configuration, and verify that the server process has started successfully on the expected port.

Best practices include performing a dual search for flights and hotels to maximize options, geocoding destinations before searches, and checking weather forecasts as part of trip planning.

Docker support

You can containerize the Travel Concierge Server for consistent deployments across environments.

# Build the Docker image
docker build -t travel-concierge .

# Run with environment variables
docker run -p 8000:8000 \
  -e SERPAPI_KEY=your_key \
  -e AMADEUS_API_KEY=your_key \
  -e AMADEUS_API_SECRET=your_secret \
  -e EXCHANGE_RATE_API_KEY=your_key \
  travel-concierge

Tools and capabilities overview

The server exposes a range of tools to search and retrieve data from Google Travel Services and Amadeus GDS, along with utilities for geocoding, distance calculation, weather, and currency conversion.

Security and access

Protect your API keys and restrict access to the MCP endpoints. Store credentials securely in your environment and avoid committing keys to version control.

Notes and references

This guide covers the Travel Concierge Server setup and usage patterns. Use the provided configuration examples as a starting point, and adapt paths and keys to your environment.

Available tools

search_flights_serpapi

Google Flights search wrapper using SerpAPI to fetch consumer-friendly flight options and price insights.

search_flights_amadeus

Amadeus GDS flight search wrapper for professional inventory and fare classes with real-time availability.

search_hotels_serpapi

Google Hotels search wrapper for consumer hotel options, reviews, and pricing insights.

search_hotel_offers_amadeus

Amadeus hotel offers search wrapper for professional rates and real-time availability.

search_events_serpapi

Google Events search wrapper for local festivals, concerts, and cultural experiences.

search_activities_amadeus

Amadeus activities search wrapper for professional tours and curated experiences.

geocode_location

Geocoding utility to convert addresses to geographic coordinates.

calculate_distance

Distance calculation utility to measure distance between two coordinates.

get_weather_forecast

Weather forecast utility providing future conditions for travel planning.

get_current_conditions

Real-time weather conditions utility.

convert_currency

Live currency conversion utility using a live exchange rate API.

lookup_stock

Travel industry stock tracking utility using a market data provider.

MCP Travel Concierge Server - abhinavmathur-atlan/mcp-travel-assistant