mcpField
W
Workout MCP Server

Workout MCP Server

Local
github.com/ipdeleteHealth0Updated 73w ago

About Workout MCP Server

Workout MCP Server provides cycling workout data and training analytics for LLMs. It is intended for fitness analysis, with tools for retrieving workouts and calculating fitness, fatigue, and form metrics.

Key features

  1. 01Retrieve recent workout history
  2. 02Look up workouts by ID
  3. 03Calculate 42-day fitness (CTL)
  4. 04Calculate 7-day fatigue (ATL)
  5. 05Calculate form (TSB)

Use cases

  1. 01Review recent cycling workouts
  2. 02Analyze current training-week activity
  3. 03Track fitness and fatigue metrics
  4. 04Assess training balance from TSS

MCP support

It exposes workout retrieval and training-metric calculations as tools for MCP clients.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

Workout MCP Server

A Model Context Protocol (MCP) server that provides cycling workout analytics tools, enabling LLMs to analyze fitness data, calculate training metrics, and provide insights into athletic performance.

Features

The Workout MCP Server provides tools for:

  • Retrieving workout history (last 50 or last 7 workouts)
  • Looking up specific workouts by ID
  • Computing fitness metrics:
    • Fitness (CTL): Chronic Training Load - 42-day exponentially weighted moving average
    • Fatigue (ATL): Acute Training Load - 7-day exponentially weighted moving average
    • Form (TSB): Training Stress Balance - the difference between fitness and fatigue

Installation

Using uv (recommended)

When using uv no specific installation is needed. We will use uvx to directly run workout_mcp_server.

Using PIP

Alternatively you can install workout_mcp_server via pip:

pip install workout_mcp_server

After installation, you can run it as a module using:

python -m workout_mcp_server

Configuration

Configure with Claude Desktop

Add this to your claude_desktop_config.json:

Using uvx
"mcpServers": {
  "workout_mcp_server": {
    "command": "uvx",
    "args": ["workout_mcp_server"]
  }
}
Using pip installation
"mcpServers": {
  "workout_mcp_server": {
    "command": "python",
    "args": ["-m", "workout_mcp_server"]
  }
}
Configure with VSCode MCP Client

Add this to your settings.json:

Using uvx
"mcp.servers": {
  "workout_mcp_server": {
    "command": "uvx",
    "args": ["workout_mcp_server"]
  }
}
Using pip installation
"mcp.servers": {
  "workout_mcp_server": {
    "command": "python",
    "args": ["-m", "workout_mcp_server"]
  }
}

Available Tools

get_last_50_workouts

Retrieves all 50 workouts from the dataset, sorted by date (most recent first).

get_last_7_workouts

Retrieves the 7 most recent workouts, useful for analyzing current training week.

get_workout_by_id

Retrieves a specific workout by its unique ID.

Input:

  • workout_id (string): The unique identifier of the workout
compute_fitness

Calculates current fitness score (Chronic Training Load) based on a 42-day exponentially weighted moving average of Training Stress Score (TSS).

compute_fatigue

Calculates current fatigue score (Acute Training Load) based on a 7-day exponentially weighted moving average of TSS.

compute_form

Calculates current form score (Training Stress Balance) as the difference between fitness and fatigue. Positive values indicate good form, negative values suggest accumulated fatigue.

Data Structure

Each workout contains:

  • id: Unique workout identifier
  • date: Workout date (ISO format)
  • duration_minutes: Workout duration in minutes
  • distance_km: Distance covered in kilometers
  • avg_power_watts: Average power output in watts
  • tss: Training Stress Score
  • workout_type: Type of workout (e.g., "endurance", "interval", "recovery")

Development

Building from Source
  1. Clone the repository
  2. Install dependencies: pip install -e .
  3. Run the server: python -m workout_mcp_server
Testing

Run tests with: pytest

License

MIT License - see LICENSE file for details.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.