weekendflights

Weekend flight price calendar: the cheapest round trip for every weekend of the next 12 months.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
77%
Naming quality
87%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,744Tokens (tool definitions)
~4.3 KBTypical response size
Moderate attention impact (1.36% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "weekendflights": {
      "url": "https://weekendflights.app/mcp"
    }
  }
}

Remote endpoints

https://weekendflights.app/mcpstreamable-http

What it can do

Tool inventory

Tools (3)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢list_origins

Returns the departure airports (IATA) that have at least one priced weekend calendar, with the count of priced destinations per origin. Start here to learn what cheapest_weekends can answer at once. weekend_prices works for any airport pair and searches live when needed.

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢weekend_prices(origin, dest, currency, combo, cabin, ...)

Every weekend of the next 12 months for one origin-destination pair, with the cheapest round-trip price per weekend and the time the price was observed ("as_of"). Cached prices answer at once; weekends not priced yet are searched live during the call, the way a page visit searches them (usually 10-40 s, at most ~55 s). If the search does not finish, the answer says which weekends are still open and to call again. Takes every filter the route page has: trip shape (combo), cabin, stops, passengers, departure and return time windows, currency. Free: fri-sun, economy, any stops, any passenger mix, no time window. Pro session cookie: other combos, other cabins, time windows.

Input Schema

{
  "type": "object",
  "properties": {
    "origin": {
      "type": "string",
      "description": "Departure airport IATA code, e.g. \"ZRH\".",
      "minLength": 3,
      "maxLength": 3
    },
    "dest": {
      "type": "string",
      "description": "Arrival airport IATA code, e.g. \"BCN\".",
      "minLength": 3,
      "maxLength": 3
    },
    "currency": {
      "type": "string",
      "description": "ISO 4217 code. Default: the native currency of the origin (ZRH → CHF, BCN → EUR).",
      "minLength": 3,
      "maxLength": 3
    },
    "combo": {
      "type": "string",
      "enum": [
        "mon-mon",
        "mon-tue",
        "mon-wed",
        "mon-thu",
        "mon-fri",
        "mon-sat",
        "mon-sun",
        "tue-tue",
        "tue-wed",
        "tue-thu",
        "tue-fri",
        "tue-sat",
        "tue-sun",
        "tue-mon",
        "wed-wed",
        "wed-thu",
        "wed-fri",
        "wed-sat",
        "wed-sun",
        "wed-mon",
        "wed-tue",
        "thu-thu",
        "thu-fri",
        "thu-sat",
        "thu-sun",
        "thu-mon",
        "thu-tue",
        "thu-wed",
        "fri-fri",
        "fri-sat",
        "fri-sun",
        "fri-mon",
        "fri-tue",
        "fri-wed",
        "fri-thu",
        "sat-sat",
        "sat-sun",
        "sat-mon",
        "sat-tue",
        "sat-wed",
        "sat-thu",
        "sat-fri",
        "sun-sun",
        "sun-mon",
        "sun-tue",
        "sun-wed",
        "sun-thu",
        "sun-fri",
        "sun-sat"
      ],
      "description": "Trip shape: out day and back day as \"{out}-{back}\" with 3-letter days (\"tue-thu\"); the same day twice is a day trip. Default \"fri-sun\" (free). Other shapes need a Pro session cookie."
    },
    "cabin": {
      "type": "string",
      "enum": [
        "economy",
        "premium-economy",
        "business",
        "first"
      ],
      "description": "Default \"economy\" (free). Other cabins need a Pro session cookie."
    },
    "stops": {
      "type": "string",
      "enum": [
        "any",
        "nonstop"
      ],
      "description": "\"any\" (default) or \"nonstop\". Free."
    },
    "adults": {
      "type": "integer",
      "minimum": 1,
      "maximum": 9,
      "description": "Default 1. Free. At most 9 travellers in total."
    },
    "children": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9,
      "description": "Ages 2-11. Default 0. Free."
    },
    "infants": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9,
      "description": "Under 2. Default 0. Free."
    },
    "out_from": {
      "type": "string",
      "pattern": "^\\d{1,2}:\\d{2}$",
      "description": "Earliest outbound departure, \"HH:MM\" local. Pro. Cached only for weekends whose flight detail is stored."
    },
    "out_to": {
      "type": "string",
      "pattern": "^\\d{1,2}:\\d{2}$",
      "description": "Latest outbound departure, \"HH:MM\". Pro."
    },
    "ret_from": {
      "type": "string",
      "pattern": "^\\d{1,2}:\\d{2}$",
      "description": "Earliest return departure, \"HH:MM\". Pro."
    },
    "ret_to": {
      "type": "string",
      "pattern": "^\\d{1,2}:\\d{2}$",
      "description": "Latest return departure, \"HH:MM\". Pro."
    }
  },
  "required": [
    "origin",
    "dest"
  ],
  "additionalProperties": false
}
🟢cheapest_weekends(origin, month, limit, currency, combo, ...)

