Starlink WiFi status for United, Alaska and Hawaiian flights, with per-airline route odds.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Use when the user asks "does my flight have Starlink/WiFi?" with a specific tracked-airline flight number and date. Returns YES if the published aircraft assignment is a plane verified to have Starlink, LIKELY YES if that plane is listed as Starlink-equipped but not yet verified, NO if it is a plane verified to have other WiFi, or a probability estimate if no assignment exists yet (assignments publish ~2 days out). An assignment can still change through an aircraft swap. For dates further out, call predict_flight_starlink directly — check_flight just falls through to the same estimate with extra latency.
Flight date in YYYY-MM-DD format, matched to the departure airport's local calendar date (UTC fallback for unmapped airports).
Flight number, e.g. 'UA544' or just the digits. Also accepts ICAO airline codes like UAL544; use the marketing flight number (UA5212, not SKW5212).
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.
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.
Use when the user asks "does my flight have Starlink/WiFi?" with a specific tracked-airline flight number and date. Returns YES if the published aircraft assignment is a plane verified to have Starlink, LIKELY YES if that plane is listed as Starlink-equipped but not yet verified, NO if it is a plane verified to have other WiFi, or a probability estimate if no assignment exists yet (assignments publish ~2 days out). An assignment can still change through an aircraft swap. For dates further out, call predict_flight_starlink directly — check_flight just falls through to the same estimate with extra latency.
| Argument | Type | Description |
|---|---|---|
| date* | string | Flight date in YYYY-MM-DD format, matched to the departure airport's local calendar date (UTC fallback for unmapped airports). |
| origin | string | 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. |
| destination | string | 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. |
| flight_number* | string | Flight number, e.g. 'UA544' or just the digits. Also accepts ICAO airline codes like UAL544; use the marketing flight number (UA5212, not SKW5212). |
{
"type": "object",
"examples": [
{
"date": "2026-05-15",
"flight_number": "UA544"
}
],
"required": [
"flight_number",
"date"
],
"properties": {
"date": {
"type": "string",
"examples": [
"2026-05-15"
],
"description": "Flight date in YYYY-MM-DD format, matched to the departure airport's local calendar date (UTC fallback for unmapped airports)."
},
"origin": {
"type": "string",
"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."
},
"destination": {
"type": "string",
"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."
},
"flight_number": {
"type": "string",
"examples": [
"UA544",
"544"
],
"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)."
}
}
}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.
No arguments.
{
"type": "object",
"examples": [
{}
],
"properties": {}
}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.
| Argument | Type | Description |
|---|---|---|
| fleet | string | Filter to only express (regional) or mainline aircraft. |
| limit | integer | Maximum number of aircraft to return (default 50). |
{
"type": "object",
"examples": [
{
"fleet": "express",
"limit": 100
},
{}
],
"properties": {
"fleet": {
"enum": [
"express",
"mainline"
],
"type": "string",
"examples": [
"express"
],
"description": "Filter to only express (regional) or mainline aircraft."
},
"limit": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"examples": [
100
],
"description": "Maximum number of aircraft to return (default 50)."
}
}
}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.
| Argument | Type | Description |
|---|---|---|
| date | string | 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. |
| origin* | string | Origin airport IATA code (e.g. 'SFO'). |
| max_stops | integer | Maximum number of connection stops (default 2, max 3). 0=direct only, 1=one connection, etc. |
| destination* | string | Destination airport IATA code (e.g. 'JAX'). |
| max_results | integer | Maximum number of itineraries with a Starlink-flown flight on every leg (default 8). Up to 3 partial baselines may be appended. |
{
"type": "object",
"examples": [
{
"origin": "SFO",
"destination": "EWR"
},
{
"date": "2026-05-20",
"origin": "ORD",
"max_stops": 1,
"destination": "JAX"
}
],
"required": [
"origin",
"destination"
],
"properties": {
"date": {
"type": "string",
"examples": [
"2026-05-20"
],
"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."
},
"origin": {
"type": "string",
"examples": [
"SFO"
],
"description": "Origin airport IATA code (e.g. 'SFO')."
},
"max_stops": {
"type": "integer",
"maximum": 3,
"minimum": 0,
"examples": [
1
],
"description": "Maximum number of connection stops (default 2, max 3). 0=direct only, 1=one connection, etc."
},
"destination": {
"type": "string",
"examples": [
"JAX"
],
"description": "Destination airport IATA code (e.g. 'JAX')."
},
"max_results": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"examples": [
8
],
"description": "Maximum number of itineraries with a Starlink-flown flight on every leg (default 8). Up to 3 partial baselines may be appended."
}
}
}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.
| Argument | Type | Description |
|---|---|---|
| date | string | 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. |
| flight_number* | string | Flight number, e.g. 'UA544' or just the digits. Also accepts ICAO airline codes like UAL544; use the marketing flight number (UA5212, not SKW5212). |
{
"type": "object",
"examples": [
{
"date": "2026-06-01",
"flight_number": "UA544"
},
{
"flight_number": "UA544"
}
],
"required": [
"flight_number"
],
"properties": {
"date": {
"type": "string",
"examples": [
"2026-06-01"
],
"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."
},
"flight_number": {
"type": "string",
"examples": [
"UA544"
],
"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)."
}
}
}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.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of flight numbers to return (default 10). |
| origin | string | Origin airport IATA code (e.g. 'SFO', 'ORD'). Case-insensitive. |
| destination | string | Destination airport IATA code (e.g. 'EWR', 'DEN'). Case-insensitive. |
{
"type": "object",
"examples": [
{
"origin": "SFO",
"destination": "EWR"
},
{
"origin": "ORD"
}
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"examples": [
10
],
"description": "Maximum number of flight numbers to return (default 10)."
},
"origin": {
"type": "string",
"examples": [
"SFO"
],
"description": "Origin airport IATA code (e.g. 'SFO', 'ORD'). Case-insensitive."
},
"destination": {
"type": "string",
"examples": [
"EWR"
],
"description": "Destination airport IATA code (e.g. 'EWR', 'DEN'). Case-insensitive."
}
}
}Use when the user asks "what Starlink flights leave from X tomorrow?" or wants scheduled near-term departures. Returns flights in the next ~2 days whose currently assigned aircraft is Starlink-equipped (verified or listed) — a published assignment, not a prediction, though an aircraft swap can still change it. 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.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of flights to return (default 20). |
| origin | string | Origin airport IATA code (e.g. 'SFO', 'ORD'). Case-insensitive. |
| destination | string | Destination airport IATA code (e.g. 'LAX', 'DEN'). Case-insensitive. |
{
"type": "object",
"examples": [
{
"origin": "ORD"
},
{
"origin": "SFO",
"destination": "EWR"
}
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"examples": [
20
],
"description": "Maximum number of flights to return (default 20)."
},
"origin": {
"type": "string",
"examples": [
"ORD"
],
"description": "Origin airport IATA code (e.g. 'SFO', 'ORD'). Case-insensitive."
},
"destination": {
"type": "string",
"examples": [
"LAX"
],
"description": "Destination airport IATA code (e.g. 'LAX', 'DEN'). Case-insensitive."
}
}
}