nutrition

Nutrition for 1,174 plant foods from 30 national tables, plus GB/EU & US claim checking

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
97%
Naming quality
90%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~2,367Tokens (tool definitions)
~1.5 KBTypical response size
Moderate attention impact (1.85% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "nutrition": {
      "url": "https://mcp.heathy.org/mcp"
    }
  }
}

Remote endpoints

https://mcp.heathy.org/mcpstreamable-http

What it can do

Tool inventory

Tools (8)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢lookup_food(food, nutrients)

Get the full per-100 g nutrient profile of a whole plant food, reconciled across up to 31 national food-composition tables (USDA, UK CoFID, IFCT India, Ciqual, BLS, Fineli, and more). Unlike a single-source table, every value reports how many sources contributed, which ones, and the per-source spread — so the number can be cited rather than asserted. Covers Indian foods from IFCT 2017, which is not available as an API elsewhere. Accepts a slug ("bitter-gourd") or a plain or regional name ("karela", "chickoo").

Input Schema

{
  "type": "object",
  "properties": {
    "food": {
      "type": "string",
      "description": "Food slug, common name, or regional alias."
    },
    "nutrients": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Optional nutrient slugs or names to return (e.g. [\"iron\",\"vitamin-c\"]). Omit for the full profile of 131 nutrients (plus 67 research-tier)."
    }
  },
  "required": [
    "food"
  ],
  "additionalProperties": false
}
🟢search_foods(query, kind, limit)

Find the Heathy slug for a food or Ayurvedic herb by name, including regional and non-English aliases (Hindi, Sanskrit, botanical names). Call this first when you have a plain-English or local name and need the slug for lookup_food or herb_monograph. Returns ranked candidates rather than guessing a single answer.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Name, partial name, or alias — e.g. \"haldi\", \"bitter gou\"."
    },
    "kind": {
      "type": "string",
      "enum": [
        "food",
        "herb",
        "any"
      ],
      "description": "Restrict to foods or Ayurvedic herbs. Default \"any\"."
    },
    "limit": {
      "type": "integer",
      "description": "Max results, 1–50. Default 10."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
🟢nutrient_ranking(nutrient, limit, category, min_sources)

Rank whole plant foods by how much of a nutrient they provide per 100 g — the "highest in vitamin C / iron / calcium" question, answered from reconciled multi-source data rather than one national table. Optionally filter by food category. Each result reports how many sources backed the value, so thinly-sourced outliers can be spotted or excluded via min_sources.

Input Schema

{
  "type": "object",
  "properties": {
    "nutrient": {
      "type": "string",
      "description": "Nutrient slug or name — e.g. \"iron\", \"vitamin-c\", \"folate\"."
    },
    "limit": {
      "type": "integer",
      "description": "Max results, 1–100. Default 20."
    },
    "category": {
      "type": "string",
      "description": "Optional substring filter on the food category — e.g. \"fruit\", \"legume\", \"millet\"."
    },
    "min_sources": {
      "type": "integer",
      "description": "Only include values backed by at least this many datasets (1–32). Default 1; use 2+ to drop single-source values."
    }
  },
  "required": [
    "nutrient"
  ],
  "additionalProperties": false
}
🟢herb_monograph(herb)

Get a sourced monograph for an Ayurvedic herb, with traditional use and modern research kept strictly separate and never blended: `traditional` records what the tradition claims, `modern` records what research shows with an evidence tier (1 = strongest). Every response includes a mandatory `safety` block — cautions, pregnancy guidance and drug interactions — which must be reproduced alongside any information taken from this tool. Accepts English, Sanskrit, Hindi or botanical names ("turmeric", "haldi", "Curcuma longa").

Input Schema

{
  "type": "object",
  "properties": {
    "herb": {
      "type": "string",
      "description": "Herb slug or name — English, Sanskrit, Hindi, or botanical."
    }
  },
  "required": [
    "herb"
  ],
  "additionalProperties": false
}
🟢search_recipes(query, goal, category, ingredient, max_time, ...)

Find raw / no-cook vegan recipes on Heathy by free text, health goal, category, ingredient, time or allergen. Every recipe is original and its per-serving nutrition is computed from the same food rows lookup_food returns, so figures are checkable rather than asserted. Returns ranked summaries — call get_recipe with a slug for ingredients, method and full nutrition. For "what should I eat for X" questions, prefer health_topic first: it says what the evidence actually supports for a goal or a named condition.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Free text over name, description and tags — e.g. \"dragon fruit\", \"breakfast\"."
    },
    "goal": {
      "type": "string",
      "enum": [
        "immune",
        "bone",
        "energy",
        "cognitive",
        "strength",
        "heart",
        "gut",
        "eye",
        "hair",
        "skin",
        "nerve",
        "hormone",
        "glucose"
      ],
      "description": "Restrict to recipes carrying this health goal."
    },
    "category": {
      "type": "string",
      "enum": [
        "smoothies",
        "salads",
        "bowls",
        "wraps",
        "dips",
        "snacks",
        "soups",
        "desserts",
        "chutneys",
        "plant-milks",
        "sauces",
        "ferments",
        "crackers",
        "nut-butters"
      ],
      "description": "Restrict to one recipe category."
    },
    "ingredient": {
      "type": "string",
      "description": "Food slug or name that must appear in the ingredients — e.g. \"pitaya-raw\"."
    },
    "max_time": {
      "type": "integer",
      "description": "Maximum total time in minutes."
    },
    "exclude_allergens": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Drop recipes containing any of these allergens — e.g. [\"tree-nuts\",\"sesame\"]."
    },
    "limit": {
      "type": "integer",
      "description": "Max results, 1–50. Default 10."
    }
  },
  "additionalProperties": false
}
🟢get_recipe(recipe)

