SkyOdyssey
FreeNot checkedEnables AI clients to explore cheapest destinations, optimize multi-leg flight itineraries, and reference airport/region data via MCP tools and resources.
About
Enables AI clients to explore cheapest destinations, optimize multi-leg flight itineraries, and reference airport/region data via MCP tools and resources.
README
SkyOdyssey MCP exposes the SkyOdyssey flight engine as a Model Context Protocol server.
It is designed for AI clients (Claude Desktop, MCP Inspector, custom MCP hosts) that need:
- Cheapest destination exploration
- Multi-leg itinerary optimization
- Region/airport reference resources
Features
- MCP tools for flight search and itinerary optimization
- Shared core logic with
SkyOdyssey-CLI(logic.py,airports.py) - Country/airport/airline filters
- Budget-aware pruning (
max_budget) - Direct-flight filtering
- Multi-origin and flexible stay support for 3-leg itineraries
- SQLite caching (
flights_cache.db, TTL 6h) - Retry/backoff behavior for unstable provider responses
- Pydantic validation on itinerary outputs
Tools Exposed
get_flights_on_date
Fetch one-way flights for a specific route/date.
Inputs:
origin(IATA)destination(IATA)date(YYYY-MM-DD)adults(default1)seat_type(defaulteconomy)
get_cheapest_destinations
Explore a region from one origin/date and return cheapest options.
Inputs:
origindateregion(defaultEurope)limit(default15)adultsseat_typeexcluded_countriesexcluded_airportsdirect_onlyinclude_airlines,exclude_airlinesmax_budget
find_cheapest_two_city_itinerary
Find cheapest 3-leg itinerary loops.
Inputs include:
origin(single airport or list)start_datestay_days_1/stay_days_2(fixed int or[min, max])regionlimit_per_legexcluded_countries,excluded_airportsmax_itinerariesforce_different_countriesdirect_onlyreturn_origin(open-jaw)include_airlines,exclude_airlinesmax_budget
Guardrails:
originlist max:5limit_per_legmax:30max_itinerariesmax:100- stay range window max width:
14days (for each ofstay_days_1andstay_days_2)
Resources
airports://regions→ available regionsairports://{region}→ airport codes for a region
Requirements
- Python 3.10+
- Internet access (provider scraping via
fast-flights)
Installation
From SkyOdyssey-MCP:
python -m pip install -r requirements.txt
Run the Server
python server.py
Server transport:
stdio(configured inserver.py)
Claude Desktop Example
Add to claude_desktop_config.json:
{
"mcpServers": {
"skyodyssey": {
"command": "python",
"args": ["C:/absolute/path/to/SkyOdyssey/SkyOdyssey-MCP/server.py"]
}
}
}
Project Structure
server.py— MCP server entrypoint and tool/resource registrationlogic.py— flight search, filtering, optimization, cacheairports.py— regions, airport datasets, exclusion helpersrequirements.txt— runtime dependencies
Troubleshooting
Import error for fast_flights
- Reinstall dependencies:
python -m pip install -r requirements.txt - Ensure your Python environment is the same one used to run
server.py
Empty or partial results
- Provider instability/timeouts can happen; retry run
- Reduce search width (
limit_per_leg) and/or constraints - Relax filters (
direct_only, exclusions, budget)
Cache issues
- Delete cache if needed:
- Windows PowerShell:
Remove-Item flights_cache.db - Windows cmd:
del flights_cache.db
- Windows PowerShell:
License
MIT License.
Installing SkyOdyssey
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/maru-775/SkyOdyssey-MCPFAQ
Is SkyOdyssey MCP free?
Yes, SkyOdyssey MCP is free — one-click install via Unyly at no cost.
Does SkyOdyssey need an API key?
No, SkyOdyssey runs without API keys or environment variables.
Is SkyOdyssey hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install SkyOdyssey in Claude Desktop, Claude Code or Cursor?
Open SkyOdyssey on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
Fetch
Web content fetching and conversion for efficient LLM usage.
AWS KB Retrieval
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
by modelcontextprotocolSpring AI MCP Server
Provides auto-configuration for setting up an MCP server in Spring Boot applications.
llm-analysis-assistant
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also
by xuzexin-hzCompare SkyOdyssey with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All ai MCPs
