← WebMCP Directory

Tool tree

gymdeck.yanbocheng01234.chatgpt.site

Health & EducationTools verified
Website
A local-first, agent-ready workout workspace that tracks every set and turns progress into the next move.
Explore capabilities
    get_athlete_profileAnswer

    Read the current GymDeck athlete profile, training goal, units, experience, equipment, and weekly schedule.

    View tool JSON
    {
      "name": "get_athlete_profile",
      "kind": "answer",
      "impl": "imperative",
      "description": "Read the current GymDeck athlete profile, training goal, units, experience, equipment, and weekly schedule.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "required": [],
        "additionalProperties": false
      }
    }
    get_today_workoutAnswer

    Read today’s workout, including exercise order, target and completed sets, reps, weights, rest times, and status.

    View tool JSON
    {
      "name": "get_today_workout",
      "kind": "answer",
      "impl": "imperative",
      "description": "Read today’s workout, including exercise order, target and completed sets, reps, weights, rest times, and status.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "required": [],
        "additionalProperties": false
      }
    }
    get_training_planAnswer

    Read the complete saved training plan, including every day, focus, exercise, prescription, and cardio block. A response with id 'plan-empty' and zero days means the workspace has no saved plan yet.

    View tool JSON
    {
      "name": "get_training_plan",
      "kind": "answer",
      "impl": "imperative",
      "description": "Read the complete saved training plan, including every day, focus, exercise, prescription, and cardio block. A response with id 'plan-empty' and zero days means the workspace has no saved plan yet.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "required": [],
        "additionalProperties": false
      }
    }
    search_exercisesAnswer

    Search GymDeck’s exercise library by name, muscle, movement, or equipment before adding or swapping an exercise.

    View tool JSON
    {
      "name": "search_exercises",
      "kind": "answer",
      "impl": "imperative",
      "description": "Search GymDeck’s exercise library by name, muscle, movement, or equipment before adding or swapping an exercise.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string",
            "description": "Exercise, muscle, movement, or equipment to search for."
          }
        },
        "required": [
          "query"
        ],
        "additionalProperties": false
      }
    }
    get_exercise_historyAnswer

    Read the athlete’s recorded performance history for one exercise, ordered by date.

    View tool JSON
    {
      "name": "get_exercise_history",
      "kind": "answer",
      "impl": "imperative",
      "description": "Read the athlete’s recorded performance history for one exercise, ordered by date.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "exerciseName": {
            "type": "string"
          }
        },
        "required": [
          "exerciseName"
        ],
        "additionalProperties": false
      }
    }
    create_training_planAction

    Create and save a 2–5 day training plan only when GymDeck has no saved plan. This initializes a fresh workspace and never overwrites or removes an existing plan.

    View tool JSON
    {
      "name": "create_training_plan",
      "kind": "act",
      "impl": "imperative",
      "description": "Create and save a 2–5 day training plan only when GymDeck has no saved plan. This initializes a fresh workspace and never overwrites or removes an existing plan.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "goal": {
            "type": "string"
          },
          "daysPerWeek": {
            "type": "integer",
            "minimum": 2,
            "maximum": 5
          }
        },
        "required": [
          "name",
          "goal",
          "daysPerWeek"
        ],
        "additionalProperties": false
      }
    }
    replace_training_planAction

    Replace GymDeck’s existing saved plan with a new 2–5 day plan only when the user explicitly asks to replace it. Workout history is preserved.

    View tool JSON
    {
      "name": "replace_training_plan",
      "kind": "act",
      "impl": "imperative",
      "description": "Replace GymDeck’s existing saved plan with a new 2–5 day plan only when the user explicitly asks to replace it. Workout history is preserved.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "goal": {
            "type": "string"
          },
          "daysPerWeek": {
            "type": "integer",
            "minimum": 2,
            "maximum": 5
          }
        },
        "required": [
          "name",
          "goal",
          "daysPerWeek"
        ],
        "additionalProperties": false
      }
    }
    prepare_focused_workoutAction

    Prepare a complete workout from a short request such as 'make me a shoulders and arms workout', 'give me a leg day', or 'I want to train back'. Default to today unless the user explicitly asks to save it to the plan. This is the best tool for a simple workout request.

    View tool JSON
    {
      "name": "prepare_focused_workout",
      "kind": "act",
      "impl": "imperative",
      "description": "Prepare a complete workout from a short request such as 'make me a shoulders and arms workout', 'give me a leg day', or 'I want to train back'. Default to today unless the user explicitly asks to save it to the plan. This is the best tool for a simple workout request.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "focus": {
            "type": "string",
            "description": "Short requested focus, e.g. shoulders and arms, legs, pull, or full body."
          },
          "destination": {
            "type": "string",
            "enum": [
              "today",
              "plan"
            ],
            "description": "Optional; defaults to today."
          },
          "label": {
            "type": "string",
            "description": "Optional plan-day label when saving to the plan."
          }
        },
        "required": [
          "focus"
        ],
        "additionalProperties": false
      }
    }
    set_plan_dayAction

    Create a saved workout day with an exact exercise list, or replace one existing day. Use this for requests like 'make me a shoulders and arms day' when the requested exercises or prescriptions are explicit. This changes the saved plan, not only today’s workout.

    View tool JSON
    {
      "name": "set_plan_day",
      "kind": "act",
      "impl": "imperative",
      "description": "Create a saved workout day with an exact exercise list, or replace one existing day. Use this for requests like 'make me a shoulders and arms day' when the requested exercises or prescriptions are explicit. This changes the saved plan, not only today’s workout.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "focus": {
            "type": "string",
            "description": "Human-readable focus such as Shoulders & Arms."
          },
          "dayLabel": {
            "type": "string",
            "description": "Day label such as Day 4 or Saturday."
          },
          "mode": {
            "type": "string",
            "enum": [
              "add",
              "replace"
            ],
            "description": "Add a new day or replace the day matching dayLabel/focus."
          },
          "exercises": {
            "type": "array",
            "minItems": 1,
            "maxItems": 12,
            "items": {
              "type": "object",
              "properties": {
                "exerciseName": {
                  "type": "string"
                },
                "sets": {
                  "type": "integer",
                  "minimum": 1,
                  "maximum": 10
                },
                "reps": {
                  "type": "integer",
                  "minimum": 1,
                  "maximum": 100
                },
                "weight": {
                  "type": "number",
                  "minimum": 0
                },
                "restSeconds": {
                  "type": "integer",
                  "minimum": 15,
                  "maximum": 600
                },
                "durationMinutes": {
                  "type": "integer",
                  "minimum": 5,
                  "maximum": 180
                }
              },
              "required": [
                "exerciseName"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "focus",
          "mode",
          "exercises"
        ],
        "additionalProperties": false
      }
    }
    edit_plan_dayAction

    Make one precise change to an existing saved plan day: rename it, add/update/remove/reorder an exercise, or delete the day. Use this instead of editing today’s workout when the user asks to change their plan.

    View tool JSON
    {
      "name": "edit_plan_day",
      "kind": "act",
      "impl": "imperative",
      "description": "Make one precise change to an existing saved plan day: rename it, add/update/remove/reorder an exercise, or delete the day. Use this instead of editing today’s workout when the user asks to change their plan.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "day": {
            "type": "string",
            "description": "Existing day label or focus."
          },
          "action": {
            "type": "string",
            "enum": [
              "rename",
              "add_exercise",
              "update_exercise",
              "remove_exercise",
              "move_exercise",
              "delete_day"
            ]
          },
          "exerciseName": {
            "type": "string"
          },
          "newLabel": {
            "type": "string"
          },
          "newFocus": {
            "type": "string"
          },
          "sets": {
            "type": "integer",
            "minimum": 1,
            "maximum": 10
          },
          "reps": {
            "type": "integer",
            "minimum": 1,
            "maximum": 100
          },
          "weight": {
            "type": "number",
            "minimum": 0
          },
          "restSeconds": {
            "type": "integer",
            "minimum": 15,
            "maximum": 600
          },
          "position": {
            "type": "integer",
            "minimum": 1,
            "maximum": 20
          }
        },
        "required": [
          "day",
          "action"
        ],
        "additionalProperties": false
      }
    }
    load_plan_dayAction

    Load one saved plan day into Today’s Workout. This is the explicit bridge between editing a plan and performing that session.

    View tool JSON
    {
      "name": "load_plan_day",
      "kind": "act",
      "impl": "imperative",
      "description": "Load one saved plan day into Today’s Workout. This is the explicit bridge between editing a plan and performing that session.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "day": {
            "type": "string",
            "description": "Saved day label or focus."
          }
        },
        "required": [
          "day"
        ],
        "additionalProperties": false
      }
    }
    add_cardio_blockAction

    Add timed cardio from a short request such as 'add 20 minutes on the bike'. Default to the end of today’s workout unless the user names a saved plan day. Accepts bike, rower, StairMaster, treadmill, or elliptical and records minutes rather than fake reps.

    View tool JSON
    {
      "name": "add_cardio_block",
      "kind": "act",
      "impl": "imperative",
      "description": "Add timed cardio from a short request such as 'add 20 minutes on the bike'. Default to the end of today’s workout unless the user names a saved plan day. Accepts bike, rower, StairMaster, treadmill, or elliptical and records minutes rather than fake reps.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "machine": {
            "type": "string",
            "description": "Cardio machine in natural wording, e.g. bike or StairMaster."
          },
          "durationMinutes": {
            "type": "integer",
            "minimum": 5,
            "maximum": 180
          },
          "destination": {
            "type": "string",
            "enum": [
              "today",
              "plan"
            ],
            "description": "Optional; defaults to today."
          },
          "planDay": {
            "type": "string",
            "description": "Optional saved day label/focus when destination is plan."
          }
        },
        "required": [
          "machine",
          "durationMinutes"
        ],
        "additionalProperties": false
      }
    }
    undo_last_changeAction

    Undo exactly the most recent visible GymDeck change. Use when the user explicitly asks to undo an accidental plan or workout edit.

    View tool JSON
    {
      "name": "undo_last_change",
      "kind": "act",
      "impl": "imperative",
      "description": "Undo exactly the most recent visible GymDeck change. Use when the user explicitly asks to undo an accidental plan or workout edit.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "required": [],
        "additionalProperties": false
      }
    }
    add_exerciseAction

    Add an exercise from the GymDeck library to today’s workout with a target prescription.

    View tool JSON
    {
      "name": "add_exercise",
      "kind": "act",
      "impl": "imperative",
      "description": "Add an exercise from the GymDeck library to today’s workout with a target prescription.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "exerciseName": {
            "type": "string"
          },
          "sets": {
            "type": "integer",
            "minimum": 1,
            "maximum": 10
          },
          "reps": {
            "type": "integer",
            "minimum": 1,
            "maximum": 100
          },
          "weight": {
            "type": "number",
            "minimum": 0
          }
        },
        "required": [
          "exerciseName",
          "sets",
          "reps",
          "weight"
        ],
        "additionalProperties": false
      }
    }
    update_exercise_prescriptionAction

    Change the target sets, reps, weight, or rest time for an exercise in today’s workout.

    View tool JSON
    {
      "name": "update_exercise_prescription",
      "kind": "act",
      "impl": "imperative",
      "description": "Change the target sets, reps, weight, or rest time for an exercise in today’s workout.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "exerciseName": {
            "type": "string"
          },
          "sets": {
            "type": "integer",
            "minimum": 1,
            "maximum": 10
          },
          "reps": {
            "type": "integer",
            "minimum": 1,
            "maximum": 100
          },
          "weight": {
            "type": "number",
            "minimum": 0
          },
          "restSeconds": {
            "type": "integer",
            "minimum": 15,
            "maximum": 600
          }
        },
        "required": [
          "exerciseName"
        ],
        "additionalProperties": false
      }
    }
    swap_exerciseAction

    Replace an exercise in today’s workout while preserving completed set history and recording the reason.

    View tool JSON
    {
      "name": "swap_exercise",
      "kind": "act",
      "impl": "imperative",
      "description": "Replace an exercise in today’s workout while preserving completed set history and recording the reason.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "currentExercise": {
            "type": "string"
          },
          "replacementExercise": {
            "type": "string"
          },
          "reason": {
            "type": "string"
          }
        },
        "required": [
          "currentExercise",
          "replacementExercise",
          "reason"
        ],
        "additionalProperties": false
      }
    }
    log_setAction

    Record one completed set in today’s workout using the actual reps, weight, and optional effort rating.

    View tool JSON
    {
      "name": "log_set",
      "kind": "act",
      "impl": "imperative",
      "description": "Record one completed set in today’s workout using the actual reps, weight, and optional effort rating.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "exerciseName": {
            "type": "string"
          },
          "setNumber": {
            "type": "integer",
            "minimum": 1
          },
          "reps": {
            "type": "integer",
            "minimum": 0,
            "maximum": 100
          },
          "weight": {
            "type": "number",
            "minimum": 0
          },
          "effort": {
            "type": "integer",
            "minimum": 1,
            "maximum": 10
          }
        },
        "required": [
          "exerciseName",
          "setNumber",
          "reps",
          "weight"
        ],
        "additionalProperties": false
      }
    }
    edit_setAction

    Correct reps, weight, effort, or notes for a set in today’s workout without changing its completion status.

    View tool JSON
    {
      "name": "edit_set",
      "kind": "act",
      "impl": "imperative",
      "description": "Correct reps, weight, effort, or notes for a set in today’s workout without changing its completion status.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "exerciseName": {
            "type": "string"
          },
          "setNumber": {
            "type": "integer",
            "minimum": 1
          },
          "reps": {
            "type": "integer",
            "minimum": 0,
            "maximum": 100
          },
          "weight": {
            "type": "number",
            "minimum": 0
          },
          "effort": {
            "type": "integer",
            "minimum": 1,
            "maximum": 10
          },
          "note": {
            "type": "string"
          }
        },
        "required": [
          "exerciseName",
          "setNumber"
        ],
        "additionalProperties": false
      }
    }
    adjust_current_workoutAction

    Adapt today’s remaining workout by shortening it, skipping an exercise, adding a set, or moving an exercise in the order.

    View tool JSON
    {
      "name": "adjust_current_workout",
      "kind": "act",
      "impl": "imperative",
      "description": "Adapt today’s remaining workout by shortening it, skipping an exercise, adding a set, or moving an exercise in the order.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "action": {
            "type": "string",
            "enum": [
              "shorten",
              "skip",
              "add_set",
              "move"
            ]
          },
          "exerciseName": {
            "type": "string"
          },
          "targetMinutes": {
            "type": "integer",
            "minimum": 5,
            "maximum": 180
          },
          "position": {
            "type": "integer",
            "minimum": 1
          },
          "reason": {
            "type": "string"
          }
        },
        "required": [
          "action"
        ],
        "additionalProperties": false
      }
    }
    get_progress_summaryAnswer

    Read overall training volume, workout completion, current personal records, consistency, and recent performance.

    View tool JSON
    {
      "name": "get_progress_summary",
      "kind": "answer",
      "impl": "imperative",
      "description": "Read overall training volume, workout completion, current personal records, consistency, and recent performance.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "required": [],
        "additionalProperties": false
      }
    }
    recommend_next_sessionAction

    Calculate and save transparent load recommendations from the completed sets in today’s workout.

    View tool JSON
    {
      "name": "recommend_next_session",
      "kind": "act",
      "impl": "imperative",
      "description": "Calculate and save transparent load recommendations from the completed sets in today’s workout.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "required": [],
        "additionalProperties": false
      }
    }
    apply_progression_to_planAction

    Apply pending history-based progression recommendations to matching exercises in the saved weekly plan. Use after recommend_next_session when the user asks to update their routine. An optional exercise name limits the change; an optional weight lets the user edit one suggestion before applying it.

    View tool JSON
    {
      "name": "apply_progression_to_plan",
      "kind": "act",
      "impl": "imperative",
      "description": "Apply pending history-based progression recommendations to matching exercises in the saved weekly plan. Use after recommend_next_session when the user asks to update their routine. An optional exercise name limits the change; an optional weight lets the user edit one suggestion before applying it.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "exerciseName": {
            "type": "string"
          },
          "weight": {
            "type": "number",
            "minimum": 0
          }
        },
        "required": [],
        "additionalProperties": false
      }
    }
    get_weekly_summaryAnswer

    Summarize the athlete’s last seven days of training, volume, exercises, and notable progress.

    View tool JSON
    {
      "name": "get_weekly_summary",
      "kind": "answer",
      "impl": "imperative",
      "description": "Summarize the athlete’s last seven days of training, volume, exercises, and notable progress.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "required": [],
        "additionalProperties": false
      }
    }