Skip to main content
Glama
neonwatty

Food Tracker MCP Server

by neonwatty

Food Tracker MCP Server

A Model Context Protocol (MCP) server for tracking food intake and nutrition using the USDA FoodData Central database.

Features

  • Search Foods: Query the USDA FoodData Central database for nutritional information

  • Log Meals: Record food intake with calories, macros, and serving sizes

  • Track Progress: View daily logs with totals compared to your goals

  • Set Goals: Define daily targets for calories, protein, carbs, and fat

  • Get Summaries: View nutrition averages over days, weeks, or months

Installation

Claude Desktop

Add to your Claude Desktop configuration file:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

{ "mcpServers": { "food-tracker": { "command": "npx", "args": ["-y", "@neonwatty/food-tracker-mcp"], "env": { "USDA_API_KEY": "your_api_key_here" } } } }

Claude Code

claude mcp add food-tracker -e USDA_API_KEY=your_api_key -- npx -y @neonwatty/food-tracker-mcp

Or add to ~/.claude.json:

{ "mcpServers": { "food-tracker": { "command": "npx", "args": ["-y", "@neonwatty/food-tracker-mcp"], "env": { "USDA_API_KEY": "your_api_key_here" } } } }

Requirements

USDA API Key

Get your free API key at: https://fdc.nal.usda.gov/api-key-signup/

Available Tools

search_food

Search the USDA FoodData Central database for foods.

"Search for chicken breast"

Returns nutrition information per 100g serving including calories, protein, carbs, and fat.

log_food

Log a food entry to your daily food diary.

"Log 200g of grilled salmon for lunch with 400 calories, 40g protein, 0g carbs, 22g fat"

Parameters:

  • food_name (required): Name of the food

  • serving_size (required): Amount of the serving

  • serving_unit (required): Unit (g, oz, cup, piece, etc.)

  • calories (required): Calories for this serving

  • protein_g: Protein in grams

  • carbs_g: Carbohydrates in grams

  • fat_g: Fat in grams

  • fiber_g: Fiber in grams

  • meal: breakfast, lunch, dinner, or snack

  • date: Date in YYYY-MM-DD format (defaults to today)

get_daily_log

Get all food entries for a specific day with totals and goal comparison.

"What have I eaten today?" "Show me my food log for 2025-01-15"

set_goals

Set your daily nutrition goals.

"Set my daily goal to 2000 calories with 150g protein, 200g carbs, and 65g fat"

get_summary

Get nutrition summary and averages for a date range.

"Show me my nutrition summary for this week" "Get my monthly nutrition averages"

delete_entry

Delete a food log entry by its ID.

"Delete entry 5"

Data Storage

Food logs are stored locally in a SQLite database at ~/.food-tracker/food.db. Your data never leaves your machine.

Example Conversation

You: Search for oatmeal Claude: Found 10 foods matching "oatmeal"...

You: Log 1 cup of oatmeal for breakfast Claude: Logged: Oatmeal (1 cup) - 150 cal | P: 5g | C: 27g | F: 3g

You: What have I eaten today? Claude: Food Log for 2025-01-15...

License

MIT License - see LICENSE for details.

Contributing

Contributions are welcome! Please open an issue or submit a pull request on GitHub.

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

Latest Blog Posts

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/neonwatty/food-tracker-mcp'

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