amadeus-mcp
by: ben4mn
MCP server integrating Amadeus flight search capabilities with Claude Desktop
📌Overview
Purpose: To provide an integration of Amadeus flight search capabilities into the Claude Desktop framework.
Overview: The Amadeus MCP Server enables users to leverage Amadeus' comprehensive flight search functionalities seamlessly within the Claude environment. By utilizing FastMCP for server implementation, it supports efficient async operations and offers robust log management.
Key Features:
-
Flight Search Functionality: Allows users to search for flights using IATA codes for origin and destination, alongside a specified travel date. This feature enhances travel planning by providing real-time flight availability.
-
Logging and Debugging Tools: Includes comprehensive logging mechanisms to track errors and system performance, as well as built-in debugging steps to assist in resolving common issues efficiently.
Amadeus MCP Server
This MCP server integrates Amadeus flight search capabilities with Claude Desktop.
Setup
- Set environment variables in
.env
:
AMADEUS_API_KEY=your_key
AMADEUS_API_SECRET=your_secret
- Configure Claude Desktop:
{
"mcpServers": {
"amadeus": {
"command": "python",
"args": ["path/to/amadeus/server.py"],
"env": {
"AMADEUS_API_KEY": "your_key",
"AMADEUS_API_SECRET": "your_secret",
"PYTHONPATH": "path/to/amadeus"
}
}
}
}
Available Tools
search_flights
Parameters:
- origin: IATA airport code
- destination: IATA airport code
- date: YYYY-MM-DD format
Troubleshooting
Common Issues
-
Connection Timeouts
- Check
server.py
logs inamadeus_mcp.log
- Verify environment variables
- Check Claude Desktop logs
- See MCP Documentation for protocol details: https://modelcontextprotocol.io/llms-full.txt
- Check
-
Authentication Errors
- Verify Amadeus API credentials
- Check
.env
file permissions - Ensure credentials are properly loaded
Debugging Steps
- Run standalone test:
npx @modelcontextprotocol/inspector python path/to/server.py
- Check logs:
tail -f amadeus_mcp.log
- Verify environment:
python -c "import os; print(os.getenv('AMADEUS_API_KEY'))"
Architecture Notes
- Uses FastMCP for server implementation
- Implements stdio transport
- Logs to both stderr and file
- Handles asynchronous flight search operations
Support Resources
- Model Context Protocol Documentation: https://modelcontextprotocol.io/llms-full.txt
- Amadeus API Documentation: https://developers.amadeus.com/get-started/get-started-with-self-service-apis-335
- Claude Desktop MCP Guide: https://modelcontextprotocol.io/docs/tools/debugging