From 2ac649550c133680b6715f5a75bceda5961407f0 Mon Sep 17 00:00:00 2001 From: Jacob Donenfeld Date: Sun, 24 May 2026 13:52:32 -0700 Subject: [PATCH 1/2] Correct units for Kilojoules, add units for calories and hydration volume. --- src/intervals_mcp_server/utils/formatting.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/intervals_mcp_server/utils/formatting.py b/src/intervals_mcp_server/utils/formatting.py index 2e68a816..295f35a4 100644 --- a/src/intervals_mcp_server/utils/formatting.py +++ b/src/intervals_mcp_server/utils/formatting.py @@ -89,7 +89,7 @@ def format_activity_summary(activity: dict[str, Any]) -> str: Weighted Avg Power: {activity.get("icu_weighted_avg_watts", "N/A")} watts Training Load: {activity.get("trainingLoad", activity.get("icu_training_load", "N/A"))} FTP: {activity.get("icu_ftp", "N/A")} watts -Kilojoules: {activity.get("icu_joules", "N/A")} +Work: {activity.get("icu_joules", "N/A")} J Intensity: {activity.get("icu_intensity", "N/A")} Power:HR Ratio: {activity.get("icu_power_hr", "N/A")} Variability Index: {activity.get("icu_variability_index", "N/A")} @@ -276,11 +276,11 @@ def _format_nutrition_hydration(entries: dict[str, Any]) -> list[str]: """ nutrition_lines = [] for k, label, unit in [ - ("kcalConsumed", "Calories Consumed", ""), + ("kcalConsumed", "Calories Consumed", "kcal"), ("carbohydrates", "Carbohydrates", "g"), ("protein", "Protein", "g"), ("fatTotal", "Fat", "g"), - ("hydrationVolume", "Hydration Volume", ""), + ("hydrationVolume", "Hydration Volume", "ml"), ]: if entries.get(k) is not None: suffix = f" {unit}" if unit else "" @@ -533,8 +533,8 @@ def format_intervals(intervals_data: dict[str, Any]) -> str: Weighted Avg Power: {interval.get("weighted_average_watts", 0)} watts Intensity: {interval.get("intensity", 0)} Training Load: {interval.get("training_load", 0)} - Joules: {interval.get("joules", 0)} - Joules > FTP: {interval.get("joules_above_ftp", 0)} + Work: {interval.get("joules", 0))} J + Work > FTP: {interval.get("joules_above_ftp", 0)} J Power Zone: {interval.get("zone", "N/A")} ({interval.get("zone_min_watts", 0)}-{interval.get("zone_max_watts", 0)} watts) W' Balance: Start {interval.get("wbal_start", 0)}, End {interval.get("wbal_end", 0)} L/R Balance: {interval.get("avg_lr_balance", 0)} From 26dfa8756d0f510fbc78802a5d2f645eb5ecda57 Mon Sep 17 00:00:00 2001 From: Jacob Donenfeld Date: Tue, 26 May 2026 18:20:35 -0700 Subject: [PATCH 2/2] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- src/intervals_mcp_server/utils/formatting.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/intervals_mcp_server/utils/formatting.py b/src/intervals_mcp_server/utils/formatting.py index 295f35a4..4145c5d0 100644 --- a/src/intervals_mcp_server/utils/formatting.py +++ b/src/intervals_mcp_server/utils/formatting.py @@ -533,7 +533,7 @@ def format_intervals(intervals_data: dict[str, Any]) -> str: Weighted Avg Power: {interval.get("weighted_average_watts", 0)} watts Intensity: {interval.get("intensity", 0)} Training Load: {interval.get("training_load", 0)} - Work: {interval.get("joules", 0))} J + Work: {interval.get("joules", 0)} J Work > FTP: {interval.get("joules_above_ftp", 0)} J Power Zone: {interval.get("zone", "N/A")} ({interval.get("zone_min_watts", 0)}-{interval.get("zone_max_watts", 0)} watts) W' Balance: Start {interval.get("wbal_start", 0)}, End {interval.get("wbal_end", 0)}