Amadeus MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Amadeus MCP Server Find flights from JFK to LAX on April 10"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Amadeus MCP Server
A Model Context Protocol (MCP) server that provides access to Amadeus Travel API functionality, including flights, hotels, tours, and city information with automatic USD currency conversion.
Features
Flight Search: Search for flights with detailed information (prices in USD, airlines, duration, stops)
City Information: Get city details including coordinates and IATA codes
Tours & Activities: Discover activities and tours by location with USD pricing
Hotel Search: Find hotels with ratings and locations
Live Exchange Rates: Automatic currency conversion to USD for all prices
Related MCP server: Amadeus MCP Server
Prerequisites
Node.js 18 or higher
Amadeus API credentials (get them from Amadeus for Developers)
Installation
Install from npm
npm install -g @fiqcodes/amadeus-mcp-serverInstall from source
# Clone the repository
git clone https://github.com/fiqcodes/amadeus-mcp-server.git
cd amadeus-mcp-server
# Install dependencies
npm install
# Build the project
npm run build
# Link globally (optional)
npm linkConfiguration
1. Get Amadeus API Credentials
Go to Amadeus for Developers
Sign up or log in
Create a new app in the dashboard
Copy your API Key and API Secret
2. Configure Claude Desktop
Add the server to your Claude Desktop configuration file:
On macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%\Claude\claude_desktop_config.json
On Linux: ~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"amadeus": {
"command": "amadeus-mcp-server",
"env": {
"AMADEUS_API_KEY": "your_api_key_here",
"AMADEUS_API_SECRET": "your_api_secret_here"
}
}
}
}Or if running from source:
{
"mcpServers": {
"amadeus": {
"command": "node",
"args": ["/absolute/path/to/amadeus-mcp-server/build/index.js"],
"env": {
"AMADEUS_API_KEY": "your_api_key_here",
"AMADEUS_API_SECRET": "your_api_secret_here"
}
}
}
}3. Restart Claude Desktop
Completely quit and reopen Claude Desktop for the changes to take effect.
Available Tools
1. get_flights
Search for flight offers between cities. All prices returned in USD.
Parameters:
origin(required): Origin airport IATA code (e.g., "JFK", "CGK")destination(required): Destination airport IATA code (e.g., "LAX", "DPS")departureDate(required): Departure date (YYYY-MM-DD)returnDate(optional): Return date for round trips (YYYY-MM-DD)adults(optional): Number of adults (default: 1)travelClass(optional): ECONOMY, PREMIUM_ECONOMY, BUSINESS, FIRSTmaxResults(optional): Max results to return (default: 5)
Example with Claude:
Find me flights from Jakarta (CGK) to Bali (DPS) on January 20, 20262. get_city
Get information about a city including name, country, IATA code, and geographic coordinates.
Parameters:
cityName(required): Name of the city
Example with Claude:
Get information about Tokyo3. get_tours_activities
Search for tours and activities by location. Prices automatically converted to USD.
Parameters:
latitude(required): Latitude coordinatelongitude(required): Longitude coordinateradius(optional): Search radius in km (default: 1)
Example with Claude:
Find activities in Paris at coordinates 48.8566, 2.35224. get_hotels
Search for hotels in a city using IATA code.
Parameters:
cityCode(required): City IATA code (e.g., "PAR", "NYC", "LON")checkInDate(optional): Check-in date (YYYY-MM-DD)checkOutDate(optional): Check-out date (YYYY-MM-DD)adults(optional): Number of guests (default: 1)radius(optional): Search radius (default: 5)radiusUnit(optional): KM or MILE (default: KM)ratings(optional): Filter by ratings (e.g., "3,4,5")priceRange(optional): Price range (e.g., "50-200")
Example with Claude:
Find hotels in Paris for March 15-20, 2026Usage with Claude
Once configured, you can ask Claude naturally:
"Find cheap flights from New York to London next month"
"Show me activities in Tokyo"
"What hotels are available in Paris for my trip?"
"Get me flight options from Jakarta to Singapore on January 25th"
Claude will automatically use the appropriate tools and present the results in a user-friendly format.
Development
Running in development mode
npm run devThis will watch for changes and rebuild automatically.
Testing the server
Test the API integration:
export AMADEUS_API_KEY="your_key"
export AMADEUS_API_SECRET="your_secret"
npm run build && node build/test-amadeus.jsUsing MCP Inspector
npx @modelcontextprotocol/inspector node build/index.jsCurrency Conversion
The server automatically fetches live exchange rates from exchangerate-api.com and caches them for 24 hours. All non-USD prices are converted and returned with both original and USD amounts:
{
"price": {
"amount": "199.0",
"currencyCode": "EUR",
"usdAmount": 218.90,
"originalAmount": 199.0,
"originalCurrency": "EUR"
}
}Project Structure
amadeus-mcp-server/
├── src/
│ ├── index.ts # Main server implementation
│ └── test-amadeus.ts # Test script
├── build/ # Compiled JavaScript (generated)
├── package.json
├── tsconfig.json
├── README.md
└── .gitignoreTroubleshooting
"Authentication failed"
Verify your API key and secret are correct
Check if the environment variables are properly set in Claude config
Ensure you're using valid Amadeus credentials (test or production)
"Tool not found" or tools not showing
Make sure the server is properly configured in
claude_desktop_config.jsonVerify the path is absolute (not relative)
Restart Claude Desktop completely (quit and reopen)
Check Claude logs: Help → View Logs
"Rate limit exceeded"
Amadeus test API has rate limits (free tier)
Wait a few minutes before retrying
Consider upgrading to production API for higher limits
Build errors
rm -rf node_modules package-lock.json build
npm install
npm run buildAPI Documentation
For more details about the Amadeus API:
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Fork the repository
Create your feature branch (
git checkout -b feature/amazing-feature)Commit your changes (
git commit -m 'Add some amazing feature')Push to the branch (
git push origin feature/amazing-feature)Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Note: This MCP server uses the Amadeus Test API by default. For production use, update the BASE_URL in the code to https://api.amadeus.com and use production credentials.
Available Tools
4 toolsget_cityA
Search for city information including name, country, region, IATA code, and geographic coordinates.
Inputs: cityName (required).
get_flightsA
Search for flight offers between two cities. Returns flight details including airlines, prices in USD, flight IDs, duration, stops, and travel class.
Inputs: origin (required), destination (required), departureDate (required), adults, +3 more.
get_hotelsA
Search for hotels in a city using the city's IATA code. Returns hotel information including names, ratings, and locations.
Inputs: cityCode (required), adults, radius, ratings, +4 more.
get_tours_activitiesA
Search for tours and activities in a specific location using latitude and longitude coordinates. Prices are converted to USD.
Inputs: latitude (required), longitude (required), radius.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 4 tools
Each tool targets a distinct travel domain: flights, city info, tours/activities, and hotels. There is no overlap in their intended purposes.
All tool names follow the consistent get_<noun> pattern, making the interface predictable and easy to navigate.
With 4 tools, the set is well-scoped for a travel search server. Each tool serves a clear and essential function without redundancy or bloat.
The tools cover the main search needs for travel (flights, hotels, activities, and city info). However, they are all read-only and lack booking or management capabilities, which would be a natural next step for a full travel service.
Maintenance
Related MCP Connectors
Give AI assistants access to real-time data. Search the web, compare flights, find hotels, and more.
Search award flights and cash fares, optimize points, and predict fares inside ChatGPT and Claude.
Search and book live flights and hotels. No API key; the traveller confirms on their phone.
Web search, page reading, HTML to PDF, file upload and flight search for AI agents, paid in USDC.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables comprehensive travel planning by integrating Google Travel Services and Amadeus GDS for dual flight and hotel searches, plus event discovery, weather forecasting, currency conversion, and location services. Combines consumer-friendly search with professional travel industry data for optimal trip planning.6MIT
- AlicenseNot gradedqualityDmaintenanceEnables flight search capabilities through the Amadeus Flight Offers Search API, allowing users to search for flights between locations with specified dates using natural language queries.1MIT
- AlicenseNot gradedqualityDmaintenanceProvides access to 50+ Amadeus Travel APIs for AI assistants to search and book flights, hotels, activities, and ground transfers, along with travel analytics, price predictions, and comprehensive travel reference data.16 npmMIT
- AlicenseNot gradedqualityDmaintenanceIntegrates with Amadeus Flight Offers Search API to provide flight search capabilities through natural language interfaces, enabling users to search for flight options between two locations with specific dates.60MIT