Accesses and processes activity, sleep, and health data from Fitbit for training and recovery analysis.
Integrates with Garmin to fetch fitness activities, sleep records, and health metrics for personalized training insights.
Provides tools to access and analyze athlete activities, statistics, and routes from Strava for sports science-based fitness planning.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Pierre Fitness Platform MCP ServerAnalyze my training load and tell me if I need a recovery day."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Pierre Fitness Platform connects AI assistants to fitness data from Strava, Garmin, Fitbit, WHOOP, COROS, and Terra (150+ wearables). Implements Model Context Protocol (MCP), A2A protocol, OAuth 2.0, and REST APIs for Claude, ChatGPT, and other AI assistants.
Intelligence System
Sports science-based fitness analysis including training load management, race predictions, sleep and recovery scoring, nutrition planning, and pattern detection.
See Intelligence Methodology, Nutrition Methodology, and Mobility Methodology for details.
Features
MCP Protocol: JSON-RPC 2.0 for AI assistant integration
A2A Protocol: Agent-to-agent communication
OAuth 2.0 Server: RFC 7591 dynamic client registration
53 MCP Tools: Activities, goals, analysis, sleep, recovery, nutrition, recipes, mobility, configuration
TypeScript SDK:
pierre-mcp-clientnpm packagePluggable Providers: Compile-time provider selection
TOON Format: Token-Oriented Object Notation output for ~40% LLM token reduction (spec)
Provider Support
Provider | Feature Flag | Capabilities |
Strava |
| Activities, Stats, Routes |
Garmin |
| Activities, Sleep, Health |
WHOOP |
| Sleep, Recovery, Strain |
Fitbit |
| Activities, Sleep, Health |
COROS |
| Activities, Sleep, Recovery |
Terra |
| 150+ wearables, Activities, Sleep, Health |
Synthetic |
| Development/Testing |
Build with specific providers:
See Build Configuration for provider architecture details.
Modular Architecture
Pierre uses compile-time feature flags for modular deployments. Build only what you need.
Server Profiles
Pre-configured bundles for common deployment scenarios:
Profile | Description | Binary Size |
| All protocols, transports, clients (default) | ~50MB |
| MCP protocol + stdio transport (desktop clients) | ~35MB |
| MCP + A2A protocols, web transports | ~40MB |
| REST + MCP, mobile client routes | ~42MB |
| REST + MCP, web + admin clients | ~45MB |
Feature Categories
Category | Features | Description |
Protocols |
| API protocols |
Transports |
| Communication layers |
Clients |
| Route groups |
Tools |
| MCP tool categories |
See Build Configuration for detailed feature documentation.
What You Can Ask
"Calculate my daily nutrition needs for marathon training"
"Analyze my training load - do I need a recovery day?"
"Compare my three longest runs this month"
"Analyze this meal: 150g chicken, 200g rice, 100g broccoli"
"What's my predicted marathon time based on recent runs?"
See Tools Reference for the 53 available MCP tools.
Quick Start
This single command:
Resets database with fresh migrations
Seeds admin, AI coaches, demo users, test data, mobility data
Starts Pierre server (8081), web frontend (3000), Expo mobile (8082)
Displays all credentials, tokens, and log file paths
See Getting Started for detailed setup.
MCP Client Configuration
Add to Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):
The SDK handles OAuth 2.0 authentication automatically. See SDK Documentation.
Available MCP Tools
53 tools organized in 9 categories:
Category | Tools | Description |
Core Fitness | 6 | Activities, athlete profile, provider connections |
Goals | 4 | Goal setting, suggestions, feasibility, progress |
Analysis | 10 | Metrics, trends, patterns, predictions, recommendations |
Sleep & Recovery | 5 | Sleep quality, recovery score, rest recommendations |
Nutrition | 5 | BMR/TDEE, macros, USDA food search, meal analysis |
Recipes | 7 | Training-aware meal planning and recipe storage |
Mobility | 6 | Stretching exercises, yoga poses, recovery sequences |
Configuration | 6 | User settings, training zones, profiles |
Fitness Config | 4 | Fitness parameters, thresholds |
Full tool reference: Tools Reference
Server Management
The full setup script does everything:
Resets database with fresh migrations
Seeds admin user, AI coaches, demo users, test data, mobility data
Starts Pierre server, web frontend, and Expo mobile
Displays all credentials, tokens, and log file paths
User Portal Dashboard
Web-based dashboard for users and administrators at http://localhost:5173.
Features
Role-Based Access: super_admin, admin, user roles with permission hierarchy
User Registration: Self-registration with admin approval workflow
API Key Management: Create, view, deactivate API keys
MCP Tokens: Generate tokens for Claude Desktop and AI assistants
Usage Analytics: Request patterns, tool usage charts
Super Admin Impersonation: View dashboard as any user for support
User Roles
Role | Capabilities |
User | Own API keys, MCP tokens, analytics |
Admin | + User approval, all users analytics |
Super Admin | + Impersonation, admin tokens, system config |
First Admin Setup
See Frontend Documentation for detailed dashboard documentation.
Mobile App
React Native mobile app for iOS and Android with conversational AI interface.
Features
AI Chat Interface: Conversational UI with markdown rendering and real-time streaming
Fitness Provider Integration: Connect to Strava, Garmin, Fitbit, WHOOP, COROS via OAuth
Activity Tracking: View and analyze your fitness activities
Training Insights: Get AI-powered training recommendations
Quick Start
See Mobile App README and Mobile Development Guide.
AI Coaches
Pierre includes an AI coaching system with 9 default coaching personas and support for user-created personalized coaches.
Default Coaches
The system includes 9 AI coaching personas across 5 categories:
Category | Icon | Coaches |
Training | 🏃 | Endurance Coach, Speed Coach |
Nutrition | 🥗 | Sports Nutritionist, Hydration Specialist |
Recovery | 😴 | Recovery Specialist, Sleep Coach |
Recipes | 👨🍳 | Performance Chef, Meal Prep Expert |
Analysis | 📊 | Data Analyst |
Default coaches are seeded automatically by ./bin/setup-and-start.sh and are visible to all users.
Personalized Coaches
Users can create their own AI coaches with custom:
Name and personality
System prompts and behavior
Category assignment
Avatar customization
User-created coaches appear in a "Personalized" section above system coaches and are private to each user.
Coach Seeder
To seed or refresh the default coaches:
This creates the 9 default AI coaching personas if they don't already exist.
Documentation
Reference
Getting Started - installation, configuration, first run
Architecture - system design, components, request flow
Protocols - MCP, OAuth2, A2A, REST
Authentication - JWT, API keys, OAuth2 flows
Configuration - environment variables, algorithms
Development
Development Guide - workflow, dashboard, testing
Scripts Reference - 30+ development scripts
CI/CD - GitHub Actions, pipelines
Release Guide - releasing server and SDK to npm
Contributing - code standards, PR workflow
Components
SDK - TypeScript client for MCP integration
Frontend - React dashboard
Mobile - React Native mobile app
Mobile Development - mobile dev setup guide
Methodology
Intelligence - sports science formulas
Nutrition - dietary calculations
Mobility - stretching and yoga sequences
Testing
Development Workflow
Before Committing
Before Pushing
The pre-push hook blocks pushes without a valid marker. This decouples test execution from the push to avoid SSH timeout issues.
Contributing
See Contributing Guide.
License
Dual-licensed under Apache 2.0 or MIT.