Skip to main content
Glama

entity_change

change(site, t0, t1) — the STRUCTURED CHANGE between two dated frames of one site (entity_type + id, or lat + lng): per class (water · ice · canopy · pad · stockpile · unknown) the area in m², by_sensor_m2 {optical, radar}, said (what each instrument saw: an area, "saw no change", "makes no call", or "untestable (reason)"), sensors_agreed, and a confidence from agreement with confidence_why: high = optical and radar both flag it in the same place; medium = one flags it and the other is blind to the class or untestable; low = they disagree (different places, or one flags it and the other could see it and saw none), or stockpile, or pad/stockpile without a terrain check. Optical is Sentinel-2; Landsat only for a date with no Sentinel-2 (before 2015-06-23 or a gap); radar is Sentinel-1 (from 2014-10). A Copernicus DEM terrain prior removes pad and stockpile on ground steeper than 12° (reported as steep_ground_excluded_m2). Every answer carries height_class — read it FIRST; the stockpile's volume block serves only what its class can say: repeat_surface = two lidar surfaces of the same ground (USGS 3DEP in the US, Canada's HRDEM by acquisition project) as their DIRECT DIFFERENCE — the ONLY measured volume change (change_m3 ± uncertainty, change_beyond_uncertainty = |change| > 2σ); prior_only = one dated surface against the Copernicus DEM (2011–2015): material ABOVE that old surface at a date, NOT a change between your dates (no change_m3); profile = a NASA ICESat-2 laser PROFILE (a line of 40 m segments, SlideRule) crossed the pile: the height along the line and the share it crossed, never a volume — ICESat-2 is NOT a worldwide second surface (tracks are ~30 km apart; most piles are missed); untestable = no dated height source crossed it (what was tried is listed; brightness and shape only, low). withheld names any figure the class cannot support; disturbed (Sentinel-1 coherence loss) is not computed yet. Each answer is kept in place.index as a measurement (append-only, with its inputs and the operator served that day; recorded gives its id). WHEN NOT TO CALL: who owns or operates the site is relationships (or the API's /relationships/walk), not this; the 3D shape of a site at one date is site_reconstruction; never quote a volume change unless height_class is repeat_surface. Not a video and not a picture — fetch stills with look_at / look_through. For spans of 300+ days the t0 frame is taken at t1's day of year (same_season=true, default). A sensor that cannot see the pair says UNTESTABLE with its reason; change_untestable is true only when BOTH are (then the answer costs nothing). change_untestable says the CHANGE could not be measured; height_class says what the stockpile's HEIGHT can support — a measured change can still carry height_class "untestable". Footprint: the site's held footprint, else a 500 m circle (stated in footprint); radius_m 50..2500 overrides. An entity whose coordinates are only a country centre is refused (409, not charged) — pass lat + lng. Dates YYYY-MM-DD, t0 on/after 1984-03-16, t1 default today. Slow: about 15–60 s. AGENT KEYS ONLY (a browser session is refused BEFORE any charge). SIDE EFFECTS: none beyond the charge — read-only. ⚠ CHARGING: ONE quote, ONE debit = two stills at look_at's live price, reserved up front; an UNTESTABLE answer costs nothing. Quote with billing_quote("/api/v1/entity.change"); the JSON carries charged_joules and a price block.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idNo
t0Yes
t1No
latNo
lngNo
radius_mNo
max_cloudNo
entity_typeNo
same_seasonNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

Score is being calculated.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources