Skip to main content
Glama

read_exercise_history

Read-only

Read the session history for a given exercise, newest first, showing sets, reps, volume, best weight, estimated 1RM, records, and all-time bests.

Instructions

Every session of one exercise, newest first: the completed work sets ("100×5", drops as "→ 80×6", per side as "L …/ R …"), work sets, reps, volume, best weight, best estimated 1RM, and whether the session set a weight record or a 1RM record against all earlier sessions (the first load ever logged counts, as in the app). Plus all-time bests. Weights in the profile unit; a dumbbell exercise whose weight was logged per dumbbell or both together is read in its current meaning, as the app does (weightMeans: each = per dumbbell, total = both together).

Input Schema

NameRequiredDescriptionDefault
toNoDate YYYY-MM-DD (the profile’s local calendar day)
fromNoDate YYYY-MM-DD (the profile’s local calendar day)
limitNoMaximum items to return (default 20, max 1000). A capped result says truncated: true.
formulaNo1RM formula; default the one picked in the profile's settings (else epley), as the app does. A single formula gives no estimate above 12 reps; weighted blends all seven and counts reps in reserve, up to 15. 1 rep is the weight itself.
exerciseIdYesExercise id, e.g. "0025" (see read_exercises)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.0

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnly/destructive/openWorld, so the safety profile is covered; the description adds substantial value beyond that by explaining how to read the returned data (set notation, drops, per-side, weight-unit handling, dumbbell weightMeans reinterpretation, record-flag logic). Missing only auth/scope notes and any statement about performance or truncation behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose is correctly front-loaded, but the body is a single run-on sentence stuffed with nested parentheticals ("→ 80×6", "L …/ R …") that would be far clearer as a short list. There is little filler, but the crammed structure slows parsing of genuinely important detail.

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 largely succeeds: it enumerates sessions, per-session metrics, record flags and all-time bests, plus unit semantics. Truncation and formula behavior live in the schema, and error/empty-case behavior is unaddressed, leaving a small gap.

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 all five parameters are already documented in the schema (dates, limit/truncation, formula enum and defaults, exerciseId format). The description adds no parameter-level meaning beyond that, 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?

"Every session of one exercise, newest first" states a specific verb, resource and ordering in one clause, and the tool is clearly distinguished from metadata-oriented siblings like read_exercise or the workout-level read_workout. An agent knows immediately that this is a per-exercise session-history read.

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: the description's exhaustive content spec implies the use case (progression/PR review for a single exercise), and the schema points at read_exercises for IDs. There is no explicit when-to-use or when-not guidance, nor any routing against read_records or read_workout, which also surface PR-ish data.

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