weekendflights

Cheapest weekend round-trip flight prices by route, with the time each price was last checked.

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,378Tokens (tool definitions)
~3.4 KBTypical response size
Moderate attention impact (1.08% 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, ...)

The next 47 weekends (328 days) 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: weekend 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": [
        "thu-sun",
        "thu-mon",
        "thu-sat",
        "fri-sun",
        "fri-mon",
        "fri-sat",
        "sat-mon",
        "sat-sun",
        "sat-sat"
      ],
      "description": "Weekend shape: out day and back day. 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": [
        "thu-sun",
        "thu-mon",
        "thu-sat",
        "fri-sun",
        "fri-mon",
        "fri-sat",
        "sat-mon",
        "sat-sun",
        "sat-sat"
      ],
      "description": "Weekend 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