Skip to main content
Glama

CGM glucose window

cgm_glucose_window
Read-onlyIdempotent

Retrieve continuous glucose readings from the last N hours (default 24). Returns actual coverage window, noting when the provider returns fewer hours than requested.

Instructions

Returns all EGVs over the last N hours (default 24). hours is the window REQUESTED; hours_covered and observed_window state what the provider actually returned. FreeStyle Libre (LibreLink Up) caps a live read at ~12h regardless of the request, so any wider ask comes back short and notes says so — read the covered window, not the requested one.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
hoursNo
privacy_modeNoOptional privacy mode: summary | structured | raw. summary omits device/patient identifiers when present; structured/raw return full payload.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.6.4
  2. Removedv0.4.1
  3. First observedv0.4.0

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already declare readOnly, openWorld, idempotent, and non-destructive behavior, so the safety profile is covered. The description adds critical behavioral context beyond annotations: the LibreLink Up provider caps live reads at ~12h regardless of request, and the response includes 'hours_covered' and 'observed_window' fields with notes to indicate shortfall. This directly informs the agent how to interpret results, going well beyond the structured data.

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 sentences with no filler. The purpose and default are front-loaded, followed by the critical caveat about the provider cap and how to read the response. Every sentence earns its place, and the structure is clear and scannable.

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?

The tool has no output schema, so the description's mention of 'hours_covered', 'observed_window', and 'notes' fills a critical gap. It covers the default, the request/response discrepancy, and the safety profile (via annotations). For a simple read-only window query, nothing essential is missing for an agent to call it correctly.

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 description coverage is 50%: privacy_mode has a schema description, but hours has none. The description compensates by explaining that 'hours' is the REQUESTED window and that actual coverage may differ, introducing the related output fields 'hours_covered' and 'observed_window'. This adds significant meaning to the undocumented parameter, though it does not elaborate on privacy_mode beyond the schema.

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?

The description clearly states a specific verb ('Returns'), resource ('EGVs'), and scope ('over the last N hours') with a default of 24. It distinguishes itself from siblings like cgm_glucose_now (current glucose) by focusing on historical windows, making the tool's purpose unambiguous.

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 this is for historical glucose retrieval but does not explicitly state when to use this tool over alternatives like cgm_glucose_now or cgm_daily_summary. It provides operational guidance about the 12h cap but lacks explicit selection criteria, leaving the agent to infer usage context.

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