Get Point Elevations
elevation_get_pointsLook up ground elevation at up to 100 coordinates in one call, in meters and feet, with the dataset and resolution behind every point. Accepts up to 1,000 submitted positions; only the first 100 are validated and sampled, with counts and next_offset identifying the unvalidated remainder. Continue with originalPoints.slice(next_offset). Inside USGS 3DEP coverage (the US and its territories, plus much of Canada and Mexico) values come from 3DEP at 1–30 m resolution. Elsewhere they come from Open Topo Data: SRTM at about 30 m on land between 60°N and 56°S, and Mapzen terrain tiles beyond SRTM's coverage and over the ocean, where values below 0 m are sea-floor depths. A point with no data in any queried dataset returns status no_data instead of failing the call.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"points": "<points>"
},
"name": "elevation_get_points"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| points | Yes | 1–1,000 submitted positions as {lat, lon} objects in decimal degrees (WGS84), or one point object. Only the first 100 are validated and sampled; an invalid unserved tail is validated when resubmitted. Coordinate aliases latitude, longitude, lng, and long are accepted. | |
| source | No | Elevation source: auto (default) uses USGS 3DEP where it has data and Open Topo Data (SRTM, with Mapzen terrain tiles where SRTM has no data) for the rest; usgs_3dep uses 3DEP only; opentopodata uses Open Topo Data only. Case is ignored and spaces or hyphens read as underscores, so USGS-3DEP and open topo data are accepted; 3dep, usgs, and epqs are also aliases for usgs_3dep. | auto |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| error | No | Present when the call failed. Absent on success. | |
| notice | No | Guidance on points without data, Mapzen sea-floor values, results mixing 3DEP with Open Topo Data, and unavailable 3DEP acquisition dates. | |
| points | No | One entry per processed position, in input order, at most 100. | |
| attribution | No | Sources to credit for the returned values, one line per dataset that answered. | |
| next_offset | No | Zero-based index immediately after the processed prefix in this call, or null when exhausted. Continue with originalPoints.slice(next_offset), where originalPoints is the array submitted in this call; use each newly submitted array for its next slice. | |
| source_mode | No | The source the call used (auto unless the caller chose one). | |
| points_with_data | No | Number of points with status ok. | |
| processed_points | No | Positions validated and sampled in this call, at most 100. | |
| remaining_points | No | Unprocessed, unvalidated positions remaining in this input. | |
| requested_points | No | Submitted positions, including duplicates and coverage misses. | |
| vertical_reference | No | Height-reference context per answering dataset, including unverified references and whether heights share a datum. No vertical datum conversion is performed. |