chrisdoc hevy mcp

chrisdoc hevy mcp avatar

by chrisdoc

What is chrisdoc hevy mcp

MseeP.ai Security Assessment Badge

hevy-mcp: Model Context Protocol Server for Hevy Fitness API

License: MIT smithery badge

A Model Context Protocol (MCP) server implementation that interfaces with the Hevy fitness tracking app and its API. This server enables AI assistants to access and manage workout data, routines, exercise templates, and more through the Hevy API (requires PRO subscription).

Features

  • Workout Management: Fetch, create, and update workouts
  • Routine Management: Access and manage workout routines
  • Exercise Templates: Browse available exercise templates
  • Folder Organization: Manage routine folders

Prerequisites

  • Node.js (v20 or higher)
  • npm or yarn
  • A Hevy API key

Installation

Installing via Smithery

To install hevy-mcp for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @chrisdoc/hevy-mcp --client claude

Manual Installation

# Clone the repository
git clone https://github.com/chrisdoc/hevy-mcp.git
cd hevy-mcp

# Install dependencies
npm install

# Create .env file from sample
cp .env.sample .env
# Edit .env and add your Hevy API key

Integration with Cursor

To use this MCP server with Cursor, you need to update your ~/.cursor/mcp.json file by adding the following configuration:

{
  "hevy-mcp-server": {
    "command": "npx",
    "args": ["-y", "hevy-mcp"],
    "env": {
      "HEVY_API_KEY": "your-api-key-here"
    }
  }
}

Make sure to replace your-api-key-here with your actual Hevy API key.

Configuration

Create a .env file in the project root with the following content:

HEVY_API_KEY=your_hevy_api_key_here

Replace your_hevy_api_key_here with your actual Hevy API key.

Usage

Development

npm run dev

This starts the MCP server in development mode with hot reloading.

Production

npm run build
npm start

Available MCP Tools

The server implements the following MCP tools:

Workout Tools

  • get-workouts: Fetch and format workout data
  • get-workout: Get a single workout by ID
  • create-workout: Create a new workout
  • update-workout: Update an existing workout
  • get-workout-count: Get the total count of workouts
  • get-workout-events: Get workout update/delete events

Routine Tools

  • get-routines: Fetch and format routine data
  • create-routine: Create a new routine
  • update-routine: Update an existing routine
  • get-routine: Get a single routine by ID

Exercise Template Tools

  • get-exercise-templates: Fetch exercise templates
  • get-exercise-template: Get a template by ID

Routine Folder Tools

  • get-routine-folders: Fetch routine folders
  • create-routine-folder: Create a new folder
  • get-routine-folder: Get a folder by ID

Project Structure

hevy-mcp/
โ”œโ”€โ”€ .env                   # Environment variables (API keys)
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ index.ts           # Main entry point
โ”‚   โ”œโ”€โ”€ tools/             # Directory for MCP tool implementations
โ”‚   โ”‚   โ”œโ”€โ”€ workouts.ts    # Workout-related tools
โ”‚   โ”‚   โ”œโ”€โ”€ routines.ts    # Routine-related tools
โ”‚   โ”‚   โ”œโ”€โ”€ templates.ts   # Exercise template tools
โ”‚   โ”‚   โ””โ”€โ”€ folders.ts     # Routine folder tools
โ”‚   โ”œโ”€โ”€ generated/         # API client (generated code)
โ”‚   โ”‚   โ”œโ”€โ”€ client/        # Kiota-generated client
โ”‚   โ””โ”€โ”€ utils/             # Helper utilities
โ”‚       โ”œโ”€โ”€ formatters.ts  # Data formatting helpers
โ”‚       โ””โ”€โ”€ validators.ts  # Input validation helpers
โ”œโ”€โ”€ scripts/               # Build and utility scripts
โ””โ”€โ”€ tests/                 # Test suite

Development

Code Style

This project uses Biome for code formatting and linting:

npm run check

Generating API Client

The API client is generated from the OpenAPI specification using Kiota:

