Skip to main content
Glama

write_update_workout

Destructive

Edit a logged workout's date, time, duration, name, note, body weight, or exercises while recalculating volume, best weights, and PR badges.

Instructions

Change a logged workout: its date, start time, duration, name, note, body weight, or its exercises. entries, when given, is the new list in the format read_workout returns: an exercise the workout had keeps what is left out (its sets, note, superset, routine; null removes a note, superset or routine), a new one needs its sets. A new date keeps the time of day and the length. Volume, best weights and PR badges are worked out again as the app does after an edit; a remembered working weight that came from a removed set falls back to the best left in history. A workout from before ids (read_workouts shows it as "YYYY-MM-DD|") takes that key as its id, as in the app. An edit that changes nothing writes nothing. No future dates or times: the workout must have ended by now.

Input Schema

NameRequiredDescriptionDefault
idYesWorkout id as read_workouts shows it (a workout from before ids: its day and start, "YYYY-MM-DD|<start>")
dateNoDate YYYY-MM-DD (the profile’s local calendar day)
nameNo
noteNoEmpty removes the note
startNo
entriesNo
bodyWeightNonull removes it
durationMinNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.0

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the annotations (destructive=true, openWorld=true), the description discloses substantial behavior: omitted entries are kept while nulls remove note/superset/routine, volume/best-weight/PR badges are recomputed, a remembered working weight falls back to the best remaining in history, pre-id workouts accept the "YYYY-MM-DD|<start>" key, and future dates/times are rejected. These are non-obvious side effects and validation rules an agent cannot infer from the schema.

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 primary verb+resource leads, and each subsequent sentence covers a distinct behavioral rule (merge semantics, recomputation, id key, no-op, date validation) with little waste. It is dense and long, but the density is justified by the tool's complexity rather than padding.

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 an 8-parameter mutation tool with a deeply nested schema and no output schema, the description covers the tricky parts: merge/replace semantics, recomputation side effects, id derivation, and validation constraints. It omits any mention of authorization requirements or error behavior, which are the remaining gaps.

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 only 50%, and the description compensates meaningfully: it explains that entries is the full replacement list in read_workout shape, that an existing exercise keeps what is left out, that a new exercise requires sets, and that a new date preserves time-of-day and length. It does not address every field (e.g. durationMin, start), so it adds real but incomplete value.

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 opening sentence states a specific verb and resource ("Change a logged workout") and enumerates the fields that can be modified, immediately distinguishing it from sibling write_log_workout (create) and delete_workout (remove). An agent can identify the operation without opening the schema.

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?

The description frames usage clearly: it is the editing path for an existing workout, references read_workout for the entries format and read_workouts for id derivation, and notes that a no-op edit writes nothing. It stops short of explicitly naming write_log_workout as the alternative for creating a new workout, so no exclusions are stated.

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