Skip to main content
Glama

MyFitnessPal MCP Server

MyFitnessPal MCP Server

A FastMCP server that retrieves your MyFitnessPal nutrition data through the Model Context Protocol.

Quick Start

Local Development

  1. Prerequisites: Python 3.12+, uv, MyFitnessPal account

  2. Install dependencies: uv sync

  3. Log into MyFitnessPal in your browser (Chrome, Firefox, Safari, or Edge)

  4. Test the server: uv run python test_client.py

Deployment (Server/Docker)

For environments without a browser:

  1. Export cookies from your local browser:

    uv run python export_cookies.py
  2. Deploy 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):

{ "mcpServers": { "myfitnesspal": { "type": "stdio", "command": "uv", "args": ["run", "--directory", "/path/to/mfp-mcp", "python", "main.py"] } } }

Documentation

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 cookies

  • Use export_cookies.py utility to extract cookies beforehand:

    uv run python export_cookies.py
  • Perfect for environments without browser access (Docker containers, remote servers, etc.)

  • Cookies expire after ~30 days, re-export when needed

Project Structure

mfp-mcp/ ├── docs/ # All documentation ├── myfitnesspal/ # External library (GitHub) ├── main.py # FastMCP server ├── api_client.py # Client wrapper ├── utils.py # Helper functions ├── test_client.py # Test script └── pyproject.toml # Dependencies

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

Deploy Server
-
security - not tested
A
license - permissive license
-
quality - not tested

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

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.

  1. Quick Start
    1. Local Development
    2. Deployment (Server/Docker)
  2. Features
    1. Configuration
      1. Documentation
        1. How It Works
          1. Cookie Authentication
        2. Project Structure
          1. Requirements
            1. License
              1. Credits

                MCP directory API

                We provide all the information about MCP servers via our MCP API.

                curl -X GET 'https://glama.ai/api/mcp/v1/servers/ai-mcp-garage/mcp-myfitnesspal'

                If you have feedback or need assistance with the MCP directory API, please join our Discord server