Amadeus MCP Server

Pesquise ofertas de voos usando a API Amadeus Flight Offers Search.

Documentação

Servidor MCP Amadeus

smithery badge

MCP-Amadeus é um servidor Model Context Protocol (MCP) desenvolvido pela comunidade que se integra à API Amadeus Flight Offers Search para fornecer recursos de busca de voos por meio de interfaces em linguagem natural. Criado para uso com clientes compatíveis com MCP (ex.: Claude Desktop).

Este projeto permite que usuários pesquisem facilmente opções de voos entre dois locais com datas específicas usando o poder dos grandes modelos de linguagem (LLMs) e a API Amadeus.

Este projeto utiliza o amadeus-python SDK oficial.

Aviso: Este é um projeto de código aberto não afiliado ou endossado pela Amadeus IT Group. Amadeus® é uma marca registrada da Amadeus IT Group.


✨ Recursos

✈️ Busca de Ofertas de Voos

Recupere opções de voos entre dois locais para datas especificadas.

"Estou procurando voos sem escalas de Nova York para Londres em 15 de junho, qualquer companhia aérea, para 1 adulto."
→ ✈️ Retorna opções de voos disponíveis com detalhes como horário de partida, horário de chegada, companhia aérea e preço.

  • Alimentado pela API Amadeus Flight Offers Search
  • Requer entrada de origem, destino, número de passagens e data da viagem

🌐 Demonstração

Após a instalação e conexão a um cliente compatível com MCP (ex.: Claude Desktop), este servidor expõe ferramentas que seu assistente de IA pode usar para buscar dados de voos.

amadeus-mcp


🚀 Início Rápido

Instalação via Smithery

Para instalar o Amadeus MCP Server para Claude Desktop automaticamente via Smithery:

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

1. Clone e Configuração

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

# Install dependencies (using uv or pip)
uv sync

2. Obtenha Sua Chave de API e Configure o Ambiente

cp .env.example .env

Em seguida, edite .env e adicione suas credenciais de API:

AMADEUS_CLIENT_ID=your_client_id
AMADEUS_CLIENT_SECRET=your_client_secret

Cadastre-se em https://developers.amadeus.com/ e crie um aplicativo para obter seu Client ID e Client Secret.

3. Configure o Cliente MCP

Registre este servidor no seu cliente MCP (ex.: Claude for Desktop).

Edite ~/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"
            ]
        }
    }
}

Substitua /ABSOLUTE/PATH/TO/PARENT/FOLDER/ pelo caminho real da sua pasta do projeto.

No meu caso:

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


🛠️ Ferramentas

Após a instalação, a seguinte ferramenta é exposta aos clientes MCP:

get_flight_offers

Recupera ofertas de voos da API Amadeus Flight Offers Search.

Solicitação:

{
  "action": "tool",
  "name": "get_flight_offers",
  "params": {
  "origin": "JFK",
  "destination": "LHR",
  "departure_date": "2025-06-15"
  }
}

Parâmetros:

NomeTipoObrigatórioDescriçãoExemplo
originstringSimCódigo IATA da cidade/aeroporto de partidaJFK
destinationstringSimCódigo IATA da cidade/aeroporto de destinoLHR
departure_datestringSimData de partida (AAAA-MM-DD)2025-06-15
return_datestringNãoData de retorno (AAAA-MM-DD). Só ida se omitido2025-06-20
adultsintegerSimNúmero de adultos (1-9). Padrão: 12
childrenintegerNãoNúmero de crianças (2-11). Total máximo: 91
infantsintegerNãoNúmero de bebês (≤2). Máx.: nº de adultos1
travel_classstringNãoClasse da cabine: ECONOMY, BUSINESS, etc.ECONOMY
non_stopbooleanNãoSe verdadeiro, apenas voos sem escalas. Padrão: falsoverdadeiro
currency_codestringNãoMoeda em ISO 4217 (ex.: USD)EUR
max_priceintegerNãoPreço máximo por viajante500
maxintegerNãoNúmero máximo de ofertas. Padrão: 25010

Saída: Retorna ofertas de voos em formato JSON com companhia aérea, horários, duração e detalhes de preço da Amadeus.


📚 Referências


📝 Licença

Licença MIT © 2025 donghyun-chae