Get the FREE Ultimate OpenClaw Setup Guide →

whoop -claude

Model Context Protocol server for WHOOP API integration. Connect your WHOOP fitness data to Claude Desktop with full OAuth authentication and 18+ API endpoints.

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio nissand-whoop-mcp-server-claude node dist/index.js \
  --env MCP_SERVER_PORT="3001" \
  --env WHOOP_CLIENT_ID="your_client_id_here" \
  --env WHOOP_REDIRECT_URI="http://localhost:3000/callback" \
  --env WHOOP_CLIENT_SECRET="your_client_secret_here"

How to use

The WHOOP MCP Server exposes the entire WHOOP v2 API set through the MCP interface, enabling you to query user profiles, body measurements, cycles, recovery, sleep, and workouts with pagination and strong TypeScript typings. It supports an OAuth 2.0 flow to securely obtain and refresh access tokens, and provides a collection of tools to fetch specific data (for example, user profile, sleep records, cycles, and workouts) as well as paginated lists. Use the included tools to authenticate, obtain an access token, and then read data from WHOOP endpoints in a consistent, type-safe manner. The server is designed to be integrated into your MCP-enabled tooling, workflows, or dashboards, allowing you to request data via the standard MCP tools and handle responses in your app with confidence thanks to the TypeScript types.

To operate, set up your environment with your WHOOP credentials and an OAuth redirect URI, start the server, and then use the exposed tools to interact with WHOOP data. Typical usage involves: 1) generating an authorization URL with whoop-get-authorization-url, 2) completing user authorization, 3) exchanging the authorization code for an access token with whoop-exchange-code-for-token, and 4) storing the access token using whoop-set-access-token before making API calls like whoop-get-user-profile or whoop-get-cycle-collection. The server supports common data retrieval patterns such as paginated lists (limit, start, end, nextToken) and targeted fetches by ID for granular data inspection.

How to install

Prerequisites

  • Node.js 18+ installed on your machine
  • npm (comes with Node.js) or npm/yarn package manager
  • A WHOOP Developer Account with API credentials (Client ID and Client Secret)
  • A registered redirect URI for OAuth (e.g., http://localhost:3000/callback)
  1. Clone the repository or pull this MCP server into your project directory
  2. Install dependencies
npm install
  1. Configure environment variables
  • Copy the example env file and populate with your credentials
cp env.example .env

Edit .env and set:

# WHOOP API Configuration
WHOOP_CLIENT_ID=your_client_id_here
WHOOP_CLIENT_SECRET=your_client_secret_here
WHOOP_REDIRECT_URI=http://localhost:3000/callback

# MCP Server Configuration
MCP_SERVER_PORT=3001
  1. Build the project (TypeScript)
npm run build
  1. Run the MCP server
npm start

Or run in development mode with hot reloading

npm run dev

Notes

  • The server uses a local OAuth flow; ensure your redirect URI is registered in the WHOOP developer console and matches your environment.
  • Expose or forward ports if running in containers or behind proxies so the OAuth flow can callback to http://localhost:3000/callback.
  • After a successful authorization, you can store tokens using the provided tools and start issuing data requests via the available MCP tools.

Additional notes

Tips and common issues:

  • Ensure your WHOOP credentials are correctly configured in .env; incorrect credentials will yield authentication errors.
  • If you encounter token expiration, use whoop-refresh-token to obtain a fresh access token.
  • When testing, use the available paging parameters (limit, start, end, nextToken) to manage large datasets.
  • The server is TypeScript-based; ensure your environment has the appropriate TS compilation targets and Node.js version compatible with the compiled output.
  • If you deploy behind a reverse proxy, configure the host and port accordingly and ensure CORS settings (if applicable) allow your clients to connect.

Related MCP Servers

Sponsor this space

Reach thousands of developers