Server definition
- Hash
- sha256:b96a66b3e49944b88d990a2384cd316d6f91dfaf269bf39c204258fb0d1c78c6
- What it is
- What a remote MCP server returned when asked what it offers: 7 tools
The blob, as servednamed by its sha256
{
"instructions": "Multi-airline Starlink tracker. Scope: tracked airlines. To change scope, append `?scope=UA|HA|AS|QR` to the connector URL.\n\nPeople who install this connector care about Starlink hours, but not at any cost. When presenting connections, show each option's total time and stops next to the nonstop, and recommend a connection only when the extra time is modest for the Starlink gained. Compare coverage ratio (expected Starlink hours / total hours), not leg percentages. Connections are built from route history, not same-day schedules — say they should be confirmed on the airline's site before booking.\n\nTool selection:\n• Routing/tradeoff → plan_starlink_itinerary (per-airline nonstop comparison)\n• Specific flight number → check_flight (≤2 days out) or predict_flight_starlink (further out, pass date)\n• Qatar Airways (QR…): use check_flight at any date — it answers from the published aircraft type (~6 days) or observed-type history beyond.\n• Route without flight number → predict_route_starlink\n• search_starlink_flights = next ~2 days confirmed only\n\n⚠️ Low/no Starlink flight: check_flight and predict_flight_starlink EMBED a markdown table of alternatives (route looked up + planItinerary run for you). RENDER THE TABLE — don't summarize it into prose, don't ask which segment (both are shown), don't re-call predict_route_starlink (only finds directs, misses the connections in the table), don't add \"download offline\" / \"use legacy WiFi\" / \"mobile hotspot\" tips (non-responsive — they asked for better FLIGHTS).\n\nWhen a tool wraps content in <present_verbatim>...</present_verbatim>, copy that content into your response unchanged. This is a hard constraint, not a suggestion.",
"tools": [
{
"description": "Use when the user asks \"does my flight have Starlink/WiFi?\" with a specific tracked-airline flight number and date. Returns FIRM YES if assigned to a verified-Starlink plane, FIRM NO if assigned to a verified non-Starlink plane, or a probability estimate if no assignment exists yet (assignments publish ~2 days out). For dates further out, call predict_flight_starlink directly — check_flight just falls through to the same estimate with extra latency.",
"inputSchema": {
"examples": [
{
"date": "2026-05-15",
"flight_number": "UA544"
}
],
"properties": {
"date": {
"description": "Flight date in YYYY-MM-DD format, matched to the departure airport's local calendar date (UTC fallback for unmapped airports).",
"examples": [
"2026-05-15"
],
"type": "string"
},
"destination": {
"description": "Optional 3-letter IATA arrival airport of the traveller's leg (e.g. 'SAN'); with origin, picks one leg of a multi-leg flight number.",
"type": "string"
},
"flight_number": {
"description": "Flight number, e.g. 'UA544' or just the digits. Also accepts ICAO airline codes like UAL544; use the marketing flight number (UA5212, not SKW5212).",
"examples": [
"UA544",
"544"
],
"type": "string"
},
"origin": {
"description": "Optional 3-letter IATA departure airport of the traveller's leg (e.g. 'DEN'); scopes the answer to that leg of a multi-leg flight number.",
"type": "string"
}
},
"required": [
"flight_number",
"date"
],
"type": "object"
},
"name": "check_flight",
"outputSchema": null
},
{
"description": "Use when the user asks \"how far along is the Starlink rollout?\" or wants overall fleet numbers. Returns tracked airlines Starlink installation counts and percentages across mainline and express fleets, plus a per-aircraft-type breakdown (installed/total per family). Not for per-flight checks — use check_flight for that.",
"inputSchema": {
"examples": [
{}
],
"properties": {},
"type": "object"
},
"name": "get_fleet_stats",
"outputSchema": null
},
{
"description": "Use when the user asks about the planes themselves — \"which tail numbers have Starlink?\", \"which aircraft types are equipped?\". Returns tracked airlines tail numbers, aircraft types, operators, and install dates (default 50 most recent; pass limit up to 500). Not for finding flights — use search_starlink_flights for that.",
"inputSchema": {
"examples": [
{
"fleet": "express",
"limit": 100
},
{}
],
"properties": {
"fleet": {
"description": "Filter to only express (regional) or mainline aircraft.",
"enum": [
"express",
"mainline"
],
"examples": [
"express"
],
"type": "string"
},
"limit": {
"description": "Maximum number of aircraft to return (default 50).",
"examples": [
100
],
"maximum": 500,
"minimum": 1,
"type": "integer"
}
},
"type": "object"
},
"name": "list_starlink_aircraft",
"outputSchema": null
},
{
"description": "Use when the user asks \"what's the best way to fly X to Y with Starlink?\". Compares Starlink odds on the route across every tracked airline (nonstop, per-carrier). For multi-stop UA routings, connect to unitedstarlinktracker.com/mcp.",
"inputSchema": {
"examples": [
{
"destination": "EWR",
"origin": "SFO"
},
{
"date": "2026-05-20",
"destination": "JAX",
"max_stops": 1,
"origin": "ORD"
}
],
"properties": {
"date": {
"description": "Optional YYYY-MM-DD travel date. When within ~2 days (the aircraft-assignment window), uses confirmed tail assignments for higher accuracy. Beyond that, uses historical prediction only — confirmed assignments don't apply to future dates.",
"examples": [
"2026-05-20"
],
"type": "string"
},
"destination": {
"description": "Destination airport IATA code (e.g. 'JAX').",
"examples": [
"JAX"
],
"type": "string"
},
"max_results": {
"description": "Maximum number of full-coverage itineraries (default 8). Up to 3 partial baselines may be appended.",
"examples": [
8
],
"maximum": 20,
"minimum": 1,
"type": "integer"
},
"max_stops": {
"description": "Maximum number of connection stops (default 2, max 3). 0=direct only, 1=one connection, etc.",
"examples": [
1
],
"maximum": 3,
"minimum": 0,
"type": "integer"
},
"origin": {
"description": "Origin airport IATA code (e.g. 'SFO').",
"examples": [
"SFO"
],
"type": "string"
}
},
"required": [
"origin",
"destination"
],
"type": "object"
},
"name": "plan_starlink_itinerary",
"outputSchema": null
},
{
"description": "Use when the user asks \"will my flight have Starlink?\" for a date too far out for a confirmed assignment, or with no date at all. Returns the probability that a tracked-airline flight number gets a Starlink plane, from historical observations. Reliability varies: high-confidence (5+ obs) is the most reliable tier but is not a guarantee; low-confidence (0-1 obs) is just the fleet prior. UA1-2999 (mainline) has materially lower coverage than UA3000-6999 (express) — call get_fleet_stats for the current split rather than assuming a rate.",
"inputSchema": {
"examples": [
{
"date": "2026-06-01",
"flight_number": "UA544"
},
{
"flight_number": "UA544"
}
],
"properties": {
"date": {
"description": "Optional YYYY-MM-DD. ALWAYS PASS if known — the probability is date-agnostic, but when the result is low (<20%) the tool uses this date to look up the actual route and returns a ready-to-run plan_starlink_itinerary call with origin/dest pre-filled, so alternatives can be presented in one turn.",
"examples": [
"2026-06-01"
],
"type": "string"
},
"flight_number": {
"description": "Flight number, e.g. 'UA544' or just the digits. Also accepts ICAO airline codes like UAL544; use the marketing flight number (UA5212, not SKW5212).",
"examples": [
"UA544"
],
"type": "string"
}
},
"required": [
"flight_number"
],
"type": "object"
},
"name": "predict_flight_starlink",
"outputSchema": null
},
{
"description": "Use when the user asks \"which flights between X and Y have Starlink?\" or \"what Starlink flights serve airport X?\". Single-route lookup: returns tracked airlines flight numbers on a route (or touching an airport) ranked by Starlink probability. Both origin and destination are required (per-airline route comparison). For trip planning with connections, use plan_starlink_itinerary instead — this tool has no connection logic or coverage-ratio ranking. Empty result = route not served by Starlink planes.",
"inputSchema": {
"examples": [
{
"destination": "EWR",
"origin": "SFO"
},
{
"origin": "ORD"
}
],
"properties": {
"destination": {
"description": "Destination airport IATA code (e.g. 'EWR', 'DEN'). Case-insensitive.",
"examples": [
"EWR"
],
"type": "string"
},
"limit": {
"description": "Maximum number of flight numbers to return (default 10).",
"examples": [
10
],
"maximum": 50,
"minimum": 1,
"type": "integer"
},
"origin": {
"description": "Origin airport IATA code (e.g. 'SFO', 'ORD'). Case-insensitive.",
"examples": [
"SFO"
],
"type": "string"
}
},
"type": "object"
},
"name": "predict_route_starlink",
"outputSchema": null
},
{
"description": "Use when the user asks \"what Starlink flights leave from X tomorrow?\" or wants confirmed near-term departures. Returns CONFIRMED Starlink flights in the next ~2 days — firm schedule, not prediction. Pass at least one of origin or destination (both narrows to a single route). Aircraft assignments aren't published further out, so for later dates use predict_route_starlink or plan_starlink_itinerary instead.",
"inputSchema": {
"examples": [
{
"origin": "ORD"
},
{
"destination": "EWR",
"origin": "SFO"
}
],
"properties": {
"destination": {
"description": "Destination airport IATA code (e.g. 'LAX', 'DEN'). Case-insensitive.",
"examples": [
"LAX"
],
"type": "string"
},
"limit": {
"description": "Maximum number of flights to return (default 20).",
"examples": [
20
],
"maximum": 100,
"minimum": 1,
"type": "integer"
},
"origin": {
"description": "Origin airport IATA code (e.g. 'SFO', 'ORD'). Case-insensitive.",
"examples": [
"ORD"
],
"type": "string"
}
},
"type": "object"
},
"name": "search_starlink_flights",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:b96a66b3e49944b88d990a2384cd316d6f91dfaf269bf39c204258fb0d1c78c6 | sha256sum