Skip to main content
Glama
st3v

Running Formulas MCP Server

by st3v

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Server capabilities have not been inspected yet.

Tools

Functions exposed to the LLM to take actions

NameDescription
daniels_calculate_vdotB

Calculate VDOT according to Jack Daniels.

Args: distance: Distance in meters. time: Time in seconds.

Returns: dict: vdot (float): The calculated VDOT value, representing the runner's aerobic capacity based on the input distance and time.

daniels_calculate_training_pacesA

Get recommended training paces for a given VDOT, based on Jack Daniels' formulas.

Args: vdot: VDOT value.

Returns: dict: easy (dict): Recommended easy pace range with lower and upper bounds. marathon (dict): Recommended marathon pace with value and format. threshold (dict): Recommended threshold pace with value and format. interval (dict): Recommended interval pace with value and format. repetition (dict): Recommended repetition pace with value and format.

daniels_predict_race_timeA

Predict race time for a target distance based on a current race performance. Uses Jack Daniels' equivalent performance methodology.

Args: current_distance: Distance of known performance in meters. current_time: Time of known performance in seconds. target_distance: Distance for race time prediction in meters.

Returns: dict: Daniels' VDOT method prediction with value, format, and time_seconds.

riegel_predict_race_timeB

Predict race time for a target distance based on a current race performance. Uses Riegel's formula.

Args: current_distance: Distance of known performance in meters. current_time: Time of known performance in seconds. target_distance: Distance for race time prediction in meters.

Returns: dict: Riegel's formula prediction with value, format, and time_seconds.

mcmillan_calculate_velocity_markersA

Calculate velocity markers (vLT, CV, vVO2) from a race performance using McMillan methodology.

Args: distance: Race distance in meters time: Race time in seconds

Returns: Dictionary containing velocity markers with paces in MM:SS/km format

mcmillan_predict_race_timesA

Predict race times for standard distances based on a single race performance using McMillan methodology.

Args: distance: Race distance in meters time: Race time in seconds

Returns: Dictionary containing predicted race times in HH:MM:SS format

mcmillan_calculate_training_pacesA

Calculate training paces for all zones based on a race performance using McMillan methodology.

Args: distance: Race distance in meters time: Race time in seconds

Returns: Dictionary containing training paces organized by zones (endurance, stamina, speed, sprint)

mcmillan_heart_rate_zonesA

Calculate heart rate training zones based on age, resting heart rate, and optional max heart rate. Uses McMillan methodology with multiple max HR estimation formulas and both HRMAX and HRRESERVE methods.

Args: age: Runner's age in years resting_heart_rate: Resting heart rate in BPM max_heart_rate: Optional maximum heart rate in BPM (if None, will be estimated)

Returns: Dictionary containing estimated max HR, effective max HR, and training zones with both HRMAX and HRRESERVE calculations

convert_paceA

Convert between different pace and speed units.

Args: value: The numeric value to convert. from_unit: Source unit ("min_km", "min_mile", "kmh", "mph"). to_unit: Target unit ("min_km", "min_mile", "kmh", "mph").

Returns: dict: value (float): Converted numeric value. formatted (str): Human-readable formatted result. unit (str): Target unit descriptor.

Raises: ValueError: If from_unit or to_unit are not valid, or if conversion is not supported.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.9/5.0

Scored across 9 tools

Disambiguation4/5

The tools are mostly distinct, with clear separation between pace conversion, Daniels formulas, McMillan formulas, and Riegel prediction. However, there is some overlap between 'daniels_predict_race_time' and 'riegel_predict_race_time', which both predict race times from a known performance, potentially causing confusion. The other tools have well-defined, non-overlapping purposes.

Naming Consistency5/5

All tool names follow a consistent snake_case pattern with a clear verb_noun structure (e.g., convert_pace, calculate_training_paces, predict_race_time). The naming is uniform across all tools, making them easily readable and predictable, with no deviations in style or convention.

Tool Count5/5

With 9 tools, the server is well-scoped for its purpose of running formulas, covering pace conversion, training pace calculations, race time predictions, and heart rate zones from multiple methodologies. Each tool serves a distinct function, and the count is neither too sparse nor overwhelming, fitting typical expectations for such a domain.

Completeness4/5

The tool set provides comprehensive coverage for running-related calculations, including conversions, training paces, race predictions, and heart rate zones from Daniels, McMillan, and Riegel methodologies. A minor gap is the lack of tools for other common running formulas (e.g., Karvonen method for heart rate), but the core workflows are well-covered, allowing agents to perform most essential tasks without significant dead ends.

Maintenance

ActivityInactive
ResponsivenessNo issues