Tools / Workout Planner
Workout Planner icon

Workout Planner

1300+ exercises by muscle & gear

Searchable database of 1300+ exercises with muscles worked, equipment needed, and step-by-step instructions. Filter by body part, target muscle, or equipment to build workout routines for any fitness level. For fitness apps, personal training, and rehab planning.

9 skillsv0.02
Search Exercises

Find exercises by name when you already know what you are looking for, like "bench press" or "squat". Good for checking form instructions or finding variations.

Returns: Matching exercises with muscles worked, equipment needed, and how to do them
Parameters
name *stringExercise name to search for (partial match supported)
limitintegerMaximum number of results to return (default 10)
offsetintegerNumber of results to skip for pagination (default 0)
Example
What bench press variations are there?
curl -H "Authorization: Bearer $TOOLROUTER_API_KEY" \
  -d '{
  "tool": "workout-planner",
  "skill": "search_exercises",
  "input": {
    "name": "bench press"
  }
}' \
  https://api.toolrouter.com/v1/tools/call
Get Exercise

Get the full breakdown for a specific exercise, including which muscles it works and step-by-step instructions on how to perform it.

Returns: Full exercise breakdown with target muscles, equipment, and instructions
Parameters
id *stringUnique exercise ID (e.g. "0001")
Example
How do I do exercise 0001?
curl -H "Authorization: Bearer $TOOLROUTER_API_KEY" \
  -d '{
  "tool": "workout-planner",
  "skill": "get_exercise",
  "input": {
    "id": "0001"
  }
}' \
  https://api.toolrouter.com/v1/tools/call
Browse Exercises

Browse the full exercise library with pagination. Use this when you want to explore what is available without a specific search in mind.

Returns: A page of exercises from the full library
Parameters
limitintegerMaximum number of results to return (default 10)
offsetintegerNumber of results to skip for pagination (default 0)
Example
Show me some exercises to browse
curl -H "Authorization: Bearer $TOOLROUTER_API_KEY" \
  -d '{
  "tool": "workout-planner",
  "skill": "browse_exercises",
  "input": {}
}' \
  https://api.toolrouter.com/v1/tools/call
Exercises by Body Part

Find exercises for a specific body part like chest, back, or legs. Use list_body_parts first if you are not sure which values are valid.

Returns: Exercises that work the requested body part with full details
Parameters
body_part *stringBody part to filter by (e.g. "chest", "back", "upper legs")
limitintegerMaximum number of results to return (default 10)
offsetintegerNumber of results to skip for pagination (default 0)
Example
What exercises can I do for chest?
curl -H "Authorization: Bearer $TOOLROUTER_API_KEY" \
  -d '{
  "tool": "workout-planner",
  "skill": "exercises_by_body_part",
  "input": {
    "body_part": "chest"
  }
}' \
  https://api.toolrouter.com/v1/tools/call
Exercises by Target Muscle

Find exercises that isolate a specific muscle like biceps, glutes, or abs. Use list_target_muscles first if you are not sure which values are valid.

Returns: Exercises that target the requested muscle with full details
Parameters
target *stringTarget muscle to filter by (e.g. "biceps", "glutes", "abs")
limitintegerMaximum number of results to return (default 10)
offsetintegerNumber of results to skip for pagination (default 0)
Example
What are the best exercises for biceps?
curl -H "Authorization: Bearer $TOOLROUTER_API_KEY" \
  -d '{
  "tool": "workout-planner",
  "skill": "exercises_by_target_muscle",
  "input": {
    "target": "biceps"
  }
}' \
  https://api.toolrouter.com/v1/tools/call
Exercises by Equipment

Find exercises you can do with specific equipment like dumbbells, a barbell, or just body weight. Use list_equipment first if you are not sure which values are valid.

Returns: Exercises you can do with the specified equipment
Parameters
equipment *stringEquipment type to filter by (e.g. "dumbbell", "barbell", "body weight")
limitintegerMaximum number of results to return (default 10)
offsetintegerNumber of results to skip for pagination (default 0)
Example
What can I do with dumbbells?
curl -H "Authorization: Bearer $TOOLROUTER_API_KEY" \
  -d '{
  "tool": "workout-planner",
  "skill": "exercises_by_equipment",
  "input": {
    "equipment": "dumbbell"
  }
}' \
  https://api.toolrouter.com/v1/tools/call
List Body Parts

See all the body part categories you can filter by. Run this first if you are unsure what to pass to exercises_by_body_part.

Returns: All body part categories you can use to filter exercises
Example
What body parts can I filter by?
curl -H "Authorization: Bearer $TOOLROUTER_API_KEY" \
  -d '{
  "tool": "workout-planner",
  "skill": "list_body_parts",
  "input": {}
}' \
  https://api.toolrouter.com/v1/tools/call
List Target Muscles

See all the target muscle categories you can filter by. Run this first if you are unsure what to pass to exercises_by_target_muscle.

Returns: All target muscle categories you can use to filter exercises
Example
What muscles can I search by?
curl -H "Authorization: Bearer $TOOLROUTER_API_KEY" \
  -d '{
  "tool": "workout-planner",
  "skill": "list_target_muscles",
  "input": {}
}' \
  https://api.toolrouter.com/v1/tools/call
List Equipment

See all the equipment types you can filter by. Run this first if you are unsure what to pass to exercises_by_equipment.

Returns: All equipment types you can use to filter exercises
Example
What equipment options can I filter by?
curl -H "Authorization: Bearer $TOOLROUTER_API_KEY" \
  -d '{
  "tool": "workout-planner",
  "skill": "list_equipment",
  "input": {}
}' \
  https://api.toolrouter.com/v1/tools/call
Loading reviews...
Loading activity...
v0.022026-03-22
  • Added subtitle, expanded description, and agent instructions
v0.012026-03-21
  • Initial release with 9 skills covering full ExerciseDB API

Quick Start

MCP (Claude Code)
claude mcp add --transport stdio \
  --env TOOLROUTER_API_KEY=YOUR_API_KEY \
  toolrouter -- npx -y toolrouter-mcp
REST API
curl -H "Authorization: Bearer $TOOLROUTER_API_KEY" \
  -d '{"tool":"workout-planner","skill":"search_exercises","input":{}}' \
  https://api.toolrouter.com/v1/tools/call

Frequently Asked Questions

Can I find exercises by name?

Yes. `search_exercises` does a partial match on the exercise name, which makes it easy to find variations like bench press or squat without knowing the exact ID.

How do I get full instructions for one exercise?

Use `get_exercise` with the exercise ID. It returns the target muscles, equipment, and step-by-step instructions for doing the movement properly.

Can I filter by body part, target muscle, or equipment?

Yes. Use the body part and target muscle filters for the muscle group you want, and `body weight` is treated as the no-equipment option.

How do I find the valid filter values first?

Use `list_body_parts`, `list_target_muscles`, and `list_equipment` to browse the allowed values before you build a workout plan or search query.