{"name":"piratefly","version":"1.0.0","description":"Judges whether a flight price is good right now, from 90 days of observed prices. Not a search engine, not a booking site.","endpoint":"https://piratefly.com/mcp","transport":"streamable-http (JSON-RPC 2.0 over POST); GET returns this card, no SSE","protocolVersion":"2025-06-18","auth":"none","tools":[{"name":"flight_price_verdict","title":"Is this flight price good right now?","description":"Answers \"buy now or wait?\" for a route, from 90 days of observed prices: verdict, percentile of today's cheapest fare against its own history, median, all-time low, and sample size. This is not a flight search: it judges a price. No other public source computes it, because it needs the price history, not today's snapshot.","inputSchema":{"type":"object","properties":{"origin":{"type":"string","description":"Origin CITY NAME, e.g. \"Milan\". Airport codes are not accepted."},"destination":{"type":"string","description":"Destination CITY NAME, e.g. \"Tokyo\". Airport codes are not accepted."}},"required":["origin","destination"]}},{"name":"cheapest_months","title":"Which months are cheapest for this route","description":"The departure months ranked by observed median price for a route, with the median of each. Answers \"when is it cheapest to go\" with measured data instead of seasonal folklore.","inputSchema":{"type":"object","properties":{"origin":{"type":"string","description":"Origin CITY NAME, e.g. \"Milan\". Airport codes are not accepted."},"destination":{"type":"string","description":"Destination CITY NAME, e.g. \"Tokyo\". Airport codes are not accepted."}},"required":["origin","destination"]}},{"name":"when_to_book","title":"How far ahead to book this route","description":"How many days before departure this route has historically been cheapest, from our own observations. Answers \"am I booking too early or too late?\".","inputSchema":{"type":"object","properties":{"origin":{"type":"string","description":"Origin CITY NAME, e.g. \"Milan\". Airport codes are not accepted."},"destination":{"type":"string","description":"Destination CITY NAME, e.g. \"Tokyo\". Airport codes are not accepted."}},"required":["origin","destination"]}},{"name":"watched_routes","title":"Which routes Piratefly can judge","description":"Lists the routes Piratefly observes daily and can therefore judge. Call this first, or after any answer saying a route is not watched, to find out what can be asked. Filter by origin and/or destination city (partial city name is fine) or omit both for the full list.","inputSchema":{"type":"object","properties":{"origin":{"type":"string","description":"Optional: only routes whose origin city contains this text."},"destination":{"type":"string","description":"Optional: only routes whose destination city contains this text."}}}}],"example":"curl -s https://piratefly.com/mcp -H 'content-type: application/json' -d '{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"tools/call\",\"params\":{\"name\":\"flight_price_verdict\",\"arguments\":{\"origin\":\"Milan\",\"destination\":\"Lisbon\"}}}'","client_config":{"mcpServers":{"piratefly":{"type":"http","url":"https://piratefly.com/mcp"}}},"dataset":"https://piratefly.com/fare-index.json","docs":"https://piratefly.com/llms.txt","license":"CC BY 4.0","attribution":"Data: Piratefly flight price history — https://piratefly.com"}