MyFitnessPal MCP Server
A FastMCP server that retrieves your MyFitnessPal nutrition data through the Model Context Protocol.
Quick Start
Local Development
Prerequisites: Python 3.12+, uv, MyFitnessPal account
Install dependencies:
uv syncLog into MyFitnessPal in your browser (Chrome, Firefox, Safari, or Edge)
Test the server:
uv run python test_client.py
Deployment (Server/Docker)
For environments without a browser:
Export cookies from your local browser:
uv run python export_cookies.pyDeploy with the generated
.envfile - no browser needed!
See Deployment Guide for Docker, systemd, and cloud deployment options.
Features
Daily nutrition summary (calories, macros, water)
Detailed meal-by-meal breakdown
Exercise tracking (cardio + strength)
Macro & micronutrient analysis
Water intake monitoring
Date range summaries with trends
Configuration
Add to your MCP client config (e.g., .cursor/mcp.json):
Documentation
Full Documentation - Complete setup and usage guide
Deployment Guide - Docker, server, and cloud deployment
Quick Start Guide - Fast setup instructions
Project Summary - Architecture and design decisions
Implementation Notes - Technical details
How It Works
Uses the python-myfitnesspal library (GitHub version) which:
Extracts cookies from your browser automatically
Scrapes MyFitnessPal website for data
No credentials stored in files
Works with Chrome, Firefox, Safari, and Edge
Cookie Authentication
Browser-based (default):
Automatically extracts cookies from your local browser
Works out of the box if you're logged into MyFitnessPal
Environment variable (for Docker/servers):
Set
MFP_COOKIESenvironment variable with exported cookiesUse
export_cookies.pyutility to extract cookies beforehand:uv run python export_cookies.pyPerfect for environments without browser access (Docker containers, remote servers, etc.)
Cookies expire after ~30 days, re-export when needed
Project Structure
Requirements
Python 3.12+
uv package manager
Active MyFitnessPal session in browser
fastmcp 2.12+
lxml, browser-cookie3, measurement
License
For personal use and educational purposes. Respect MyFitnessPal's Terms of Service.
Credits
python-myfitnesspal: https://github.com/coddingtonbear/python-myfitnesspal
FastMCP: https://github.com/jlowin/fastmcp