by donghyun-chae
Provides flight search capabilities via natural language interfaces using the Amadeus Flight Offers Search API and the Model Context Protocol.
Enables MCP‑compatible clients (e.g., Claude Desktop) to retrieve flight offers between two locations on specified dates by invoking the Amadeus Flight Offers Search API. The server translates natural‑language requests into structured API calls and returns detailed flight options in JSON.
npx -y @smithery/cli install @donghyun-chae/mcp-amadeus --client claude
uv
or pip
..env
file from .env.example
and add your Amadeus CLIENT_ID
and CLIENT_SECRET
.uv
command that runs src/server.py
with the .env
file.get_flight_offers
with required parameters (origin, destination, departure_date, etc.).get_flight_offers
) that can be invoked by any MCP‑compatible AI assistant.amadeus-python
SDK for reliable API interaction.Q: Do I need an Amadeus developer account?
A: Yes. Sign up at https://developers.amadeus.com/, create an app, and obtain a Client ID
and Client Secret
.
Q: Which environment variables are required?
A: AMADEUS_CLIENT_ID
and AMADEUS_CLIENT_SECRET
must be set in the .env
file.
Q: Can I use this server with other MCP clients?
A: Absolutely. Any client that follows the Model Context Protocol can register the server and call get_flight_offers
.
Q: How many flight offers can be returned?
A: Up to 250 offers by default; you can limit the number with the max
parameter.
Q: Is the project affiliated with Amadeus? A: No. It is an open‑source community project and is not endorsed by Amadeus IT Group.
MCP-Amadeus is a community-developed Model Context Protocol (MCP) server that integrates with the Amadeus Flight Offers Search API to provide flight search capabilities through natural language interfaces. Built for use with MCP-compatible clients (e.g., Claude Desktop).
This project enables users to easily search for flight options between two locations with specific dates using the power of large language models (LLMs) and the Amadeus API.
This project uses the official amadeus-python SDK
Disclaimer: This is an open-source project not affiliated with or endorsed by Amadeus IT Group. Amadeus® is a registered trademark of Amadeus IT Group.
Retrieve flight options between two locations for specified dates.
"I'm looking for nonstop flights from New York to London on June 15th, any airline, for 1 adult."
→ ✈️ Returns available flight options with details like departure time, arrival time, airline, and price.
Once installed and connected to an MCP-compatible client (e.g., Claude Desktop), this server exposes tools that your AI assistant can use to fetch flight data.
To install Amadeus MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @donghyun-chae/mcp-amadeus --client claude
git clone https://github.com/donghyun-chae/mcp-amadeus.git
cd mcp-amadeus-flight-offers
# Install dependencies (using uv or pip)
uv sync
cp .env.example .env
Then edit .env
and add your API credentials:
AMADEUS_CLIENT_ID=your_client_id
AMADEUS_CLIENT_SECRET=your_client_secret
Sign up on https://developers.amadeus.com/ and create an app to obtain your Client ID
and Client Secret
.
Register this server in your MCP client (e.g., Claude for Desktop).
Edit ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"amadeus": {
"command": "/ABSOLUTE/PATH/TO/PARENT/FOLDER/uv",
"args": [
"--directory",
"/ABSOLUTE/PATH/TO/PARENT/FOLDER/src/",
"run",
"--env-file",
"/ABSOLUTE/PATH/TO/PARENT/FOLDER/.env",
"server.py"
]
}
}
}
Replace
/ABSOLUTE/PATH/TO/PARENT/FOLDER/
with the actual path to your project folder.
my case:
{
"mcpServers": {
"amadeus": {
"command": "/Users/asena/.local/bin/uv",
"args": [
"--directory",
"/Users/asena/mcp-amadeus/src/",
"run",
"--env-file",
"/Users/asena/mcp-amadeus/.env",
"server.py"
]
}
}
}
After installation, the following tool is exposed to MCP clients:
get_flight_offers
Retrieves flight offers from the Amadeus Flight Offers Search API.
Request:
{
"action": "tool",
"name": "get_flight_offers",
"params": {
"origin": "JFK",
"destination": "LHR",
"departure_date": "2025-06-15"
}
}
Parameters:
Name | Type | Required | Description | Example |
---|---|---|---|---|
origin | string | Yes | IATA code of departure city/airport | JFK |
destination | string | Yes | IATA code of destination city/airport | LHR |
departure_date | string | Yes | Departure date (YYYY-MM-DD) | 2025-06-15 |
return_date | string | No | Return date (YYYY-MM-DD). One-way if omitted | 2025-06-20 |
adults | integer | Yes | Number of adults (1-9). Default: 1 | 2 |
children | integer | No | Number of children (2-11). Max total: 9 | 1 |
infants | integer | No | Number of infants (≤2). Max: # of adults | 1 |
travel_class | string | No | Cabin class: ECONOMY, BUSINESS, etc. | ECONOMY |
non_stop | boolean | No | If true, only non-stop flights. Default: false | true |
currency_code | string | No | Currency in ISO 4217 (e.g., USD) | EUR |
max_price | integer | No | Max price per traveler | 500 |
max | integer | No | Max number of offers. Default: 250 | 10 |
Output: Returns flight offers in JSON format with airline, times, duration, and pricing details from Amadeus.
MIT License © 2025 donghyun-chae
Please log in to share your review and rating for this MCP.
Explore related MCPs that share similar capabilities and solve comparable challenges
by exa-labs
Provides real-time web search capabilities to AI assistants via a Model Context Protocol server, enabling safe and controlled access to the Exa AI Search API.
by elastic
Enables natural‑language interaction with Elasticsearch indices via the Model Context Protocol, exposing tools for listing indices, fetching mappings, performing searches, running ES|QL queries, and retrieving shard information.
by graphlit
Enables integration between MCP clients and the Graphlit platform, providing ingestion, extraction, retrieval, and RAG capabilities across a wide range of data sources and connectors.
by mamertofabian
Fast cross‑platform file searching leveraging the Everything SDK on Windows, Spotlight on macOS, and locate/plocate on Linux.
by cr7258
Provides Elasticsearch and OpenSearch interaction via Model Context Protocol, enabling document search, index management, cluster monitoring, and alias operations.
by liuyoshio
Provides natural‑language search and recommendation for Model Context Protocol servers, delivering rich metadata and real‑time updates.
by ihor-sokoliuk
Provides web search capabilities via the SearXNG API, exposing them through an MCP server for seamless integration with AI agents and tools.
by fatwang2
Provides web and news search, URL crawling, sitemap extraction, deep‑reasoning, and trending topic retrieval via Search1API, exposed as an MCP server for integration with AI clients.
by cnych
Provides SEO data retrieval via Ahrefs, exposing MCP tools for backlink analysis, keyword generation, traffic estimation, and keyword difficulty, with automated CAPTCHA solving and response caching.