npm run export-specs
npm run build:client

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Acknowledgements

Leave a Comment

Frequently Asked Questions

What is MCP?

MCP (Model Context Protocol) is an open protocol that standardizes how applications provide context to LLMs. Think of MCP like a USB-C port for AI applications, providing a standardized way to connect AI models to different data sources and tools.

What are MCP Servers?

MCP Servers are lightweight programs that expose specific capabilities through the standardized Model Context Protocol. They act as bridges between LLMs like Claude and various data sources or services, allowing secure access to files, databases, APIs, and other resources.

How do MCP Servers work?

MCP Servers follow a client-server architecture where a host application (like Claude Desktop) connects to multiple servers. Each server provides specific functionality through standardized endpoints and protocols, enabling Claude to access data and perform actions through the standardized protocol.

Are MCP Servers secure?

Yes, MCP Servers are designed with security in mind. They run locally with explicit configuration and permissions, require user approval for actions, and include built-in security features to prevent unauthorized access and ensure data privacy.

Related MCP Servers

sylphlab pdf reader mcp avatar

sylphlab pdf reader mcp

An MCP server built with Node.js/TypeScript that allows AI agents to securely read PDF files (local or URL) and extract text, metadata, or page counts. Uses pdf-parse.

pdf-parsetypescriptnodejs
aashari mcp server atlassian bitbucket avatar

aashari mcp server atlassian bitbucket

Node.js/TypeScript MCP server for Atlassian Bitbucket. Enables AI systems (LLMs) to interact with workspaces, repositories, and pull requests via tools (list, get, comment, search). Connects AI directly to version control workflows through the standard MCP interface.

atlassianrepositorymcp
aashari mcp server atlassian confluence avatar

aashari mcp server atlassian confluence

Node.js/TypeScript MCP server for Atlassian Confluence. Provides tools enabling AI systems (LLMs) to list/get spaces & pages (content formatted as Markdown) and search via CQL. Connects AI seamlessly to Confluence knowledge bases using the standard MCP interface.

atlassianmcpconfluence
prisma prisma avatar

prisma prisma

Next-generation ORM for Node.js & TypeScript | PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB and CockroachDB

cockroachdbgomcp
Zzzccs123 mcp sentry avatar

Zzzccs123 mcp sentry

mcp sentry for typescript sdk

mcptypescript
zhuzhoulin dify mcp server avatar

zhuzhoulin dify mcp server

mcp
zhongmingyuan mcp my mac avatar

zhongmingyuan mcp my mac

mcp
zhixiaoqiang desktop image manager mcp avatar

zhixiaoqiang desktop image manager mcp

MCP ๆœๅŠกๅ™จ๏ผŒ็”จไบŽ็ฎก็†ๆกŒ้ขๅ›พ็‰‡ใ€ๆŸฅ็œ‹่ฏฆๆƒ…ใ€ๅŽ‹็ผฉใ€็งปๅŠจ็ญ‰๏ผˆๅฎŒๅ…จ่ฎฉTraeๅฎž็Žฐ๏ผ‰

mcp
zhixiaoqiang antd components mcp avatar

zhixiaoqiang antd components mcp

An MCP service for Ant Design components query | ไธ€ไธชๅ‡ๅฐ‘ Ant Design ็ป„ไปถไปฃ็ ็”Ÿๆˆๅนป่ง‰็š„ MCP ๆœๅŠก๏ผŒๅŒ…ๅซ็ณป็ปŸๆ็คบ่ฏใ€็ป„ไปถๆ–‡ๆกฃใ€API ๆ–‡ๆกฃใ€ไปฃ็ ็คบไพ‹ๅ’Œๆ›ดๆ–ฐๆ—ฅๅฟ—ๆŸฅ่ฏข

designantdapi
yeonupark mcp soccer data avatar

yeonupark mcp soccer data

An MCP server that provides real-time football data based on the SoccerDataAPI.

mcpapi

Submit Your MCP Server

Share your MCP server with the community

Submit Now