Skip to main content
Glama

estimate_sun_session

Estimate a sun session's outcome: 'I was (or will be) out N minutes — how much vitamin D did I make?' plus 'how long before I'd burn?' for the profile. Takes a start time (defaults to the day's best hour) and session minutes; returns estimated IU (with the physiological cap), average UV and clear-sky minutes-to-sunburn. Use for any 'how much did I get / can I get in X minutes' or 'how long without burning' question.

Input Schema

NameRequiredDescriptionDefault
ageNoAge in years (synthesis declines with age); omit for adult baseline
latYesLatitude in decimal degrees
lonYesLongitude in decimal degrees
dateNoDate as YYYY-MM-DD; defaults to today
minutesYesSession length in minutes
skinTypeNoFitzpatrick skin type 1 (very fair) to 6 (very dark); default 3
timezoneNoIANA timezone like 'Europe/Madrid'. Strongly recommended — without it all times are UTC
startTimeNoLocal HH:MM the session starts; defaults to the day's best hour
elevationMNoGround elevation in metres (UV rises ~8%/km); default sea level
exposedSkinFractionNoSkin exposed: 0.10 face+hands, 0.18 face+arms, 0.25 t-shirt+shorts (default), 0.40 swimsuit

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • removedInput schema / additionalProperties
      Removed value: -false
  2. First observed

TDQS

A4.1/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does disclose the return payload (IU with physiological cap, average UV, clear-sky minutes-to-sunburn) and the defaulting behaviour for start time ('the day's best hour'). The 'clear-sky' qualifier is valuable behavioural context about result fidelity. It never states explicitly that the call is read-only/does not persist anything, which is the remaining gap for a no-annotation tool.

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?

Three sentences, front-loaded with the user question it answers, then inputs, then outputs. The quoted-question framing is slightly verbose but earns its place by mapping natural language intents to the tool; no filler sentences.

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?

For a 10-parameter tool with no output schema, the description usefully enumerates the return fields and notes the two key defaulting behaviours, which is what an agent needs to call it and interpret results. It leaves the timezone/UTC pitfall entirely to the schema, so it is strong but not exhaustive.

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 with units, ranges, and defaults. The description only restates two of them (start time default, session minutes) and adds no syntax or interpretation beyond the schema, so the baseline 3 applies.

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 (estimate) and resource (sun session outcome) and enumerates exactly what is computed: vitamin D IU, average UV, and clear-sky minutes-to-sunburn. The framing distinguishes it from siblings that log a session (log_sun_session) or report a window (get_vitamin_d_window) without naming them, but the output set makes the role unambiguous.

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

Usage Guidelines4/5

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

Explicitly routes the two user intents: 'how much did I get / can I get in X minutes' and 'how long without burning'. It does not name when-not-to-use or point at specific siblings such as log_sun_session for recording an actual session, so it stops short of full alternative routing.

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.

Resources