Skip to main content
Glama

IronLedger strength calculators

Server Details

Free strength-training calculators, plus a checker for program files you import into IronLedger.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

Score is being calculated.

Available Tools

7 tools
check_program_fileIronLedger program file checkerA
Read-onlyIdempotent
Inspect

Check a training program written as a CSV or TSV file exactly as the IronLedger app will import it, before anyone loads it on a phone. Returns the weeks, sessions and exercises it creates, every skipped row and warning with its row number, the exercise names the app will question ("Did you mean ...?"), and names that will become new custom exercises. Use it whenever you write a program for someone to import into IronLedger, and fix anything it reports first. The app names the program after the file, so pass the file name you will give it.

ParametersJSON Schema
NameRequiredDescriptionDefault
fileYesThe whole program file as text. Canonical header: Week,Day,Exercise,Sets,Reps,Load,RPE,RIR,Rest,Notes, then one row per exercise, such as 1,Day 1,Squat,5,5,100 kg,8,,3:00,belt. Wrap a cell that contains a comma in double quotes; never use a double quote inside a cell.
fileNameNoThe file name it will be saved as, such as "Texas Method.csv". The app names the program after it; without one the program is called Imported Spreadsheet.

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, openWorldHint=false, so the safety profile is covered. The description goes well beyond that by enumerating exactly what the dry run produces: created weeks/sessions/exercises, skipped rows and warnings with row numbers, confirmable exercise names, and names that become new custom exercises.

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 with the core action and the key value proposition ('exactly as the IronLedger app will import it, before anyone loads it on a phone'). The returns clause is dense but each element earns its place; only mild length overhead.

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?

With no output schema, the description compensates by enumerating the return contents in detail. Both parameters are documented, and the pre-import validation workflow is fully explained, leaving nothing an agent needs 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 coverage is 100%, so the schema already carries the field-level detail, including the canonical header and quoting rules. The description adds a workflow-level meaning for fileName by tying it to program naming ('The app names the program after the file, so pass the file name you will give it'), slightly exceeding the baseline of 3.

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 and resource: validate a training program written as CSV/TSV exactly as the IronLedger app will import it. The framing (a dry-run import check that returns weeks/sessions/exercises, skipped rows, warnings, and naming prompts) makes it unmistakable against the calculator siblings like one_rep_max or plate_loading.

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

Usage Guidelines5/5

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

Explicitly tells the agent when to use it: 'Use it whenever you write a program for someone to import into IronLedger, and fix anything it reports first.' It also instructs on the fileName parameter ('pass the file name you will give it'), giving clear usage context with no ambiguity.

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

one_rep_maxOne-rep max calculatorA
Read-onlyIdempotent
Inspect

Estimate a one-rep max (1RM) from a set of weight × reps, with a percentage table and the load each rep count should allow. Epley by default, Brzycki optional. Estimates above 10 reps are flagged as less reliable.

ParametersJSON Schema
NameRequiredDescriptionDefault
repsYesReps completed, 1 to 30.
unitNoWeight unit for every load in and out: kg or lb.kg
weightYesWeight lifted for the set.
formulaNoOne-rep max formula: epley (weight × (1 + reps ÷ 30), the one the IronLedger app uses) or brzycki (weight × 36 ÷ (37 − reps)).epley

TDQS

A4/5.0
Behavior4/5

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

Annotations already establish readOnly/idempotent/non-destructive, so the safety profile is covered. The description adds genuine domain context: the Epley default, the Brzycki alternative, and the reliability caveat that estimates above 10 reps are flagged as less reliable — a behavioral trait the annotations do not convey.

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?

Three compact sentences with zero filler: the core operation and output come first, then the formula default, then the reliability caveat. The key behavior (default formula) is front-loaded before optional 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 burden of describing returns, and it does so reasonably well by naming the percentage table and per-rep-count loads. The only gap is the exact shape/format of that table, which the agent cannot fully anticipate.

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%, and the schema already documents units, ranges, and defaults for both enums, so baseline is 3. The description restates the Epley default and adds the 10-rep reliability threshold, but adds no formula syntax or unit-handling detail 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?

States a specific verb and resource — estimate a one-rep max from a weight × reps set — and names the concrete outputs (percentage table, per-rep-count load). This is clearly distinguishable from siblings like rpe_estimate_max or rpe_target_load, which start from RPE rather than a completed set.

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 implied: it is the tool you call when you have a set of weight and reps and want a 1RM. There is no explicit routing guidance (e.g. when to prefer this over rpe_estimate_max) and no stated prerequisites, so the agent must infer the boundary from the description alone.

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

plate_loadingBarbell plate calculatorA
Read-onlyIdempotent
Inspect

Work out which plates to put on each side of a barbell to reach a target weight, using standard gym plates or the plates you list. Reports the exact load and anything your plates can’t make.

