Skip to main content
Glama
MyFitnessPal MCP Server

MyFitnessPal MCP Server

by ansonyuu

MyFitnessPal MCP Server

An MCP server that lets AI assistants read and log your MyFitnessPal nutrition data. Track calories, macros, search foods, and add meals — all through natural conversation.

Tools

Tool

Description

get_diary

Get food diary entries for a specific date

get_nutrition_summary

Get calories and macros summary for a date

get_goals

Get your daily calorie and macro targets

quick_add_calories

Quick-add calories (and optionally macros) to a meal

search_food

Search the MFP food database

get_food_details

Get nutrition info and serving sizes for a food item

add_food

Log a food item to your diary

Related MCP server: MyFitnessPal MCP Server

Setup

MyFitnessPal doesn't have a public API, so this server authenticates using your browser's session cookie.

  1. Log into MyFitnessPal in your browser

  2. Open DevTools (F12 or Cmd+Option+I)

  3. Go to Application → Cookies → www.myfitnesspal.com

  4. Copy the full cookie string (or use the helper script below)

Or use the helper script:

npm run export-cookies

2. Configure environment

cp env.example .env

Fill in your values:

MFP_SESSION_COOKIE=your_session_cookie_value_here
MFP_USERNAME=your_username

3. Build

npm install
npm run build

Usage

Claude Code

Add to ~/.claude/settings.json:

{
  "mcpServers": {
    "myfitnesspal": {
      "type": "stdio",
      "command": "node",
      "args": ["/path/to/myfitnesspal-mcp/dist/index.js"]
    }
  }
}

Cursor

Add to .cursor/mcp.json:

{
  "mcpServers": {
    "myfitnesspal": {
      "type": "stdio",
      "command": "node",
      "args": ["/path/to/myfitnesspal-mcp/dist/index.js"]
    }
  }
}

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):

{
  "mcpServers": {
    "myfitnesspal": {
      "type": "stdio",
      "command": "node",
      "args": ["/path/to/myfitnesspal-mcp/dist/index.js"]
    }
  }
}

Replace /path/to/myfitnesspal-mcp with the actual path to this repo.

Remote Deployment (Cloudflare Workers)

The worker/ directory contains a Cloudflare Workers deployment for using this as a remote MCP server.

cd worker
npm install
npx wrangler login
npx wrangler deploy
npx wrangler secret put MFP_SESSION_COOKIE   # paste your cookie when prompted

Then connect from Claude Desktop:

{
  "mcpServers": {
    "myfitnesspal": {
      "command": "npx",
      "args": ["mcp-remote", "https://myfitnesspal-mcp.<your-subdomain>.workers.dev/mcp"]
    }
  }
}

Session Expiration

MFP session cookies expire roughly every 30 days. If you get auth errors, grab a fresh cookie from your browser and update your .env (or run npx wrangler secret put MFP_SESSION_COOKIE for the worker).

License

MIT

Disclaimer

Unofficial integration for personal use. Please respect MyFitnessPal's Terms of Service.

Available Tools

7 tools
add_foodA

Add a food item to your diary. Use search_food to find the food ID first. Optionally use get_food_details to find a specific serving size.

Inputs: meal (required), food_id (required), quantity (required), date, +1 more.

get_diaryA

Get food diary entries for a specific date. Returns all meals with their food entries and calorie/macro totals.

Inputs: date.

get_food_detailsA

Get detailed nutrition information and serving sizes for a specific food item. Use the food ID from search_food results.

Inputs: food_id (required).

get_goalsA

Get your daily calorie and macro goals from MyFitnessPal.

Inputs: no named parameters.

get_nutrition_summaryA

Get a nutrition summary for a specific date, including calories, carbs, fat, protein, sodium, and sugar with their goals.

Inputs: date.

quick_add_caloriesB

Add calories to your diary using Quick Add. Optionally specify carbs, fat, and protein.

Inputs: meal (required), calories (required), fat, date, +2 more.

search_foodA

Search the MyFitnessPal food database. Returns food items with calories and macros.

Inputs: query (required), page, max_results.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.8/5.0

    Scored across 7 tools

    Disambiguation4/5

    Most tools are clearly distinct: search_food and get_food_details relate to the food database, while get_diary and get_nutrition_summary relate to daily records. There is minor overlap between get_diary and get_nutrition_summary since both expose calorie/macro totals, but their descriptions clarify the different levels of detail.

    Naming Consistency5/5

    Tool names follow a consistent snake_case verb_noun pattern: get_diary, get_goals, search_food, add_food, quick_add_calories. The naming style is uniform and predictable across all seven tools.

    Tool Count5/5

    Seven tools is a well-scoped size for a nutrition diary server. Each tool covers a meaningful part of the workflow—viewing data, searching foods, and logging entries—without unnecessary redundancy.

    Completeness3/5

    The server covers core read and add workflows: viewing diary data, searching foods, getting details, and adding entries. However, it lacks update and delete operations for diary entries, which is a notable gap when correcting mistakes or modifying logged food.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers