Polar MCP Server

Polar MCP Server

An MCP server for the Polar AccessLink API. Connect your Polar fitness data to Claude AI - access workouts, sleep analysis, recovery metrics, heart rate data, and more.

Category
Visit Server

README

Polar MCP Server

An MCP (Model Context Protocol) server for the Polar AccessLink API. Connect your Polar fitness data to Claude AI - access workouts, sleep analysis, recovery metrics, heart rate data, and more.

Quick Start (Public Instance)

No setup required! Use our hosted instance:

  1. In Claude: Settings → Integrations → Add MCP Server
  2. Enter the URL: https://polar-mcp-server.n-neuhaeusel.workers.dev/mcp
  3. Claude will open an authorization window — log in with your Polar account
  4. Start chatting about your fitness data!

Features

25 Tools Available

Category Tools Description
Exercises get_exercises, get_exercise Training data with HR, speed, zones
Exercise Export get_exercise_fit, get_exercise_tcx, get_exercise_gpx Export in FIT, TCX, GPX formats
Sleep get_sleep, get_sleep_range Sleep stages, score, duration
Recovery get_nightly_recharge, get_nightly_recharge_range ANS charge, HRV, breathing rate
Activity get_daily_activity, get_daily_activity_range, get_activity_samples, get_activity_samples_range Steps, calories, activity zones
Heart Rate get_continuous_heart_rate, get_continuous_heart_rate_range 24/7 heart rate monitoring
Training Load get_cardio_load, get_cardio_load_range, get_cardio_load_history TRIMP, acute/chronic load
SleepWise get_sleepwise_alertness, get_sleepwise_circadian_bedtime Alertness predictions, optimal bedtime
Biosensing get_body_temperature, get_skin_temperature, get_spo2 Temperature, SpO2 data
User get_user_info, get_physical_info Profile, VO2max, resting HR

Supported Devices

  • Polar Pacer / Pacer Pro
  • Polar Vantage V2 / V3
  • Polar Vantage M / M2
  • Polar Grit X / Grit X Pro / Grit X2 Pro
  • Polar Ignite / Ignite 2 / Ignite 3
  • Polar Unite
  • And more...

Example Prompts

Once connected, ask Claude:

  • "Show me my workouts from last week"
  • "How was my sleep last night? Compare it to my weekly average"
  • "Analyze my heart rate variability trends"
  • "What's my current training load status?"
  • "When should I go to bed tonight for optimal recovery?"
  • "Export my last run as a GPX file"
  • "How many steps did I take this month?"

Self-Hosting

Want to run your own instance? Two deployment options available:

Option 1: Cloudflare Workers (Recommended)

Prerequisites

Setup

# Clone and install
git clone https://github.com/NelsonNew/polar-mcp-server.git
cd polar-mcp-server
npm install

# Create KV namespace
npx wrangler kv namespace create OAUTH_KV
# Copy the ID to wrangler.toml

# Set secrets
npx wrangler secret put POLAR_CLIENT_ID
npx wrangler secret put POLAR_CLIENT_SECRET

# Deploy
npm run deploy

After deploying, add the callback URL to your Polar app:

https://YOUR-WORKER.workers.dev/callback

Option 2: Local (Claude Desktop)

# Clone and build
git clone https://github.com/NelsonNew/polar-mcp-server.git
cd polar-mcp-server
npm install && npm run build

# Get access token
export POLAR_CLIENT_ID="your_client_id"
export POLAR_CLIENT_SECRET="your_client_secret"
npm run auth

Add to Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "polar": {
      "command": "node",
      "args": ["/path/to/polar-mcp-server/dist/index.js"],
      "env": {
        "POLAR_ACCESS_TOKEN": "your_access_token"
      }
    }
  }
}

API Reference

All tools use the Polar AccessLink API v3.

Tool Endpoint Description
get_user_info /users/{id} User profile
get_physical_info /users/physical-information VO2max, max HR, resting HR
get_exercises /exercises Last 30 days of workouts
get_exercise /exercises/{id} Single workout details
get_exercise_fit/tcx/gpx /exercises/{id}/fit|tcx|gpx Export formats
get_sleep /users/sleep Sleep data
get_nightly_recharge /users/nightly-recharge Recovery metrics
get_daily_activity /users/activities Daily activity
get_continuous_heart_rate /users/continuous-heart-rate 24/7 HR
get_cardio_load /users/cardio-load Training load
get_sleepwise_alertness /users/sleepwise/alertness Alertness predictions
get_body_temperature /users/biosensing/bodytemperature Body temp
get_spo2 /users/biosensing/spo2 Blood oxygen

Troubleshooting

Error Solution
"Polar API error (403)" Re-authorize or check if data sync is complete
"Polar API error (404)" Endpoint not available for your device/subscription
No exercise data Sync your Polar device to Polar Flow app first

Privacy

  • Your Polar credentials are never stored
  • OAuth tokens are managed securely by the Cloudflare Workers OAuth provider
  • Each user gets their own isolated MCP session
  • No fitness data is logged or stored on our servers

Contributing

Contributions welcome! Please open an issue or PR.

License

MIT

Links

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured