Calculate Nutrition Goals
calculate-goalsFull Description
Calculates personalized daily calorie and macronutrient targets based on biometric data and fitness goals. Returns daily calorie target adjusted for weight goal (lose/maintain/gain), macro breakdown (protein, carbs, fat in grams), meal-specific targets for breakfast/lunch/dinner, and TDEE.
Requires age, sex (male or female), height (with unit: inches or cm), weight (with unit: lb or kg), activity level (sedentary/lightly_active/moderately_active/very_active/extremely_active), and weight goal. If weight goal is not explicitly stated, ask whether they want to lose, maintain, or gain weight - do not assume 'maintain'. Optional: diet speed (slow/moderate/aggressive, defaults to moderate) and dietary approach (keto, vegan, paleo, highProtein, etc.).
The calculated goals can be used by search-recipes to filter recipes matching the user's nutritional targets.
Parameters
activity_levelstringActivity level: sedentary, lightly active, moderately active, very active, or extremely active. When asking the user, present options with spaces (e.g., 'lightly active', not 'lightly_active'). Examples: sedentary for little/no exercise, lightly active for 1-3 days/week, moderately active for 3-5 days/week, very active for daily exercise, extremely active for athletes with intense training.
sedentarylightly_activemoderately_activevery_activeextremely_activeageintegerAge in years (must be 18 or older)
heightnumberHeight value
height_unitstringHeight unit: inches or cm
inchescmsexstringBiological sex: male or female. Required for accurate BMR calculation.
malefemaleweightnumberCurrent weight value
weight_goalstringWeight goal: 'lose' for weight loss, 'maintain' to stay current weight, 'gain' for muscle/weight gain. REQUIRED - if user hasn't explicitly stated their goal, ask them directly before calling this tool.
losemaintaingainweight_unitstringWeight unit: lb or kg
lbkgapproachstringDietary approach (optional): omnivore, high carb, keto, pescatarian, flexitarian, vegetarian, vegan, paleo, clean eating, mediterranean, or high protein. When asking the user, present as natural language (e.g., 'high protein', not 'highProtein'). Defaults to balanced macros if not specified.
nulldiet_speedstringDiet speed (optional): slow (0.5 lb/week, sustainable), moderate (1 lb/week, balanced), aggressive (1.5 lb/week, requires discipline)
null