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 sync
Log 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
.env
file - 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_COOKIES
environment variable with exported cookiesUse
export_cookies.py
utility 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
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Tools
Enables retrieval and analysis of MyFitnessPal nutrition data including daily summaries, meal breakdowns, exercise tracking, and macro/micronutrient analysis. Uses browser cookie authentication to access your personal MyFitnessPal account data through natural language queries.