Get one Heathy recipe in full: ingredients with their food slugs and gram weights, method, per-serving nutrition, allergens and carbon footprint. All recipes are original, strictly raw / no-cook and vegan. The nutrition is computed from the ingredient food rows rather than entered by hand, so each figure traces back to the national datasets lookup_food cites. Accepts a slug or the recipe name; use search_recipes to find one.

Input Schema

{
  "type": "object",
  "properties": {
    "recipe": {
      "type": "string",
      "description": "Recipe slug or name — e.g. \"dragon-fruit-coconut-breakfast-bowl\"."
    }
  },
  "required": [
    "recipe"
  ],
  "additionalProperties": false
}
🟢health_topic(topic, include_recipes)

What to eat for a health goal — the nutrients involved, why each one, and which raw recipes carry them. Call this before answering "what should I eat for X". Accepts a goal ("gut health", "bone-health") or a named condition ("PCOS", "ADHD", "anaemia"): condition names resolve even though topic titles are physiological. Crucially, topics that people reach for with a diagnosis carry an explicit note saying what the evidence does and does NOT support, at its own rating — for ADHD and autism that note says diet is not a treatment, per NICE. Reproduce those notes rather than summarising them away. Omit the argument to list every topic.

Input Schema

{
  "type": "object",
  "properties": {
    "topic": {
      "type": "string",
      "description": "Goal slug or title, or a condition name — e.g. \"digestion-gut\", \"PCOS\", \"anaemia\". Omit to list all topics."
    },
    "include_recipes": {
      "type": "boolean",
      "description": "Include raw recipes carrying this goal. Default true."
    }
  },
  "additionalProperties": false
}
🟢check_claim(food, nutrient, market, only_permitted, preparation)

For a RAW or minimally-processed whole food, report which nutrition claims ("source of iron", "high in vitamin C", "high fibre") the published data supports under GB/EU rules (15%/30% of NRV per 100 g, Reg. 1924/2006) and US rules (10-19%/20% of DV per RACC, 21 CFR 101.54) — and, uniquely, flag where that answer DEPENDS ON WHICH national food-composition table was used, since the 31 tables reconciled here disagree on the same food by a median of 1.96x. Applies to claims wherever they appear, including websites and advertising (Reg. 1924/2006 Art. 1(2)), not only packaging. NOT valid for cooked or manufactured products — their composition depends on recipe and processing. Screening only: under Art. 5(1)(b)(i) the nutrient must be in THE FINAL PRODUCT, so a supported claim still needs an analysis of the producer's own produce. Never treat this as a way to pick a source that qualifies.

Input Schema

{
  "type": "object",
  "properties": {
    "food": {
      "type": "string",
      "description": "Food slug or name — e.g. \"banana\", \"brazil-nuts\"."
    },
    "nutrient": {
      "type": "string",
      "description": "Optional: check one nutrient only, e.g. \"potassium\"."
    },
    "market": {
      "type": "string",
      "enum": [
        "uk",
        "us",
        "both"
      ],
      "description": "Which rules to apply. Default \"both\" — the divergence is usually the point."
    },
    "only_permitted": {
      "type": "boolean",
      "description": "Optional: return only claims the data supports, dropping the ones that fail."
    },
    "preparation": {
      "type": "string",
      "enum": [
        "raw"
      ],
      "description": "Must be \"raw\" (the default). This tool holds raw and minimally-processed commodity data only and REFUSES anything else, because cooking changes composition in both directions — vitamin C and folate are destroyed while minerals concentrate as water is lost. If the food you are asking about has been cooked, juiced, or made into a product, do not call this tool: its answer would not describe your product, and a nutrition claim is a legal statement about the product actually sold."
    }
  },
  "required": [
    "food"
  ],
  "additionalProperties": false
}

Recommended Prompts

search_research
Search for information about [topic] using nutrition
Expected tools: search_foods
find_specific
Find [specific item] using nutrition
Expected tools: search_foods
retrieve_data
Get details about [item] from nutrition
Expected tools: get_recipe
fetch_info
Fetch [information type] using nutrition
Expected tools: get_recipe
research_workflow
Search for [topic], then get detailed information about the top results using nutrition
Expected tools: search_foodsget_recipe

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded8 tools
verifiedversion not recorded8 tools