Skip to main content
Glama

CalcBright Calculators

Sleep Calculator

sleep_calculator
Read-onlyIdempotent

Up at 7:00 AM? Aim for bed at 9:45 or 11:15 PM. Count back whole 90-minute sleep cycles to pick a bedtime or alarm that lands in light sleep, not deep sleep. Web page: https://calcbright.com/sleep-calculator

Input Schema

NameRequiredDescriptionDefault
modeNoI want to…wake
timeNoWake-up time (HH:MM, 24-hour)07:00
latencyNoTime to fall asleep (min)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=false, and idempotentHint=true, so the safety profile is covered. The description adds real behavioral value by disclosing the underlying algorithm (whole 90-minute cycles targeting light rather than deep sleep), which explains why results cluster at specific times. It does not describe the return format, but for a deterministic calculator that gap is minor.

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?

The description is front-loaded with a vivid example before explaining the mechanism, and each sentence carries information. The trailing web-page URL is slightly extraneous for an agent but not disruptive. Efficient overall.

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 three-parameter, no-required-argument calculator with full schema coverage and read-only annotations, the description supplies enough to call it correctly and interpret results. The absence of any return-value description is acceptable given the deterministic numeric output, though naming what it returns would round it out.

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 coverage is 100%, so mode, time, and latency are already documented, and the description adds no per-parameter syntax or format guidance. The example (7:00 AM wake, 9:45/11:15 PM bedtimes) indirectly illustrates how time and cycle-counting interact, which is mild added meaning. Baseline 3 is appropriate when the schema does the heavy lifting.

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 makes clear this computes a bedtime or wake time by counting back 90-minute sleep cycles, illustrated with a concrete 7:00 AM example. No sibling tool overlaps with sleep-cycle math, so it is unambiguously distinguishable. It never states the verb 'calculate' directly, relying on the example to convey purpose, which keeps it just 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?

Usage is only implied through the example scenario (you have a wake time and want a bedtime). There is no explicit when-to-use statement, no mention of the mode toggle that reverses the calculation, and no alternatives to weigh against. Adequate but leaves the agent to infer the trigger conditions.

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