The cheapest weekends from one origin across every destination that has a calendar under these filters, sorted by price. Optional month filter (yyyy-mm). Takes the same filters as weekend_prices. This tool reads what is already priced; it does not search every destination. A destination that is absent can be priced with one weekend_prices call for that pair. Pro only: this tool is Anywhere (every destination from one origin). Without Pro it answers pro_required with the Anywhere page url. One route at a time is free with weekend_prices.

Input Schema

{
  "type": "object",
  "properties": {
    "origin": {
      "type": "string",
      "description": "Departure airport IATA code, e.g. \"ZRH\".",
      "minLength": 3,
      "maxLength": 3
    },
    "month": {
      "type": "string",
      "description": "Limit to one month, format yyyy-mm.",
      "pattern": "^\\d{4}-\\d{2}$"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "description": "How many weekends to return. Default 10."
    },
    "currency": {
      "type": "string",
      "description": "ISO 4217 code. Default: the native currency of the origin.",
      "minLength": 3,
      "maxLength": 3
    },
    "combo": {
      "type": "string",
      "enum": [
        "mon-mon",
        "mon-tue",
        "mon-wed",
        "mon-thu",
        "mon-fri",
        "mon-sat",
        "mon-sun",
        "tue-tue",
        "tue-wed",
        "tue-thu",
        "tue-fri",
        "tue-sat",
        "tue-sun",
        "tue-mon",
        "wed-wed",
        "wed-thu",
        "wed-fri",
        "wed-sat",
        "wed-sun",
        "wed-mon",
        "wed-tue",
        "thu-thu",
        "thu-fri",
        "thu-sat",
        "thu-sun",
        "thu-mon",
        "thu-tue",
        "thu-wed",
        "fri-fri",
        "fri-sat",
        "fri-sun",
        "fri-mon",
        "fri-tue",
        "fri-wed",
        "fri-thu",
        "sat-sat",
        "sat-sun",
        "sat-mon",
        "sat-tue",
        "sat-wed",
        "sat-thu",
        "sat-fri",
        "sun-sun",
        "sun-mon",
        "sun-tue",
        "sun-wed",
        "sun-thu",
        "sun-fri",
        "sun-sat"
      ],
      "description": "Trip shape. Default \"fri-sun\"."
    },
    "cabin": {
      "type": "string",
      "enum": [
        "economy",
        "premium-economy",
        "business",
        "first"
      ],
      "description": "Default \"economy\"."
    },
    "stops": {
      "type": "string",
      "enum": [
        "any",
        "nonstop"
      ],
      "description": "\"any\" (default) or \"nonstop\"."
    },
    "adults": {
      "type": "integer",
      "minimum": 1,
      "maximum": 9,
      "description": "Default 1."
    },
    "children": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9,
      "description": "Default 0."
    },
    "infants": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9,
      "description": "Default 0."
    },
    "out_from": {
      "type": "string",
      "pattern": "^\\d{1,2}:\\d{2}$",
      "description": "Earliest outbound departure, \"HH:MM\"."
    },
    "out_to": {
      "type": "string",
      "pattern": "^\\d{1,2}:\\d{2}$",
      "description": "Latest outbound departure, \"HH:MM\"."
    },
    "ret_from": {
      "type": "string",
      "pattern": "^\\d{1,2}:\\d{2}$",
      "description": "Earliest return departure, \"HH:MM\"."
    },
    "ret_to": {
      "type": "string",
      "pattern": "^\\d{1,2}:\\d{2}$",
      "description": "Latest return departure, \"HH:MM\"."
    }
  },
  "required": [
    "origin"
  ],
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded3 tools
verifiedversion not recorded3 tools