FareDice

Cheap multi-country trips in Europe and Southeast Asia from recent non-stop fares

我該用這個嗎

品質與安全性

A
說明品質
100%
結構描述完整度
90%
命名品質
100%
汙染風險
100%
權限相符程度
100%
協定合規性
100%

根據工具定義與協定合規性的自動化分析。

上下文成本

~1,571Token(工具定義)
~16.0 KB典型回應大小
中等的注意力影響(128k 上下文的 1.23%)

這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。

安裝

一鍵安裝

將以下內容加入你的 `claude_desktop_config.json` 檔案:

{
  "mcpServers": {
    "trips": {
      "url": "https://faredice.com/mcp"
    }
  }
}

遠端端點

https://faredice.com/mcpstreamable-http

它能做什麼

工具清單

工具(1)

🟢 唯讀🟡 寫入🔴 刪除⚪ 未知
🟢find_trips(region, from, home, then_region, start, ...)

Finds cheap trips through several cities and countries in Europe or Southeast Asia, strung from non-stop one-way fares seen in the last few days: you give a start city (or a home airport outside the region: the trip then starts with a flight from the nearest big airport we have fares from), a window for the first flight, how many places and nights in each, and a flight budget, and optionally the kinds of place (beaches, islands, capitals ...), countries to keep to or skip and cities per country; it picks the cities. Returns the cheapest three trips, each with its flights, fare ages, cabin-bag notes and a link to the trip on faredice.com.

輸入結構描述

