Skip to main content

Add your description here

Project description

Amadeus MCP Server

smithery badge

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.


✨ Features

✈️ Flight Offers Search

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.

  • Powered by Amadeus Flight Offers Search API
  • Requires origin, destination, number of tickets and travel date input

🌐 Demo

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.

amadeus-mcp


🚀 Quick Start

Installing via Smithery

To install Amadeus MCP Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @donghyun-chae/mcp-amadeus --client claude

1. Clone and Setup

git clone https://github.com/donghyun-chae/mcp-amadeus.git
cd mcp-amadeus-flight-offers

# Install dependencies (using uv or pip)
uv sync

2. Get Your API Key and Set Environment

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.

3. Configure MCP Client

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"
            ]
        }
    }
}

🛠️ Tools

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.


📚 References


📝 License

MIT License © 2025 donghyun-chae

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iflow_mcp_donghyun_chae_mcp_amadeus-0.1.2.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file iflow_mcp_donghyun_chae_mcp_amadeus-0.1.2.tar.gz.

File metadata

  • Download URL: iflow_mcp_donghyun_chae_mcp_amadeus-0.1.2.tar.gz
  • Upload date:
  • Size: 7.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for iflow_mcp_donghyun_chae_mcp_amadeus-0.1.2.tar.gz
Algorithm Hash digest
SHA256 05d624a460f9b41c9bda5961ee4c2a181482800dd72065e1d8f591e33ef053f5
MD5 f56d06a65326d90b63a42110ff1dc408
BLAKE2b-256 59c66e42e84576c3cc6efb06d07d455bc72ed700540e0de747ab8919e9cd8ae2

See more details on using hashes here.

File details

Details for the file iflow_mcp_donghyun_chae_mcp_amadeus-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: iflow_mcp_donghyun_chae_mcp_amadeus-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 8.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for iflow_mcp_donghyun_chae_mcp_amadeus-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 befaf0e8a3c98ac78118cac5840fbdf2816e0b6e6b3d5fd6327bd08fb91a7576
MD5 aec75bc0b3e348a23a70907e12dba959
BLAKE2b-256 f2bc031c09b3a8ffb6bf7c7b739c63b13645a6d6a79d879a05ef35ff1da53131

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page