Skip to main content
Glama
edp8489

Nutrition MCP

by edp8489

Nutrition MCP

Introduction

A calorie and macronutrient tracker built around an MCP server. A single Bun process exposes a streamable-HTTP MCP API backed by the OpenNutrition dataset (SQLite + FTS search) and serves a Vue 3 web app — search foods, build recipes, compute macros, and log what you eat.

Tools exposed to your LLM client:

  • searchIngredient — FTS-backed food search with category/tag filters

  • getIngredientMacros — per-100g and per-serving nutrition with measured/unmeasured flags

  • computeRecipeMacros — deterministic macro summation for a recipe

  • filterFoods — nutrient ranges and dietary presets (keto, high-protein, …)

  • convertUnits — unit conversion, food-aware where possible

All arithmetic happens server-side, so the model never does math or invents nutrition data. Single-user by design: logs, recipes, and favorites live in your browser's IndexedDB and never leave your machine.

Related MCP server: nutrition-mcp

Usage

Requirements: Bun and Docker (for server deployment only).

  1. Clone repository

  2. Download latest OpenNutrition dataset from https://www.opennutrition.app/download and extract to local directory (e.g. external/opennutrition-dataset-YYYY/)

  3. (First run only) Install dependencies and create OpenNutrition.sqlite database

bun install && bun run build:sqlite external/opennutrition-dataset-2025.1/opennutrition_foods.tsv

The TSV is gitignored — obtain the OpenNutrition dataset release first and place it at that path. The build writes opennutrition.sqlite next to the TSV.

  1. Copy the database next to docker-compose.yml or adjust the bind mount path if you keep it elsewhere:

mkdir -p data && cp external/opennutrition-dataset-2025.1/opennutrition.sqlite data/
  1. Start the container:

docker compose up -d --build

  • Web app: http://<host>:3000/nutrition-tracker/

  • MCP endpoint: http://<host>:3000/mcp — point your chat client (Claude Desktop, OpenWebUI, etc.) at this URL

License

See LICENSE.md

Contributing

See CONTRIBUTING.md

Related MCP Connectors

Related MCP Servers