{
  "type": "object",
  "properties": {
    "region": {
      "type": "string",
      "enum": [
        "europe",
        "southeast-asia"
      ],
      "description": "Where the trip goes. Default europe."
    },
    "from": {
      "type": "string",
      "description": "Start city: a name (\"Lisbon\") or IATA city code (\"LIS\"), \"anywhere\" to start in any of the region's busiest cities, or a country (\"anywhere in Germany\", \"Spain\") to start in any of its cities. Needed unless home is given."
    },
    "home": {
      "type": "string",
      "description": "The traveller's home airport when it is outside the region: a town (\"Calgary\", \"London, Ontario\") or IATA code (\"YYC\"). Trips then start with a flight in from the nearest big airport we have fares from (Toronto, New York, Sydney ...), usually with a stop, and from there it's the same trip. The budget covers that flight; getting from home to that airport isn't in the prices. With home, from is used only when we can't fly from that home."
    },
    "then_region": {
      "type": "string",
      "enum": [
        "europe",
        "southeast-asia"
      ],
      "description": "With home: after region, fly on to this other region and home from there, in one trip (europe then southeast-asia, or the reverse). Three long flights: home into region, one across (from or to London or Paris), and home from then_region; each a separate ticket, all in the total and the budget. Homes: Vancouver or Los Angeles, or an airport within 1,000 km of them. The trip always ends home; places_min splits between the regions. A budget of about 2,000 euros fits most."
    },
    "start": {
      "type": "string",
      "description": "Earliest day for the first flight, YYYY-MM-DD. Fares cover about the next 90 days. Default: a week from today."
    },
    "until": {
      "type": "string",
      "description": "Latest day for the first flight, YYYY-MM-DD. Default: two weeks after start."
    },
    "places_min": {
      "type": "integer",
      "minimum": 1,
      "maximum": 12,
      "description": "Fewest places to stay in."
    },
    "places_max": {
      "type": "integer",
      "minimum": 1,
      "maximum": 12,
      "description": "Most places to stay in."
    },
    "nights_min": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "description": "Fewest nights in each place."
    },
    "nights_max": {
      "type": "integer",
      "minimum": 1,
      "maximum": 14,
      "description": "Most nights in each place."
    },
    "budget_eur": {
      "type": "integer",
      "minimum": 20,
      "maximum": 30000,
      "description": "Most to spend on all the flights, in euros, for all the travellers together (up to 5,000 each)."
    },
    "travellers": {
      "type": "integer",
      "minimum": 1,
      "maximum": 6,
      "description": "How many adults travel together. Default 1. Every price in the answer, and the budget, is then for all of them."
    },
    "cabin_bag": {
      "type": "boolean",
      "description": "true: the traveller takes a cabin bag (the wheeled one for the overhead locker), so the budget and the ranking count each flight's usual price for one where we know it; a flight whose bag price we don't know counts €35, the dearest bag price we know, so the total is an estimate (see unpriced_cabin_bags). Default false: fares alone."
    },
    "end": {
      "type": "string",
      "enum": [
        "home",
        "anywhere"
      ],
      "description": "home: the last flight returns to the start city (with home, to the airport the trip flew in through). Default anywhere."
    },
    "passports": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "maxItems": 2,
      "description": "ISO country codes of the traveller's passports (\"US\", \"IN\"): countries that need a visa in advance are left out."
    },
    "kinds_of_place": {
      "type": "object",
      "properties": {
        "capitals": {
          "oneOf": [
            {
              "type": "integer",
              "minimum": 1,
              "maximum": 4
            },
            {
              "type": "string",
              "enum": [
                "only",
                "none"
              ]
            }
          ]
        },
        "islands": {
          "oneOf": [
            {
              "type": "integer",
              "minimum": 1,
              "maximum": 4
            },
            {
              "type": "string",
              "enum": [
                "only",
                "none"
              ]
            }
          ]
        },
        "beaches": {
          "oneOf": [
            {
              "type": "integer",
              "minimum": 1,
              "maximum": 4
            },
            {
              "type": "string",
              "enum": [
                "only",
                "none"
              ]
            }
          ]
        },
        "mountains": {
          "oneOf": [
            {
              "type": "integer",
              "minimum": 1,
              "maximum": 4
            },
            {
              "type": "string",
              "enum": [
                "only",
                "none"
              ]
            }
          ]
        },
        "lakes": {
          "oneOf": [
            {
              "type": "integer",
              "minimum": 1,
              "maximum": 4
            },
            {
              "type": "string",
              "enum": [
                "only",
                "none"
              ]
            }
          ]
        },
        "old_towns": {
          "oneOf": [
            {
              "type": "integer",
              "minimum": 1,
              "maximum": 4
            },
            {
              "type": "string",
              "enum": [
                "only",
                "none"
              ]
            }
          ]
        },
        "small_towns": {
          "oneOf": [
            {
              "type": "integer",
              "minimum": 1,
              "maximum": 4
            },
            {
              "type": "string",
              "enum": [
                "only",
                "none"
              ]
            }
          ]
        },
        "ski": {
          "oneOf": [
            {
              "type": "integer",
              "minimum": 1,
              "maximum": 4
            },
            {
              "type": "string",
              "enum": [
                "only",
                "none"
              ]
            }
          ]
        }
      },
      "additionalProperties": false,
      "description": "Kinds of place, from our notes on each city: per kind, \"only\" (every stop is one), \"none\" (no stop is one) or at least n stops of it (1-4), e.g. {\"beaches\": 2, \"capitals\": \"none\"}. One kind can be \"only\". Ski counts only from December to mid-April, and only in Europe. The start and the return don't count as stops."
    },
    "countries": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "maxItems": 12,
      "description": "ISO country codes (\"ES\", \"PT\"): every stop is in one of these."
    },
    "skip_countries": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "maxItems": 20,
      "description": "ISO country codes to leave out of the trip."
    },
    "cities_per_country": {
      "type": "integer",
      "minimum": 0,
      "maximum": 3,
      "description": "Most cities in any one country. Default 1; 0 for any number (answers write it \"any\")."
    },
    "held_visas": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "schengen",
          "uk",
          "us"
        ]
      },
      "maxItems": 3,
      "description": "Valid visas the traveller already holds, with passports: \"schengen\" opens the Schengen area (its days counted against 90 in any 180) and the countries outside it that admit Schengen visa holders; \"uk\" and \"us\" open the countries that admit holders of those. The traveller still checks the visa's own dates and entries."
    }
  },
  "required": [],
  "additionalProperties": false
}

社群

為此伺服器評分

證據

近期觀測

已驗證未記錄版本1 個工具