ParametersJSON Schema
NameRequiredDescriptionDefault
barNoBar weight in the chosen unit. Defaults to 20 kg or 45 lb.
unitNoWeight unit for every load in and out: kg or lb.kg
platesNoPlates available, heaviest first or in any order: "25,20,15,10,5,2.5,1.25" for as many as needed, or "25:4,20:2" for pairs owned. Defaults to standard gym plates (kg: 25 to 1.25; lb: 45 to 2.5).
targetYesTotal weight wanted on the bar, including the bar.
collarsNoCount a collar on each side.
collarWeightNoWeight of each collar. Defaults to 2.5 kg or 5 lb.

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint, idempotentHint, destructiveHint=false), so the bar is lower. The description adds genuinely useful behavioral context beyond them: it reports the exact achievable load and explicitly flags what the available plates cannot make. It stops short of describing rounding or per-side output structure.

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 tight sentences, zero filler, with the core action leading and the output behavior following. Nothing redundant with the schema or annotations.

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?

This is a self-contained calculation tool with no output schema, and the description adequately covers what the result contains (exact load plus any shortfall). Only minor gaps remain, such as whether output is per side and how rounding to the smallest plate is handled.

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 the schema already documents bar, unit, plates, target, collars and collarWeight in detail. The description only echoes the plates concept ('standard gym plates or the plates you list'), which maps to an existing default rather than adding new meaning. Baseline 3 is appropriate.

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?

States a specific verb and resource: work out which plates go on each side of a barbell to hit a target weight. The scope is clear and an agent can distinguish it from scoring tools like one_rep_max. It does not name the closest sibling (rpe_target_load), so it falls just short of the top score.

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 usage (plate math toward a target weight) but gives no explicit when-to-use or when-not-to-use guidance, and never references alternatives like rpe_target_load or warmup_sets. Usage must be inferred from the purpose statement.

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

powerlifting_scoreDOTS, IPF GL and Wilks calculatorA
Read-onlyIdempotent
Inspect

Score a powerlifting total (or a bench press) against bodyweight with DOTS, IPF GL points and the original Wilks, using the coefficients the OpenPowerlifting rankings use.

ParametersJSON Schema
NameRequiredDescriptionDefault
sexYesThe formulas have separate male and female coefficients.
unitNoWeight unit for every load in and out: kg or lb.kg
eventNoFor IPF GL: sbd (full powerlifting total) or bench (bench press only).sbd
totalYesTotal lifted (squat + bench + deadlift), or the bench press for event "bench".
equipmentNoFor IPF GL: raw (classic) or equipped.raw
bodyweightYesBodyweight in the chosen unit.

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, and closed-world, so safety is covered. The description adds genuinely useful context beyond that: the coefficient source of truth ('the coefficients the OpenPowerlifting rankings use') and the fact that it returns three distinct scores, which is important for trusting the numbers. It does not discuss numerical edge cases, but the annotated contract is well supplemented.

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?

A single front-loaded sentence that identifies the operation, the input concept, and the three outputs. Every clause earns its place; nothing is restated from the title or annotations.

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 usefully enumerates the three returned metrics, and all six parameters are fully documented in the schema. The remaining gap is the absence of guidance on interpreting or comparing the three scores, which an agent producing an answer might want.

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%, including enum explanations for sex, unit, event, and equipment, so the baseline is 3. The description only echoes 'or a bench press' (event=bench) and 'the original Wilks' without adding format, range, or unit-switching detail beyond the schema.

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?

States a specific verb and resource: score a powerlifting total (or bench press) against bodyweight. It also names the exact formulas (DOTS, IPF GL, original Wilks), which makes it functionally distinguishable from estimation siblings like one_rep_max. It never explicitly contrasts itself with those siblings, so it stops short of a 5.

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 when-to-use, when-not-to-use, or alternative guidance. The parenthetical 'or a bench press' hints at the event choice, but the agent must infer that this tool is for scoring an already-completed total rather than estimating or planning one. Prerequisites (needing a known total, bodyweight, and sex) are left implicit.

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

rpe_estimate_maxEstimate one-rep max from a set and its RPEA
Read-onlyIdempotent
Inspect

Estimate a one-rep max from weight, reps and RPE, treating RPE as reps in reserve (RPE 8 = 2 reps left) and applying the one-rep max formula to reps + reps in reserve.

ParametersJSON Schema
NameRequiredDescriptionDefault
rpeYesRating of perceived exertion, 5 to 10, read as reps in reserve (RPE 8 = 2 reps left). Half points allowed.
repsYesReps completed, 1 to 20.
unitNoWeight unit for every load in and out: kg or lb.kg
weightYesWeight lifted for the set.
formulaNoOne-rep max formula: epley (weight × (1 + reps ÷ 30), the one the IronLedger app uses) or brzycki (weight × 36 ÷ (37 − reps)).epley

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, closed-world behavior, so the safety profile is covered. The description adds genuine method context beyond that: RPE is treated as reps-in-reserve and the formula is applied to reps + RIR, which tells the agent how the output is derived.

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 dense sentence with the core action front-loaded and no wasted words. It is efficient, though the parenthetical aside makes it slightly harder to scan at a glance.

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 a stateless read-only calculator with full schema coverage and no output schema, the definition gives enough to call it correctly and understand the derivation. Only the absence of sibling routing against one_rep_max keeps it from being fully complete.

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 coverage is 100%, so all five parameters (including enums and bounds) are already documented. The description's RPE-as-RIR explanation restates what the rpe field description already says, adding no new syntax or format detail; baseline 3 is correct.

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?

