Skip to main content
Glama

A weekly workout plan with sets, reps and rest

get_workout_plan
Read-onlyIdempotent

A weekly workout plan with sets, reps and rest. For requests like "make me a 3 day beginner gym plan", "home workout with just dumbbells, 30 minutes", "a 5 day muscle building split", "I have a pull-up bar and dumbbells", "a 20 minute workout" (days=1 gives a single session), "a workout plan to lose weight", "couch to 5K" or "a 10K running plan" (a 10K or longer goal gets the build-up plan unless the user says they are a beginner), or "give me another one" (the same inputs with seed plus one). Takes either the fields, or the user's words in q, from which the service reads days, minutes, level, goal and equipment from them. Fields win over q. Running plans also return weeks: every week's sessions (a 9-week walk-run build to 30 minutes of running for beginners; easy, interval, tempo and long runs for intermediates), with week 1 laid out in days.

Input Schema

NameRequiredDescriptionDefault
qNoThe user's request in their own words, for example "3 day beginner gym plan, 45 minutes".
daysNoDays per week, 1 to 6 (1 gives a single session). More than 6 (or "every day") is planned as 6 with a rest day, and the answer says so in say and in plan.days_asked and plan.days_note. Default 3.
goalNoGoal: strength, muscle, general (default), conditioning (covers fat loss or weight loss requests), running or mobility.
seedNo0 to 9999. Change it for a different mix of exercises with the same setup. Default 0.
levelNoLevel: beginner (default) or intermediate. Advanced is treated as intermediate.
countryNoTwo-letter country code for kit links (US, GB, IE, CA, AU). Defaults to the visitor's country.
minutesNoMinutes per session including warm-up, 15 to 120. Default 45.
equipmentNoComma separated: none (default), dumbbells, barbell, gym, bands, kettlebell, pullupbar (a pull-up bar), jumprope.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / goal / description
      Previous value: -"strength, muscle, general (default), conditioning (use this for fat loss or weight loss requests), running or mobility."New value: +"Goal: strength, muscle, general (default), conditioning (covers fat loss or weight loss requests), running or mobility."
    • changedInput schema / properties / level / description
      Previous value: -"beginner (default) or intermediate. Advanced is treated as intermediate."New value: +"Level: beginner (default) or intermediate. Advanced is treated as intermediate."
  2. First observed

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/openWorld, so the safety profile is covered, and the description goes beyond it by disclosing precedence rules (fields over q), the seed-increment convention for repeat requests, the days>6 clamping with days_note, and the fact that running plans return week-by-week structures. It does not describe response shape for non-running plans, keeping it at 4.

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 purpose is front-loaded in the first sentence and every clause in the long second sentence carries routing information, so nothing is wasted. However, the second sentence is an extremely dense run-on that packs a dozen examples and edge rules into one block, which hurts scanability.

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 8 optional parameters, no output schema, and a genuinely complex generator, the description does heavy lifting: it covers input precedence, defaults, clamping behavior, and the structure of the returned plan for running goals. It leaves the non-running return shape (plan.days_asked/days_note mentions aside) only lightly implied, but is otherwise sufficient to call the tool 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 baseline is 3, but the description adds real semantic meaning: it explains how q is parsed into days/minutes/level/goal/equipment, that fields override q, and the seed-plus-one convention that the schema only calls 'a different mix'. This goes beyond the schema's own parameter text.

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 opening states the resource and its content ('A weekly workout plan with sets, reps and rest'), and the example list makes clear it generates plans rather than looking up exercises, so an agent can distinguish it from get_exercise/list_exercises. It never names the siblings explicitly, and the opener is a noun phrase rather than an explicit verb+resource, which keeps it just short of 5.

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?

The description routes the agent exhaustively: natural-language examples map to intended inputs, 'days=1 gives a single session', 'fields win over q', 'a 10K or longer goal gets the build-up plan unless the user says they are a beginner', and '"give me another one"' maps to seed plus one. When-to-use conditions and conflicting-input precedence are both spelled out.

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.