fli
Google Flights MCP and Python Library
claude mcp add --transport stdio punitarani-fli fli-mcp
How to use
Fli is a Python-based MCP server that exposes flight search capabilities via the MCP protocol. It provides two primary tools for querying Google Flights data: search_flights for targeted flight searches on a specific date with filters, and search_dates for finding cheapest travel dates across a flexible range. The MCP server lets AI assistants, such as Claude, request flight information conversationally by sending structured MCP requests to the running server. To use it in Claude Desktop or another client, run the MCP server and point the client at the server’s address.
Typical workflows include starting the server in STDIO mode with fli-mcp for local development, or using fli-mcp-http to serve results over HTTP at http://127.0.0.1:8000/mcp/. Once running, you can invoke search_flights with parameters like origin, destination, departure_date, cabin_class, and optional filters such as time windows, airlines, and sorting preference. Alternatively, use search_dates to scan a date range for the cheapest options, with options for trip duration, rounds, and passenger counts. The MCP interface is designed to be natural-language-friendly, enabling simple prompts like “Find economy flights from JFK to LHR next month” to yield structured results.
How to install
Prerequisites:
- Python 3.9+ installed on your system
- pip or pipx available
Installation steps:
- Install the Flights library (CLI) via pipx (recommended) or pip:
# Recommended: install the CLI via pipx for isolation
pipx install flights
- Verify the MCP server executable is available:
fli-mcp --help
- Run the MCP server on STDIO:
fli-mcp
- (Optional) Run the MCP server over HTTP (streamable):
fli-mcp-http
- If you prefer development workflows, you can also run via uv or Make (where supported by your environment):
uv run fli-mcp
make mcp
Additional notes
Notes and tips:
- The MCP server is Python-based and ships as a CLI tool (fli-mcp). Ensure your PATH includes the location where fli-mcp is installed.
- For Claude Desktop integration, configure Claude with an MCP server entry pointing to fli-mcp (or fli-mcp-http if using HTTP).
- If you encounter API changes or rate limits, ensure you’re using the latest Flights library and consider adding a delay or retry strategy in your client, especially for automated prompts.
- Example client config (Claude Desktop): {"mcpServers": {"flight-search": {"command": "fli-mcp", "args": []}}}
- To stop the server, terminate the running process. For HTTP mode, ensure port 8000 is accessible if your environment requires it.
Related MCP Servers
ddgs
A metasearch library that aggregates results from diverse web search services
hayhooks
Easily deploy Haystack pipelines as REST APIs and MCP Tools.
zotero
Model Context Protocol (MCP) server for the Zotero API, in Python
sympy
A MCP server for symbolic manipulation of mathematical expressions
storyblok
A modular, extensible MCP Server for managing Storyblok spaces, stories, components, assets, workflows, and more via the Model Context Protocol (MCP).
openproject
A Model Context Protocol (MCP) server that provides seamless integration with OpenProject API v3.