Skip to main content
Glama

set_training_max

Idempotent

Set the training max for an exercise, creating it or updating an existing value. Intended for a user-approved training max change. The training max is the estimated one rep max used to compute workout weights for percentage-based loads. Updating an existing training max recalculates the weight of every workout where the exercise uses percentage of training max.

Args: exercise_name: Exact exercise display name from the catalog or the user's custom exercises. training_max: The training max value, in the user's units (lb or kg per their settings).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
training_maxYesTraining max in the user's units (lb or kg per their settings)
exercise_nameYesExact exercise display name from the catalog or the user's custom exercises

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
unitsYes
outcomeYes
previousNo
training_maxYes
exercise_display_nameYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / exercise_name / description
      Previous value: -"Exact exercise display name from search_exercises"New value: +"Exact exercise display name from the catalog or the user's custom exercises"
  2. First observed

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already provide mutation/idempotency safety profile. The description adds valuable context beyond annotations: the critical side effect that updating an existing training max recalculates the weight of every workout using percentage of training max. This is exactly the kind of impact disclosure the annotations don't convey.

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?

Front-loaded purpose, then side-effect disclosure, then arg documentation. Efficient with no filler. Slightly verbose in restating both parameters, but the restatement adds the exact-name constraint.

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?

Output schema exists so return values needn't be explained. For a mutation tool with annotations covering safety, the description adds the key side effect (recalculation of dependent workouts) and parameter matching constraints. Missing explicit permission/auth requirements and no rollback/reversibility note, but otherwise complete.

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 100%, so baseline is 3, but the description adds meaning: exercise_name must be an exact display name from the catalog or user's custom exercises (a matching constraint), and training_max is in the user's configured units (lb or kg). These clarifications go beyond the schema's field descriptions.

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?

States a specific verb+resource (set training max for an exercise) and adds definitional context that the training max is the estimated one-rep max used for percentage-based loads. This distinguishes it clearly from siblings like get_training_maxes (read) and get_exercise_history.

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?

Says it's 'intended for a user-approved training max change,' implying a confirmation context, but offers no explicit when-not-to-use or routing to alternatives. The relationship to get_training_maxes (read counterpart) is implied but not named.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources