Exercise Management Tool (manage_exercise)

The manage_exercise tool is designed for comprehensive fitness tracking. It allows users and AI agents to search for exercises, log workouts (with multi-set support), manage routines, and view exercise history. If an exercise is not found, it can be automatically created.

Tool Name: manage_exercise

Description: Primary tool for fitness tracking. Use this to search for exercises, log workouts (multi-set support), manage routines, and view your exercise history. If an exercise is missing, it will be automatically created. Supports providing details across multiple turns.

Actions

The manage_exercise tool supports the following actions:

search_exercises

  • Description: Searches for existing exercise definitions.
  • Parameters:
    • searchTerm (string): Name or part of exercise name.
    • muscleGroup (string, optional): Muscle group to filter by (e.g., "Chest", "Biceps").
    • equipment (string, optional): Equipment to filter by (e.g., "Dumbbell", "None").

create_exercise

  • Description: Creates a new exercise definition.
  • Parameters:
    • name (string): Full name for a new exercise.
    • category (string, optional): Category (e.g., "Strength", "Cardio").
    • calories_per_hour (number, optional): Estimated calories burned per hour.
    • description (string, optional): Description of the exercise.

log_exercise

  • Description: Logs an exercise performed by the user, including sets and reps if applicable.
  • Parameters:
    • exercise_id (string, optional): UUID of the exercise.
    • exercise_name (string, optional): Name of the exercise to log (alternative to ID).
    • entry_date (string, YYYY-MM-DD): The date the exercise was performed.
    • duration_minutes (number, optional): Duration of the exercise in minutes.
    • calories_burned (number, optional): Calories burned during the exercise.
    • notes (string, optional): Any additional notes for the exercise.
    • sets (array of objects, optional): Details for multiple sets (e.g., for strength training).
      • Each set object includes: reps (number), weight (number, kg), duration (number, seconds), rest_time (number, seconds), set_type (enum: "Working Set", "Warmup", "Drop Set", "Failure").

list_exercise_diary

  • Description: Retrieves all logged exercise entries for a specific date, representing the user's exercise history.
  • Parameters:
    • entry_date (string, YYYY-MM-DD): The date to retrieve the exercise diary for.

get_workout_presets

  • Description: Retrieves a list of available workout presets/routines.
  • Parameters: None.

log_workout_preset

  • Description: Logs a predefined workout preset to the user's exercise diary.
  • Parameters:
    • preset_id (string, optional): UUID of the workout preset.
    • preset_name (string, optional): Name of the preset to log (alternative to ID).
    • entry_date (string, YYYY-MM-DD): The date the preset was performed.

delete_exercise_entry

  • Description: Deletes a specific exercise entry from the user's diary.
  • Parameters:
    • entry_id (string): UUID of the exercise entry to delete.