Skip to main content
Glama

Sun position

get_sun_position
Read-onlyIdempotent

Calculates the Sun's altitude and compass bearing at a place, date and UTC time, with the shadow of a 1 m upright and the day's sunrise and sunset in UTC. A place is one of the website's 20 cities or a latitude and longitude; without a date and time the result is for the current moment.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "get_sun_position"
  }
}

Input Schema

NameRequiredDescriptionDefault
dateNoUTC date as YYYY-MM-DD, from 1900 to 2100. Defaults to today in UTC.
timeNoUTC time as HH:MM on a 24-hour clock. Defaults to the current time when no date is given, otherwise to 12:00.
placeNoCity, one of Anchorage, Auckland, Buenos Aires, Cape Town, Dubai, Johannesburg, Lima, London, Los Angeles, Mexico City, Moscow, Mumbai, Nairobi, New York, Perth, Santiago, São Paulo, Singapore, Sydney or Tokyo. Not needed when latitude and longitude are given.
latitudeNoLatitude in degrees, north positive: -90 to 90.
longitudeNoLongitude in degrees, east positive: -180 to 180.

Output Schema

NameRequiredDescriptionDefault
itemYes
viewYes
requestYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds the useful defaulting rule ('without a date and time the result is for the current moment'), but says nothing about accuracy limits, error behavior for invalid city/lat-lon combinations, or partial-input handling.

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?

Two sentences, no filler, and the core capability is front-loaded before the input/default notes. The first sentence is densely packed with output detail, but each clause carries information.

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 there is no need to describe returns, yet the description still sketches them, and it covers the optional-input defaulting clearly. Only the ambiguity of supplying both a city and coordinates is left unaddressed.

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 every parameter is already documented, including the city list and coordinate ranges. The description restates the place-vs-coordinates choice but adds no new meaning such as precedence rules when both city and lat/long are supplied.

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?

Names a specific verb and resource ('Calculates the Sun's altitude and compass bearing') and even enumerates the returned quantities (shadow of a 1 m upright, sunrise/sunset in UTC). It does not distinguish itself from sibling get_daylight_hours, which overlaps on sunrise/sunset, so it falls short of a 5.

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

Usage Guidelines3/5

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

Explains the input modes (a website city name or a latitude/longitude pair) and the default-to-now behavior, which implies usage. But it never states when to pick this over get_daylight_hours or when lat/long should be preferred over a city name.

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.