FareDice
Cheap multi-country trips in Europe and Southeast Asia from recent non-stop fares
我该使用它吗
质量与安全性
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 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
}社区
证据