States a specific verb and resource ('Estimate a one-rep max') plus the inputs that drive it (weight, reps, RPE). It is clear what the tool computes, but it does not distinguish itself from the sibling one_rep_max, which an agent must disambiguate on its own.

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 the situation (you have a set with an RPE and want a 1RM estimate) but gives no explicit when-to-use or when-not-to-use guidance, and never names the sibling one_rep_max as the alternative when RPE is unavailable. Usage is inferable but not spelled out.

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

rpe_target_loadLoad for a target reps and RPEA
Read-onlyIdempotent
Inspect

Find the load for a set of a given number of reps at a target RPE, from a known or estimated one-rep max. Rounded to the nearest 0.5.

ParametersJSON Schema
NameRequiredDescriptionDefault
rpeYesRating of perceived exertion, 5 to 10, read as reps in reserve (RPE 8 = 2 reps left). Half points allowed.
repsYesTarget reps, 1 to 20.
unitNoWeight unit for every load in and out: kg or lb.kg
formulaNoOne-rep max formula: epley (weight × (1 + reps ÷ 30), the one the IronLedger app uses) or brzycki (weight × 36 ÷ (37 − reps)).epley
oneRepMaxYesYour one-rep max (tested or estimated).

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnly=true, idempotent=true, non-destructive=true, so the safety profile is covered. The description adds genuinely useful behavior beyond that: the result is 'Rounded to the nearest 0.5', which an agent cannot learn from annotations. It stops short of describing unit handling or behavior at range edges.

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, zero filler. The core operation is front-loaded and the rounding caveat follows immediately after. Every clause earns its place.

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?

There is no output schema, so the description usefully discloses that the returned load is rounded to 0.5. Combined with 100% schema coverage for inputs, an agent has what it needs; only the unit round-trip could have been made explicit.

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 every parameter (including unit and formula) is already fully documented in the schema, making 3 the baseline. The description restates reps, RPE and one-rep max but adds nothing beyond what the schema says about them.

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 ('Find'), resource ('the load') and the inputs that determine it ('given number of reps', 'target RPE', 'known or estimated one-rep max'). It is clearly distinguishable from the inverse sibling rpe_estimate_max, but it never names or contrasts with siblings explicitly.

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 phrase 'from a known or estimated one-rep max' implies the prerequisite (you must already have a 1RM) without stating when to prefer this tool over rpe_estimate_max or one_rep_max. Usage is only inferable, with no exclusions or alternatives named.

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

warmup_setsWarm-up set calculatorA
Read-onlyIdempotent
Inspect

Build a warm-up ramp to a working weight: plate-friendly jumps, reps falling from 10 to singles, with the plates for each set. The same ramp the IronLedger app suggests.

ParametersJSON Schema
NameRequiredDescriptionDefault
barNoBar weight in the chosen unit. Defaults to 20 kg or 45 lb.
setsNoNumber of warm-up sets, 1 to 12.
unitNoWeight unit for every load in and out: kg or lb.kg
workingWeightYesThe first working set’s weight.

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, non-destructive and closed-world, so the safety profile is fully covered. The description earns credit for going beyond that by disclosing the computation's behavior: plate-friendly jumps and a rep scheme descending from 10 to singles, which is genuinely useful for a pure calculator with no output schema.

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, front-loaded with the core action and output, with no filler or repetition. Every clause contributes either scope or behavioral 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 does the right thing by summarizing the return (ramp steps plus the plates for each set). Combined with 100%-documented parameters and full annotations, an agent has enough to invoke it correctly; the only shortfall is the absence of any sibling routing.

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 four parameters (workingWeight, bar, unit, sets) are already documented with ranges, defaults and units. The description only echoes 'working weight' and implies a unit choice, adding no syntax or semantics beyond the schema; baseline 3 applies.

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?

States a specific verb and resource ('Build a warm-up ramp to a working weight') and enumerates the output shape (plate-friendly jumps, descending reps, plates per set). It is clear what the tool produces, though it never names or contrasts a sibling such as plate_loading or one_rep_max.

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 implied by the phrasing — call it when you have a working weight and want warm-up sets — but there is no explicit when-to-use statement, no exclusions, and no routing to alternatives like plate_loading. The last sentence ('the same ramp the IronLedger app suggests') is branding, not guidance.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 7 tool updates
    • First observedcheck_program_file
    • First observedone_rep_max
    • First observedplate_loading
    • First observedpowerlifting_score
    • First observedrpe_estimate_max
    • First observedrpe_target_load
    • First observedwarmup_sets

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Provides comprehensive running performance calculations including VDOT, training paces, race time predictions, velocity markers, and heart rate zones using Jack Daniels, Greg McMillan, and Riegel methodologies.
    9
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Read/write MCP server for Intervals.icu — 51 tools spanning activities, streams, wellness, calendar, gear, and sport zones, plus structured workout generation with a built-in syntax reference for cycling, running, and swimming.
    66
    2,051 PyPI
    94
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources