Skip to main content
Glama
myke239

MyFitnessPal MCP

by myke239

MyFitnessPal MCP

CI Latest release License

A local-first MCP server for MyFitnessPal. Connect through stdio on Windows, macOS, or Linux, or expose it through the authenticated HTTPS gateway for ChatGPT and mobile. It uses the unofficial python-myfitnesspal client; upstream website changes, browser protections, or account restrictions can affect availability.

Quick start

  1. Download the latest release for your platform: the Windows setup app, or install.sh for macOS/Linux.

  2. Run it and follow the short on-screen steps. Windows users do not need Python or a terminal.

See the quick installation guide. No password is stored by this project; browser session cookies are read locally.

Related MCP server: Garmin Connect MCP Server

What it can do

  • Read diary entries, nutrients, water, exercise, measurements, goals, recipes, saved meals, and account preferences.

  • Search foods and serving sizes; estimate nutrition and edible weight from food images without changing the diary.

  • Make explicitly requested diary and account updates using idempotency keys, exact schemas, and read-back guidance.

  • Connect remotely over OAuth with separate read/write grants and local approval for sensitive operations.

Writes are available by default locally. Remote write access requires an explicit OAuth write grant. See the tool guide and write safety notes. This is not full MyFitnessPal website feature parity, and live upstream write persistence may vary.

One ngrok HTTPS address for multiple connectors

You can run Garmin and MyFitnessPal through the same ngrok HTTPS hostname. Garmin uses /mcp/garmin-connect; MyFitnessPal uses /mcp/myfitnesspal. The URLs share scheme, hostname, and ngrok tunnel; each connector uses its own ending path and isolated OAuth state. Do not start a second tunnel or substitute a second hostname for this setup. Follow Shared ngrok setup.

Platforms and releases

The local connector supports Windows, macOS, and Linux. Windows releases include a guided setup app; macOS/Linux use the install script and require Python 3.11+. Browser cookie access depends on supported browsers and OS keychain protections. The combined Garmin + MyFitnessPal HTTPS gateway currently uses Windows DPAPI and its supplied PowerShell launcher, so remote ChatGPT/mobile setup is Windows-hosted today.

Release maintainers can configure Windows Authenticode signing using the steps in Release signing.

Development

python -m venv .venv
# Windows: .venv\\Scripts\\python -m pip install -e ".[dev]"
# macOS/Linux: .venv/bin/python -m pip install -e ".[dev]"
python -m pytest
python -m ruff check src tests
python -m build

License and attribution

Source code is MIT licensed. Das Kreb branding is included from the companion Garmin Connect MCP project. Third-party software notices are in THIRD_PARTY_NOTICES.md.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables MCP clients like Codex and Claude Code to securely read and manage a personal Cronometer account, including food logs, nutrient summaries with missing-data awareness, food search, biometrics, and export analysis.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables nutrition tracking via AI, allowing users to read food logs with macros, goals, and profile, log meals by text or photo, and access diary, subscription, diabetes, and wearable/glucose data.
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables a chat assistant to log what you ate — text, voice notes, recipe portions, or label/plate photos — by resolving foods against the Bundeslebensmittelschlüssel, Open Food Facts, or Tandoor recipe nutrition and storing copy-on-write nutrient entries in a local SQLite log. It serves these tools over stateless streamable HTTP MCP, grouping entries into meals and summarizing days, weeks, and training/body-weight data when an OpenGym endpoint is configured.
    GPL 3.0