Iridium MCP Server
Connects AI agents to Iridium fitness data to query workout history, nutrition logs, and body measurements. It enables users to track exercise progress, training volume, and personalized trainer analysis through natural language.
README
Iridium MCP Server
An MCP (Model Context Protocol) server that connects AI agents like Claude to your Iridium fitness data. Query your workouts, nutrition, body measurements, training volume, and more directly from Claude Code or any MCP-compatible client.
Prerequisites
- Node.js 18+
- Iridium app with AI Data Sync enabled (Settings > AI Data Sync)
Setup
1. Enable AI Data Sync in Iridium
- Open the Iridium app on your iPhone
- Go to Settings > AI Data Sync
- Toggle Enable AI Data Sync on
- Copy your Sync ID and Sync Key
2. Install the MCP Server
npm install -g iridium-mcp-server
Or clone and build from source:
git clone https://github.com/iridium-fitness/iridium-mcp-server.git
cd iridium-mcp-server
npm install
npm run build
3. Configure Claude Code
Add the following to your Claude Code MCP settings (~/.claude/claude_desktop_config.json):
{
"mcpServers": {
"iridium": {
"command": "npx",
"args": ["iridium-mcp-server"],
"env": {
"IRIDIUM_SYNC_ID": "your-sync-id-here",
"IRIDIUM_SYNC_KEY": "your-sync-key-here"
}
}
}
}
If you installed from source, use the absolute path instead:
{
"mcpServers": {
"iridium": {
"command": "node",
"args": ["/path/to/iridium-mcp-server/build/index.js"],
"env": {
"IRIDIUM_SYNC_ID": "your-sync-id-here",
"IRIDIUM_SYNC_KEY": "your-sync-key-here"
}
}
}
}
Available Tools
| Tool | Description |
|---|---|
get_workout_history |
Get recent workout history with optional date range and category filtering |
get_workout_detail |
Get full details of a specific workout (exercises, sets, weights, reps, RPE) |
get_nutrition_log |
Get daily nutrition summaries or individual food entries for a specific date |
search_exercises |
Search the exercise database by name or muscle group |
get_exercise_progress |
Get performance history and 1RM trends for a specific exercise |
get_body_measurements |
Get body measurement history (weight, body fat, etc.) |
get_profile |
Get user profile including training goals, methodology, and experience level |
get_training_summary |
Get aggregate training statistics (total workouts, streaks, patterns) |
get_training_volume |
Get volume adaptation records per muscle group with fatigue and recovery data |
get_trainer_analysis |
Get weekly AI trainer analysis logs with recommendations and insights |
get_weekly_schedule |
Get the planned weekly training schedule |
get_workout_templates |
Get saved workout templates with exercise configurations |
Example Usage
Once configured, you can ask Claude things like:
- "Show me my workouts from last week"
- "How has my bench press progressed over the last 3 months?"
- "What did I eat yesterday?"
- "Am I hitting my protein goals?"
- "What does my training volume look like for chest?"
- "What's my weekly training schedule?"
Troubleshooting
"Missing IRIDIUM_SYNC_ID or IRIDIUM_SYNC_KEY"
Make sure both environment variables are set in your MCP server configuration. You can find these values in the Iridium app under Settings > AI Data Sync.
"API request failed (401)"
Your Sync Key may have been regenerated. Open Iridium, go to Settings > AI Data Sync, and copy the current Sync Key. Update your MCP configuration with the new key.
"API request failed (404)"
The data endpoint may not be available yet. Make sure you have synced your data at least once by opening Iridium and tapping Sync Now in Settings > AI Data Sync.
Stale data warnings
If you see a warning that data was synced a long time ago, open the Iridium app and tap Sync Now to push the latest data. The server will show staleness warnings when data is older than 24 hours.
Server not appearing in Claude Code
- Make sure the configuration JSON is valid
- Restart Claude Code after making configuration changes
- Check that Node.js 18+ is installed:
node --version
Development
# Install dependencies
npm install
# Build
npm run build
# Watch mode (rebuild on changes)
npm run dev
# Run directly
IRIDIUM_SYNC_ID=xxx IRIDIUM_SYNC_KEY=yyy npm start
License
MIT
Recommended Servers
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.
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.
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.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
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.
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.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
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.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.