Skip to main content
Glama

Sun position and shadow

sun_position
Read-onlyIdempotent

The Sun's apparent elevation and azimuth (from true north) at a place and time, and the shadow a vertical object casts on level ground (NOAA solar position, refraction included).

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": {
      "latitude": "<latitude>",
      "longitude": "<longitude>",
      "time": "<time>"
    },
    "name": "sun_position"
  }
}

Input Schema

NameRequiredDescriptionDefault
tzNoIANA time zone for a local time, e.g. Australia/Melbourne
timeYesISO 8601, with a UTC offset (2026-12-21T12:00:00+11:00) or local with tz
latitudeYesLatitude in degrees (WGS84)
longitudeYesLongitude in degrees (WGS84)
object_height_mNoHeight of a vertical object, for its shadow

Output Schema

NameRequiredDescriptionDefault
timeYes
unitsNoUnit of each numeric field
methodYes
statusNook
warningsNoCaveats to tell the user
provenanceNoSource, licence, attribution, retrieval time and method
azimuth_degYesClockwise from true north
above_horizonYes
elevation_degYesApparent elevation above a flat horizon, refraction included
declination_degYes
shadow_length_mNoOn level ground, for object_height_m
equation_of_time_minYes
shadow_direction_degNoDirection the shadow points, from true north

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare read-only, idempotent, open-world, non-destructive behavior, so the safety profile is covered. The description adds genuine substance beyond that: the NOAA algorithm, that atmospheric refraction is included, that azimuth is measured from true north, and that the shadow computation assumes a vertical object on level ground. Those assumptions are exactly the caveats an agent needs. It doesn't say what happens when object_height_m is omitted, which keeps it from a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One dense sentence with no filler, leading with the primary outputs rather than burying them. The parenthetical about NOAA and refraction earns its place. Slightly dense phrasing 'a place and time, and the shadow...' but no wasted clauses.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present the description needn't describe return values, and annotations cover safety. For a 5-parameter, 100%-documented tool this is nearly complete, though it could state that omitting object_height omits the shadow and clarify the tz/time interplay.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so latitude, longitude, time, tz and object_height_m are all documented in the schema; baseline is 3. The description adds marginal semantics by tying object_height to shadow length and azimuth to true north, but it doesn't clarify the tz/time interaction or the optional-height behavior beyond what the schema says.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names the specific outputs (apparent elevation, azimuth from true north, and cast shadow) and the inputs that scope them (a place and time). That distinguishes it from the sibling sun_times tool, though it never names that sibling explicitly. A specific, non-tautological statement of what is computed.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no exclusions, and no mention of the obvious sibling sun_times, which an agent must choose between for solar queries. Usage must be inferred entirely from the resource described.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.