Skip to main content
Glama
RyanCardin15

noaa-tidesandcurrents-mcp

by RyanCardin15

Get Sun Times

astro_get_sun_times
Read-onlyIdempotent

Calculate sunrise, sunset, solar noon, twilight, golden hour, and day length for a location and date or range; add an IANA timezone for local times.

Instructions

Get sunrise, sunset, solar noon, dawn/dusk (civil), nautical dawn/dusk, astronomical dawn/dusk, golden hour, and day length for a location and date (or each day of a range if end_date is given).

Times are ISO UTC unless an IANA timezone is provided. At high latitudes some events may be null (e.g. no astronomical night in summer). Computed locally.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
dateNoDate in YYYY-MM-DD format. Defaults to today.
end_dateNoOptional range end: one entry per day.
latitudeYesLatitude in decimal degrees (-90 to 90).
timezoneNoIANA timezone for output times (e.g. "America/New_York"). Defaults to UTC ISO timestamps.
longitudeYesLongitude in decimal degrees (-180 to 180).
response_formatNoOutput format: "markdown" for a readable summary table, "json" for the complete structured payload.markdown

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
_responseYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.0.1

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already cover readOnly/idempotent/non-destructive, so the description is freed to add real behavioral context: output is ISO UTC unless an IANA timezone is supplied, high-latitude events may be null (no astronomical night in summer), and computation is done locally. That null-handling note is exactly the kind of edge case an agent needs and is not derivable from the annotations.

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

Conciseness5/5

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

Two tightly packed sentences: the first front-loads the returned events and the range behavior, the second front-loads timezone semantics and the high-latitude null caveat. No filler, no restatement of the title.

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

Completeness5/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 need not explain return values, yet it still usefully flags the timezone-dependent format and the possibility of nulls. Combined with 100% schema coverage and full annotations, an agent has everything required to call this correctly.

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 including date, end_date, timezone, and response_format is already documented in the schema. The description's timezone sentence reinforces the schema's default behavior but adds no new syntax or format detail. Baseline 3 is appropriate when the schema carries the parameter burden.

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

Purpose5/5

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

States a specific verb ('Get') and resource ('sun times') and enumerates the exact events returned (sunrise, sunset, solar noon, dawn/dusk variants, golden hour, day length). This distinguishes it from siblings like astro_get_next_sun_event and astro_get_sun_position, which return a different slice of solar data.

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?

The description implies usage via the 'for a location and date (or each day of a range if end_date is given)' clause, which tells the agent how to get single vs. multi-day output. However, it never names when to prefer astro_get_next_sun_event or astro_get_sun_position instead, so the agent must infer the boundary from the sibling names.

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