Skip to main content
Glama

WHOOP Wellness Context

whoop_wellness_context
Read-onlyIdempotent

Normalize WHOOP recovery, sleep, strain, and workout load into a shared wellness context for exercise recommendations and Telegram agents.

Instructions

Normalize WHOOP recovery, sleep, strain and recent workout load into the shared wellness_context shape for exercise recommendation engines and Telegram agents.

Input Schema

NameRequiredDescriptionDefault
daysNoLookback window used to normalize WHOOP recovery, sleep and strain context.
notesNo
sorenessNo
timezoneNoIANA timezone used only for display, e.g. America/New_York.UTC
injury_flagsNo
response_formatNomarkdown

Output Schema

NameRequiredDescriptionDefault
notesYes
sourceYes
sorenessYes
sleep_scoreNo
context_typeYes
data_qualityNo
generated_atYes
injury_flagsYes
strain_scoreNo
recovery_scoreNo
telegram_summaryNo
recommended_handoffYes
recent_training_loadYes
context_contract_versionYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv0.6.6
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • changedOutput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  2. Addedv0.5.4
  3. Removedv0.5.4
  4. First observedv0.5.3

TDQS

B3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, openWorldHint=true and destructiveHint=false, so safety and idempotency are covered structurally. The description adds that this is a derived normalization/aggregation step rather than a raw data fetch, which is useful context, but it says nothing about how the normalization behaves, what window is default, or auth requirements.

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?

A single, front-loaded sentence with no filler. It is efficient, though the abstract phrase 'shared wellness_context shape' is jargon that an agent without external context cannot fully parse.

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

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described. However, for a 6-parameter tool with only 33% schema coverage and zero usage guidance, the definition leaves real gaps around the optional inputs (notes, soreness, injury_flags) and when to select this tool over its siblings.

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

Parameters2/5

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

Schema description coverage is only 33% (2 of 6 parameters documented). The description mentions recovery, sleep, strain and workout load but never explains notes, soreness, injury_flags, or response_format, so it fails to compensate for the undocumented parameters. The 'recent workout load' phrasing loosely gestures at the days window but adds no syntax or format detail.

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 states a specific verb ('Normalize') and enumerates the resources involved (WHOOP recovery, sleep, strain, recent workout load), and names the target shape and consumers. It is clear what the tool produces, though it does not explicitly distinguish itself from sibling summary tools like whoop_daily_summary or whoop_weekly_summary.

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

Usage Guidelines2/5

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

There is no explicit when-to-use guidance, no mention of prerequisites, and no named alternatives among the many sibling tools. The phrase 'for exercise recommendation engines and Telegram agents' implies an audience but not a decision rule for the agent choosing between this and whoop_daily_summary.

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