Skip to main content
Glama
README.md
# NutriBalance MCP Server

A free, open MCP server for nutrition calculations, meal planning, and deficiency analysis — powered by [NutriBalance](https://nutribalance.app).

Connect this server to any MCP-compatible AI assistant (Claude Desktop, Cursor, Windsurf, Copilot, etc.) to give it real nutrition intelligence.

---

## Tools

### `calculate_tdee`
Calculate TDEE, BMR, and personalised daily macro targets.

**Inputs:** weight (kg), height (cm), age, gender, activity level, goal (lose/maintain/gain)  
**Returns:** BMR, TDEE, target calories, protein/carbs/fat targets in grams

*Use when someone asks how many calories to eat, what their maintenance calories are, or how to set up macros.*

---

### `lookup_nutrition`
Look up the full nutritional profile for any food by name and serving size.

**Inputs:** food name, amount in grams (default 100g)  
**Returns:** calories, protein, carbs, fat, fibre, sodium, calcium, iron, vitamin C/D, magnesium, potassium, zinc

*Use when someone asks about macros or nutrients in a specific food.*

---

### `generate_meal_plan`
Generate a full day meal plan tailored to a calorie goal and dietary preference.

**Inputs:** target calories, goal (lose/maintain/gain), dietary preference (standard/vegetarian/vegan/keto/high_protein)  
**Returns:** 4-meal plan with foods, portion sizes, per-meal macros, and daily totals

*Use when someone asks for a meal plan or what to eat for a specific goal.*

---

### `fix_deficiency`
Get a targeted action plan to fix a specific nutritional deficiency.

**Inputs:** nutrient name, optional gender, optional age  
**Returns:** RDI, deficiency symptoms, top 6 foods with serving sizes, foods to avoid, supplement guidance, 5-step action plan

*Supported nutrients: iron, calcium, vitamin_c, vitamin_d, magnesium, potassium, zinc, sodium, fiber, protein*

---

### `nutrition_score`
Score a day's eating from 0–100 with a letter grade and improvement priorities.

**Inputs:** calories eaten/target, protein eaten/target, carbs, fat, optional fibre, optional vegetable servings, optional water intake  
**Returns:** overall score, per-category breakdown, letter grade, top 2 priority improvements

---

## Usage

### Claude Desktop (`claude_desktop_config.json`)

```json
{
  "mcpServers": {
    "nutribalance": {
      "command": "npx",
      "args": ["-y", "nutribalance-mcp"]
    }
  }
}
```

### HTTP (Vercel deployment)

```
POST https://nutribalance-mcp.vercel.app/mcp
```

Standard MCP Streamable HTTP transport — compatible with any MCP client.

---

## Local development

```bash
git clone https://github.com/CK-Boodhram/nutribalance-mcp
cd nutribalance-mcp
npm install
npm run dev
```

---

## About NutriBalance

NutriBalance is a nutrition tracking app (iOS & Android) that logs meals, tracks macros & micronutrients, and alerts you to deficiencies.

Search **"NutriBalance"** on the App Store or Google Play.

TDQS

A4.2/5.0

Scored across 5 tools

Disambiguation5/5

Each tool targets a distinct phase of nutrition management: calculating metabolic needs (calculate_tdee), retrieving food data (lookup_nutrition), creating eating plans (generate_meal_plan), addressing specific health issues (fix_deficiency), and evaluating dietary quality (nutrition_score). No functional overlap exists between tools.

Naming Consistency4/5

Four tools follow a clear verb_noun pattern (calculate_tdee, fix_deficiency, generate_meal_plan, lookup_nutrition) using snake_case. However, nutrition_score breaks the pattern by placing the noun first, creating a minor inconsistency in an otherwise uniform convention.

Tool Count5/5

Five tools is an ideal scope for a focused nutrition server, covering the essential workflows (calculation, lookup, planning, deficiency correction, and evaluation) without bloat or unnecessary fragmentation.

Completeness4/5

The surface covers the core nutrition lifecycle well: determining needs, sourcing foods, planning meals, correcting deficiencies, and scoring intake. A minor gap exists in exploratory discovery (e.g., searching for foods by nutrient criteria rather than by name), though fix_deficiency partially addresses this for specific nutrients.

Maintenance

ActivityInactive
ResponsivenessNo issues