Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SKYGLANCE_POLLNoSet 0 to disable background recording.1
SKYGLANCE_HOME_DIRNoWhere the database and lock live.~/.skyglance
SKYGLANCE_HOME_LATNoYour latitude. Enables history recording when set with SKYGLANCE_HOME_LON.
SKYGLANCE_HOME_LONNoYour longitude. Enables history recording when set with SKYGLANCE_HOME_LAT.
SKYGLANCE_POLL_INTERVALNoSeconds between polls (minimum 30).60

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
whats_overheadA

What is in the sky above a location right now, and where to look.

Returns aircraft ranked by what a person would actually notice: directly overhead first, then what is about to be, then the rest by how high in the sky they sit. Includes viewing conditions, because telling someone to look up at an overcast sky is useless.

coming_overheadA

What is about to pass overhead, within the next 90 seconds.

Deliberately refuses to predict further out. Straight-line extrapolation from track and ground speed is accurate to about 0.1 km at 30 seconds but misses by a median 6 km at 4 minutes, because aircraft on approach turn constantly. Anything further away is reported as inbound with no countdown rather than a number that would be wrong most of the time.

nearest_aircraftC

The closest aircraft right now, by slant range, whether or not they're visible.

identify_aircraftA

Full identity for one aircraft: type, operator, route, and a photograph.

Give any one of an ICAO hex, a registration, or a callsign. Results are cached permanently, since an airframe's type and owner do not change.

track_flightB

Where a specific flight is right now, anywhere in the world.

Searches the whole feed rather than a circle. Returns nothing if the flight is not currently airborne or is outside receiver coverage — the two are indistinguishable.

military_aircraftB

Military aircraft currently airborne, worldwide or near a location.

Set near_me true to filter to within_km of your location.

emergenciesA

Aircraft squawking an emergency code, worldwide.

7700 general emergency, 7600 radio failure, 7500 hijack. Usually zero — that is the normal and desirable answer, not a failure.

find_by_typeB

Every airborne aircraft of one ICAO type code, worldwide or nearby.

Examples: A388 (A380), B748 (747-8), A124 (An-124), C17. Set near_me to filter.

interesting_nearbyB

Only the aircraft worth walking outside for.

Scores each aircraft as emergency, rare type, military, large-and-low, or a close low helicopter, and returns those above the threshold. Thresholds are deliberately harsh: under an approach path a generous filter fires constantly.

track_historyA

Where an aircraft has actually flown over roughly the last day.

Returns each airborne leg — when it started and ended, how long, how far, the highest altitude reached, and a downsampled path. This is what answers "where has this plane been today", "what route did it fly", and "how many legs has it done".

Not a flight archive: roughly 24 hours only, and long straight jumps in a path are gaps in volunteer receiver coverage rather than the route actually flown.

airport_activityA

What is moving around an airport right now, observed rather than scheduled.

Buckets nearby aircraft into departing, arriving, on the ground, and overflying, based on position and climb or descent rate.

This is NOT a departure board. Nothing in this data knows a schedule, a gate, or which airport a flight is bound for — a jet climbing out near the field is inferred to be departing it. In a metro area with several airports close together, a neighbour's traffic can be misattributed.

airline_infoA

Look up an airline by its ICAO code — the prefix on a callsign.

JBU is JetBlue, BAW is British Airways, UAE is Emirates. Returns the airline name, its IATA code, country, and the radio callsign crews actually say.

privacy_blocked_aircraftC

Aircraft using privacy programmes that hide their identity on most trackers.

LADD (Limiting Aircraft Data Displayed) is an opt-out US owners can request, and PIA assigns a rotating temporary hex address. These are visible here because adsb.lol publishes unfiltered community data. Positions are real; the identity is obscured by design, so do not expect a registration or owner.

fleet_viewA

Every flight an airline currently has airborne, worldwide.

Give the ICAO airline code — the three-letter prefix on a callsign. BAW is British Airways, UAE is Emirates, DAL is Delta, JBU is JetBlue. Use airline_info if you only have the two-letter IATA code.

Reads one shared global snapshot rather than querying per aircraft, so it is cheap to ask repeatedly. Only aircraft within volunteer receiver coverage appear — a long-haul fleet will be under-counted while its aircraft are over oceans.

search_aircraftA

Find airborne aircraft matching any combination of filters.

Filter by airline (ICAO code), aircraft type, altitude band, speed band, or military status — worldwide, or within a distance of a location. This is the general search: "any 747s above 40,000 feet", "Lufthansa aircraft below 10,000 feet near me", "anything doing over 500 knots".

global_statsA

How much is flying right now, worldwide: totals, busiest types and airlines.

A single shared snapshot of everything volunteer receivers can hear. Note this is always an undercount of real global traffic — oceans, Africa and central Asia have little to no receiver coverage, so those aircraft are simply absent.

busiest_airportsA

Which major airports have the most traffic around them right now.

Counts aircraft on the ground or manoeuvring near each of ~1,150 major airports, from one shared global snapshot. Optionally filter to a two-letter country code such as US, GB or IN.

This measures observed activity, not scheduled movements, and it favours airports in well-covered regions — a busy airport with no nearby receivers will look quiet.

viewing_conditionsB

Cloud, visibility and daylight — whether it's worth looking up at all.

feed_healthA

Per-source health: latency, failures, and whether a circuit breaker is open.

These are volunteer-run services with no SLA. When one is down the others cover it, which is why three are queried rather than one.

sighting_historyA

Every recorded pass of one aircraft over your location, most recent first.

is_this_newC

Have you seen this airframe, or this type, over your location before?

my_recordsB

Your personal extremes: closest, lowest, most directly overhead, busiest day.

spotting_statsC

How much you've seen: totals, most common types, busiest hours.

poller_statusA

Whether background history recording is running, and what it has captured.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.2/5.0

Scored across 24 tools

Disambiguation3/5

Most tools have clearly different outputs, but several overlapping query patterns exist: search_aircraft duplicates the type/military filters exposed by find_by_type and military_aircraft, and whats_overhead/coming_overhead/interesting_nearby all describe nearby sky observations. Descriptions are detailed enough to resolve most confusion, but an agent could easily pick the wrong one.

Naming Consistency3/5

Names are all lowercase snake_case and descriptive, but they follow no single convention: some are verb_noun (identify_aircraft, track_flight), some are noun phrases (global_stats, emergencies), and some are questions (is_this_new, whats_overhead). The set is readable but stylistically mixed.

Tool Count3/5

24 tools is in the borderline-heavy range and the server covers multiple subdomains: live search, identity, airport traffic, personal spotting history, and feed health. Each tool has a use case, but the set could likely be consolidated without losing much utility.

Completeness4/5

The surface covers the skywatching domain well: find/search, identify, track current/history, airport activity, global stats, weather, and personal records. Minor gaps exist, such as no controls for the background poller and no arbitrary time-window history beyond about a day, but they do not block core workflows.

Maintenance

ActivitySlowing
ResponsivenessNo issues