Skip to main content
Glama

get_daily_stats

Read-only

Fetch daily calorie or step totals for a date range from Garmin Connect. Handles long ranges by chunking and returns combined active/resting calories or steps with distance.

Instructions

GETs /usersummary-service/stats/daily/{start}/{end}?statsType=CALORIES|STEPS; statsType is exactly "CALORIES" or "STEPS" (any other value, lower-case included, is a Garmin 404). Garmin 400s when end - start > 27, so longer ranges are fetched in 28-day windows and the rows concatenated; Garmin's per-request aggregations (averages) are DROPPED rather than returned wrong for a chunked range. A range with no data returns [] (Garmin answers null). Overlaps getDailySteps/getCaloriesDaily; this one returns total/active/resting calories together, and steps with totalDistance and…

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
endYesCalendar date, YYYY-MM-DD (UTC)
startYesCalendar date, YYYY-MM-DD (UTC)
statsTypeYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior5/5

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

Annotations only declare readOnly/openWorld, but the description discloses deep behavior: statsType case-sensitivity causing 404, a 400 on ranges over 27 days, 28-day windowed chunking with concatenated rows, and aggregations being dropped rather than returned wrong. It also clarifies [] vs Garmin's null for empty ranges.

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?

Dense but front-loaded, with the core GET/param semantics first and edge cases after. Most sentences earn their place; the raw HTTP path is mildly redundant for an agent, and the trailing ellipsis truncates an otherwise well-structured description.

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 no output schema, the description carries the return-value burden and does so (calorie composition, steps fields, [] for empty ranges, dropped aggregations). Completeness is only undercut by the truncated final clause.

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

Parameters4/5

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

Schema coverage is 67% (dates documented, statsType only via enum). The description compensates by pinning statsType to exactly 'CALORIES' or 'STEPS' (case- and value-sensitive) and explaining the range constraints that govern start/end, adding real meaning beyond the schema.

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?

States a specific verb (GET) and resource (daily stats), and explicitly distinguishes itself from siblings getDailySteps/getCaloriesDaily by noting it returns total/active/resting calories together. The truncation of the return-value list leaves the purpose slightly incomplete, but an agent can still identify it.

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 names the overlapping alternatives (getDailySteps/getCaloriesDaily) and gives the selection criterion — this one returns calories broken into total/active/resting plus steps with totalDistance. No explicit 'when-not' for other daily-stat tools, and the sentence trails off.

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

Deploy Server

Other Tools