Find Flights (Duffel) MCP server

Integrates with the Duffel API to provide streamlined flight search capabilities for tasks like travel planning, fare comparison, and building travel-related applications.
Back to servers
Provider
Ravina Patel
Release date
Jan 11, 2025
Language
Python
Stats
82 stars

This MCP server allows you to search for and retrieve detailed flight information using the Duffel API. It provides a conversational interface for finding flights across multiple destinations with support for one-way, round-trip, and multi-city itineraries, making it particularly useful for complex travel planning.

Installation Options

Installing via Smithery

The easiest way to install the Find Flights MCP server for Claude Desktop is via Smithery:

npx -y @smithery/cli install @ravinahp/travel-mcp --client claude

Manual Installation

To install manually:

git clone https://github.com/ravinahp/flights-mcp
cd flights-mcp
uv sync

Getting Your Duffel API Key

Test Mode (Recommended First Step)

You can start with a test API key to try the functionality with simulated data:

  1. Visit Duffel's registration page
  2. Create an account (you can select "Personal Use" for Company Name)
  3. Navigate to More > Developer to find your test API key
  4. Use duffel_test as your API key to test the functionality

Getting a Live API Key

For real flight data:

  1. In the Duffel dashboard, toggle "Test Mode" off in the top left corner
  2. Complete the verification process (requires multiple toggles):
    • Verify email address
    • Complete company information
    • Add payment information
    • Complete any remaining verification steps
    • Agree to terms and submit
  3. Once verified, go to More > Developer > Create Live Token
  4. Copy your live API key

Important: Your payment information is handled directly by Duffel and is not accessed by the MCP server. This server is read-only and cannot make bookings or charges.

Configuration

Add the MCP server to your Claude desktop configuration file:

  • MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%/Claude/claude_desktop_config.json

Add this configuration to your JSON file:

{
    "flights-mcp": {
        "command": "uv",
        "args": [
            "--directory",
            "/Users/YOUR_USERNAME/Code/flights-mcp",
            "run",
            "flights-mcp"
        ],
        "env": {
            "DUFFEL_API_KEY_LIVE": "your_duffel_live_api_key_here"
        }
    }
}

Be sure to:

  • Replace YOUR_USERNAME with your actual system username
  • Replace your_duffel_live_api_key_here with your Duffel Live API key
  • Ensure the directory path matches your local installation

Using the MCP Server

Search Flights

This tool supports searching for one-way, round-trip, and multi-city flights. Example queries:

  • "Find a one-way flight from SFO to NYC on Jan 7 for 2 adults in business class"
  • "Search for a round-trip flight from LAX to London, departing Jan 8 and returning Jan 15"
  • "What is the cheapest flight from SFO to LAX from Jan 7 to Jan 15 for 2 adults in economy class?"

Search Multi-City Flights

For complex itineraries with multiple stops:

  • "Plan a multi-city trip from New York to Paris on Jan 7, then to Rome on Jan 10, and back to New York on Jan 15"

Find Optimal Flights Across Multiple Days

You can search across a date range to find the best options:

  • "Find the cheapest flight from SFO to LAX from Jan 7 to Jan 10 for 2 adults in economy class"

Cabin Class Options

The following cabin classes are available:

  • economy: Standard economy class
  • premium_economy: Premium economy class
  • business: Business class
  • first: First class

Debugging

For troubleshooting, use the MCP Inspector:

npx @modelcontextprotocol/inspector uv --directory /path/to/find-flights-mcp run find-flights-mcp

This provides real-time monitoring of requests/responses, validation, error tracking, and performance metrics.

Performance Notes

  • Searches are limited to 50 offers for one-way/round-trip flights
  • Multi-city searches are limited to 10 offers
  • Supplier timeout is set to 15-30 seconds depending on the search type

How to add this MCP server to Cursor

There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json file so that it is available in all of your projects.

If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json file.

Adding an MCP server to Cursor globally

To add a global MCP server go to Cursor Settings > MCP and click "Add new global MCP server".

When you click that button the ~/.cursor/mcp.json file will be opened and you can add your server like this:

{
    "mcpServers": {
        "cursor-rules-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "cursor-rules-mcp"
            ]
        }
    }
}

Adding an MCP server to a project

To add an MCP server to a project you can create a new .cursor/mcp.json file or add it to the existing one. This will look exactly the same as the global MCP server example above.

How to use the MCP server

Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.

The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.

You can also explictly ask the agent to use the tool by mentioning the tool name and describing what the function does.

Want to 10x your AI skills?

Get a free account and learn to code + market your apps using AI (with or without vibes!).

Nah, maybe later