# googlarz/suunto-mcp [Health: Active]

**Category:** 🏃 Sports  
**Repository:** https://github.com/googlarz/suunto-mcp  
**GitHub Stars:** 35  
**npm Downloads (last month):** 1187  
**Views:** 12  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/googlarz-suunto-mcp

## Description
MCP server for Suunto watches via the official apizone API. OAuth2 pairing, list/get workouts, time-series samples, FIT-file decoding, GPX export, plus 24/7 activity, sleep, and recovery/HRV. Resources expose today's recovery and the week's training summary as ambient context.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "suunto-mcp": {
    "command": "npx",
    "args": ["-y","suunto-mcp"]
  }
}
```

## Documentation

## What googlarz/suunto-mcp does

googlarz/suunto-mcp exposes Suunto data through the Model Context Protocol, allowing an AI client to retrieve and interpret information from a connected Suunto account. Its primary focus is training analysis: workout history, detailed time-series samples, heart-rate patterns, distance, elevation, and related metrics can be queried conversationally.

The server also covers data beyond individual workouts. Depending on the APIs enabled for the Suunto account, it can work with 24/7 activity, sleep, recovery, and HRV information. MCP resources provide a current recovery view for today and a summary of the training week, so an AI client can use those details as context without a separate request.

Data can also move in the other direction. The project supports sending planned sessions or uploaded workout data to a Suunto watch, along with exporting routes as GPX files. FIT files can be decoded for use in workout-related workflows.

## How it works

The connection uses Suunto's official apizone API. Authentication is handled through OAuth2: the user registers an application with Suunto, configures a redirect URI, and authorizes access during login. After pairing, the MCP client can request the available Suunto data and present the results through its normal tool interface.

A Suunto watch must first be synced with the Suunto app. The server does not replace that synchronization step; it reads the account data made available through Suunto's APIs. Asking questions such as comparing long runs, reviewing resting-heart-rate trends, or finding workouts above a heart-rate threshold lets the AI client decide which data to retrieve.

## Setup and configuration

Setup requires a Suunto apizone account, an approved Developer API subscription, an OAuth application, and the application's credentials. The setup process uses:

- A Suunto or Sports Tracker account with the same email used by the Suunto app
- A registered OAuth application with a client ID and client secret
- The exact redirect URI `http://localhost:8421/callback`
- The subscription's primary key
- Node.js and Git
- An MCP-compatible AI client, such as Claude Desktop

The project can be installed by cloning the repository, running `npm install`, and building with `npm run build`. Credentials are placed in a local `.env` file based on the project's example file. OAuth approval is completed interactively by the account holder.

Suunto approval for API access may take three to four weeks. The Developer API provides workout access; separate Sleep, Recovery, or Daily Activity subscriptions may be needed for those corresponding data sets.

## Tools and capabilities

The available functionality includes:

- Listing and retrieving Suunto workouts
- Reading workout time-series samples
- Decoding FIT files
- Exporting routes as GPX
- Accessing 24/7 activity data
- Reading sleep, recovery, and HRV information
- Exposing today's recovery as an MCP resource
- Exposing a weekly training summary as an MCP resource
- Sending planned sessions or workout data to a Suunto watch

These capabilities suit conversational coaching workflows, historical comparisons, route sharing, and analysis that combines workouts with recovery or sleep context.

## Limitations and notes

Access depends on Suunto apizone approval and the subscriptions enabled for the account. A watch must be synced to the Suunto app before its data can be available through the API. OAuth authorization, account creation, application registration, and credential handling remain user-controlled steps. The redirect URI must match the registered value exactly, and the client secret should be kept private.

_Full upstream README: https://allmcps.com/mcp/googlarz-suunto-mcp/readme_

