FlyScout flight deals
Read-only cheap return flight deals from Luxembourg and 6 nearby airports, rescanned daily.
我該用這個嗎
品質與安全性
A
根據工具定義與協定合規性的自動化分析。
上下文成本
~2,461Token(工具定義)
~8.9 KB典型回應大小
中等的注意力影響(128k 上下文的 1.92%)
這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。
安裝
一鍵安裝
將以下內容加入你的 `claude_desktop_config.json` 檔案:
{
"mcpServers": {
"deals": {
"url": "https://mcp.flyscout.lu/mcp"
}
}
}遠端端點
https://mcp.flyscout.lu/mcpstreamable-http它能做什麼
工具清單
工具(3)
🟢 唯讀🟡 寫入🔴 刪除⚪ 未知
🟢search_deals(origin, destination, month, max_price, sort, ...)
Search current flight deals from Luxembourg (default) or nearby airports. Returns return-trip prices in EUR with dates, the usual route price, a booking link and when the price was last checked.
輸入結構描述
{
"type": "object",
"properties": {
"origin": {
"default": "LUX",
"description": "Departure airport IATA code, or 'any' for all 7",
"enum": [
"LUX",
"SCN",
"HHN",
"CGN",
"CRL",
"BRU",
"FRA",
"any"
],
"title": "Origin",
"type": "string"
},
"destination": {
"anyOf": [
{
"maxLength": 60,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Destination IATA code, city or country, e.g. 'BCN', 'Barcelona' or 'Spain'",
"title": "Destination"
},
"month": {
"anyOf": [
{
"pattern": "^\\d{4}-(0[1-9]|1[0-2])$",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Outbound month, YYYY-MM. Matches the cheapest outbound date only.",
"title": "Month"
},
"max_price": {
"anyOf": [
{
"exclusiveMinimum": 0,
"maximum": 10000,
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"description": "Max return price in EUR",
"title": "Max Price"
},
"sort": {
"default": "price",
"description": "Sort order",
"enum": [
"price",
"price_incl_transport",
"discount"
],
"title": "Sort",
"type": "string"
},
"include_expired": {
"default": false,
"description": "Include deals whose outbound date has passed",
"title": "Include Expired",
"type": "boolean"
},
"limit": {
"default": 10,
"description": "Max number of deals to return (1-25)",
"maximum": 25,
"minimum": 1,
"title": "Limit",
"type": "integer"
}
},
"title": "search_dealsArguments"
}輸出結構描述
{
"type": "object",
"properties": {
"total_matches": {
"title": "Total Matches",
"type": "integer"
},
"deals": {
"items": {
"$ref": "#/$defs/Deal"
},
"title": "Deals",
"type": "array"
},
"feed_last_checked": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Feed Last Checked"
},
"feed_stale": {
"description": "True if the daily scan is older than 36 hours",
"title": "Feed Stale",
"type": "boolean"
}
},
"required": [
"total_matches",
"deals",
"feed_last_checked",
"feed_stale"
],
"$defs": {
"Deal": {
"properties": {
"id": {
"description": "Stable deal id (origin-destination-airline). Pass to get_deal.",
"title": "Id",
"type": "string"
},
"origin": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Origin"
},
"origin_name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Origin Name"
},
"destination": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Destination"
},
"destination_name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Destination Name"
},
"country": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Country"
},
"airline": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Airline"
},
"price_eur": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "Return trip total in EUR",
"title": "Price Eur"
},
"price_note": {
"title": "Price Note",
"type": "string"
},
"outbound_fare_eur": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "Outbound one-way fare. Low-cost carriers only",
"title": "Outbound Fare Eur"
},
"return_fare_eur": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "Return one-way fare. Low-cost carriers only",
"title": "Return Fare Eur"
},
"usual_price_eur": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "Median return price on this route",
"title": "Usual Price Eur"
},
"discount_pct": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Discount Pct"
},
"transport_cost_from_luxembourg_eur": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Transport Cost From Luxembourg Eur"
},
"price_incl_transport_eur": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Price Incl Transport Eur"
},
"outbound_date": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Cheapest outbound date, YYYY-MM-DD",
"title": "Outbound Date"
},
"return_date": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Return Date"
},
"other_cheap_dates": {
"description": "How many other cheap outbound dates exist",
"title": "Other Cheap Dates",
"type": "integer"
},
"expires_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Deal is no longer bookable after this date (outbound date)",
"title": "Expires At"
},
"last_checked": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "When FlyScout last saw this price, ISO 8601",
"title": "Last Checked"
},
"booking_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Booking Url"
},
"flyscout_url": {
"title": "Flyscout Url",
"type": "string"
}
},
"required": [
"id",
"origin",
"origin_name",
"destination",
"destination_name",
"country",
"airline",
"price_eur",
"price_note",
"outbound_fare_eur",
"return_fare_eur",
"usual_price_eur",
"discount_pct",
"transport_cost_from_luxembourg_eur",
"price_incl_transport_eur",
"outbound_date",
"return_date",
"other_cheap_dates",
"expires_at",
"last_checked",
"booking_url",
"flyscout_url"
],
"title": "Deal",
"type": "object"
}
},
"title": "SearchResult"
}🟢get_deal(id)
Get the current price of one deal by id. found=false means it is gone or expired.
輸入結構描述
{
"type": "object",
"properties": {
"id": {
"description": "Deal id from search_deals, e.g. 'LUX-BCN-vueling'",
"maxLength": 80,
"pattern": "^[A-Za-z]{3}-[A-Za-z]{3}-[a-z0-9_]+$",
"title": "Id",
"type": "string"
}
},
"required": [
"id"
],
"title": "get_dealArguments"
}輸出結構描述
{
"type": "object",
"properties": {
"found": {
"description": "False if the id is unknown, the deal expired, or it left the feed",
"title": "Found",
"type": "boolean"
},
"deal": {
"anyOf": [
{
"$ref": "#/$defs/Deal"
},
{
"type": "null"
}
]
},
"feed_last_checked": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Feed Last Checked"
},
"feed_stale": {
"title": "Feed Stale",
"type": "boolean"
}
},
"required": [
"found",
"deal",
"feed_last_checked",
"feed_stale"
],
"$defs": {
"Deal": {
"properties": {
"id": {
"description": "Stable deal id (origin-destination-airline). Pass to get_deal.",
"title": "Id",
"type": "string"
},
"origin": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Origin"
},
"origin_name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Origin Name"
},
"destination": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Destination"
},
"destination_name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Destination Name"
},
"country": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Country"
},
"airline": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Airline"
},
"price_eur": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "Return trip total in EUR",
"title": "Price Eur"
},
"price_note": {
"title": "Price Note",
"type": "string"
},
"outbound_fare_eur": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "Outbound one-way fare. Low-cost carriers only",
"title": "Outbound Fare Eur"
},
"return_fare_eur": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "Return one-way fare. Low-cost carriers only",
"title": "Return Fare Eur"
},
"usual_price_eur": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "Median return price on this route",
"title": "Usual Price Eur"
},
"discount_pct": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Discount Pct"
},
"transport_cost_from_luxembourg_eur": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Transport Cost From Luxembourg Eur"
},
"price_incl_transport_eur": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Price Incl Transport Eur"
},
"outbound_date": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Cheapest outbound date, YYYY-MM-DD",
"title": "Outbound Date"
},
"return_date": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Return Date"
},
"other_cheap_dates": {
"description": "How many other cheap outbound dates exist",
"title": "Other Cheap Dates",
"type": "integer"
},
"expires_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Deal is no longer bookable after this date (outbound date)",
"title": "Expires At"
},
"last_checked": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "When FlyScout last saw this price, ISO 8601",
"title": "Last Checked"
},
"booking_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Booking Url"
},
"flyscout_url": {
"title": "Flyscout Url",
"type": "string"
}
},
"required": [
"id",
"origin",
"origin_name",
"destination",
"destination_name",
"country",
"airline",
"price_eur",
"price_note",
"outbound_fare_eur",
"return_fare_eur",
"usual_price_eur",
"discount_pct",
"transport_cost_from_luxembourg_eur",
"price_incl_transport_eur",
"outbound_date",
"return_date",
"other_cheap_dates",
"expires_at",
"last_checked",
"booking_url",
"flyscout_url"
],
"title": "Deal",
"type": "object"
}
},
"title": "GetResult"
}🟢list_destinations(origin)
List destinations that have current deals, with the cheapest price and departure airports.
輸入結構描述
{
"type": "object",
"properties": {
"origin": {
"default": "any",
"description": "Departure airport, or 'any' for all 7",
"enum": [
"LUX",
"SCN",
"HHN",
"CGN",
"CRL",
"BRU",
"FRA",
"any"
],
"title": "Origin",
"type": "string"
}
},
"title": "list_destinationsArguments"
}輸出結構描述
{
"type": "object",
"properties": {
"destinations": {
"items": {
"$ref": "#/$defs/Destination"
},
"title": "Destinations",
"type": "array"
},
"feed_last_checked": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Feed Last Checked"
},
"feed_stale": {
"title": "Feed Stale",
"type": "boolean"
}
},
"required": [
"destinations",
"feed_last_checked",
"feed_stale"
],
"$defs": {
"Destination": {
"properties": {
"destination": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Destination"
},
"destination_name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Destination Name"
},
"country": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Country"
},
"cheapest_price_eur": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Cheapest Price Eur"
},
"origins": {
"items": {
"type": "string"
},
"title": "Origins",
"type": "array"
},
"deal_count": {
"title": "Deal Count",
"type": "integer"
}
},
"required": [
"destination",
"destination_name",
"country",
"cheapest_price_eur",
"origins",
"deal_count"
],
"title": "Destination",
"type": "object"
}
},
"title": "DestinationsResult"
}社群
證據
近期觀測
已驗證未記錄版本3 個工具