MyPlate.food API — Free Nutrition Calculator & Recipe JSON API
A free, no-key JSON API for USDA nutrition calculators (BMI, calorie & macro needs, body fat, the MyPlate food-group plan) and 1,072 MyPlate Kitchen recipes. CORS-enabled, edge-cached, every response cites its source. Built for developers and AI agents.
MyPlate.food nutrition API
A free, no-key JSON API for USDA nutrition calculators and the MyPlate Kitchen recipe collection — BMI, calorie & macro needs, body fat, the MyPlate food-group plan, and 1,072 recipes. CORS-enabled, edge-cached, and every response cites its source. Built for developers and AI agents.
No key
Free for low-volume use, CORS-enabled. Just call it.
Fast
Deterministic calculators + static recipe data, edge-cached.
Cited
Every response carries source + canonical_url.
Agent-ready
Same data as native tools via the MCP server.
Quick start
No signup. Base URL https://myplate.food/api/v1.
curl "https://myplate.food/api/v1/calculate/bmi?height_cm=180&weight_kg=80"{
"calculator": "bmi",
"inputs": { "height_cm": 180, "weight_kg": 80 },
"bmi": 24.7,
"classification": "normal",
"classification_label": "Normal weight",
"reference_system": "adult-bmi",
"source": "Body Mass Index — WHO adult cutoffs, CDC BMI-for-age percentiles under age 20, computed by myplate.food",
"canonical_url": "https://myplate.food/bmi-calculator",
"disclaimer": "Educational estimate from published equations — not medical advice."
}Try it
GET /api/v1/calculate/bmi?height_cm=180&weight_kg=80
Endpoints
Body metrics
Height, weight and tape measurements in — a value plus its healthy band out.
- GET
/api/v1/calculate/bmiBody Mass Index + weight classification from height & weight. Add age + sex for CDC BMI-for-age percentiles (under 20).
/api/v1/calculate/bmi?height_cm=180&weight_kg=80 - GET
/api/v1/calculate/body-fatBody-fat % via the U.S. Navy circumference method, with a Deurenberg BMI cross-check and ACE category.
/api/v1/calculate/body-fat?sex=male&age=30&height_cm=180&weight_kg=80&neck_cm=38&waist_cm=85 - GET
/api/v1/calculate/waist-to-heightWaist-to-height ratio and its Ashwell risk band. Pair: /calculate/waist-to-hip (WHO cutoffs).
/api/v1/calculate/waist-to-height?waist=80&height=180 - GET
/api/v1/calculate/lean-body-massLean body mass via Boer + Hume. Pair: /calculate/ffmi (fat-free mass index, Kouri normalization).
/api/v1/calculate/ffmi?weight=80&height=180&body_fat=15&sex=male
Energy & macros
The full metabolic picture, either bundled or one number at a time.
- GET
/api/v1/calculate/calorie-needsEverything-energy in one call: BMR, TDEE at every activity level, deficit tiers, macro splits, protein and ideal-weight ranges.
/api/v1/calculate/calorie-needs?age=30&sex=male&activity=active&height_cm=180&weight_kg=80 - GET
/api/v1/calculate/bmrBasal metabolic rate — Mifflin-St Jeor headline + revised Harris-Benedict.
/api/v1/calculate/bmr?age=35&sex=male&height_ft=5&height_in=10&weight_lb=170 - GET
/api/v1/calculate/tdeeTotal daily energy expenditure — BMR × activity — at your level plus a table across all four.
/api/v1/calculate/tdee?age=35&sex=male&activity=active&height_ft=5&height_in=10&weight_lb=170 - GET
/api/v1/calculate/calorie-deficitMaintenance calories and three deficit tiers with realistic weekly rates and below-BMR flags.
/api/v1/calculate/calorie-deficit?age=30&sex=female&activity=moderately-active&height_cm=165&weight_kg=70 - GET
/api/v1/calculate/macrosSplit a calorie budget into protein/carbs/fat grams (IOM AMDR presets). Pass calories directly, or a profile.
/api/v1/calculate/macros?calories=2000 - GET
/api/v1/calculate/proteinDaily protein target in grams — the RDA floor and an activity-scaled g/kg range.
/api/v1/calculate/protein?age=35&sex=male&activity=moderately-active&height_cm=178&weight_kg=77 - GET
/api/v1/calculate/ideal-weightIdeal body weight via Devine, Robinson, Miller and Hamwi, plus the healthy-BMI weight band.
/api/v1/calculate/ideal-weight?age=35&sex=male&height_ft=5&height_in=10&weight_lb=170
MyPlate plan
A daily calorie estimate translated into USDA food-group amounts.
- GET
/api/v1/calculate/myplate-planUSDA MyPlate food-group plan — calorie level, cups & ounce-equivalents per group, and BMI — from a full profile. edition=iom2005 (default) | nasem2023.
/api/v1/calculate/myplate-plan?age=30&sex=female&activity=moderately-active&height_cm=165&weight_kg=63
Guideline tools
Lifestyle calculators plus the full DRI table and the German D-A-CH energy method.
- GET
/api/v1/calculate/driThe full Dietary Reference Intakes table for a life stage — macros, vitamins and minerals with upper limits.
/api/v1/calculate/dri?age=25&sex=male&activity=moderately-active&height_cm=178&weight_kg=77 - GET
/api/v1/calculate/glp1-proteinMuscle-preservation protein target for weight loss on a GLP-1 medication, with per-meal spread and fiber AI.
/api/v1/calculate/glp1-protein?weight=80&age=40&sex=male - GET
/api/v1/calculate/dach-energyD-A-CH / DGE daily energy requirement — Müller-2004 resting energy × a PAL activity factor.
/api/v1/calculate/dach-energy?sex=male&age=40&weight_kg=71&pal=1.6 - GET
/api/v1/calculate/water-intakeDaily fluid target from weight + activity. Pair: /calculate/weight-loss-percentage, /calculate/one-rep-max.
/api/v1/calculate/water-intake?weight=70
Recipes
Search and fetch the public-domain USDA MyPlate Kitchen collection.
- GET
/api/v1/recipesSearch 1,072 USDA MyPlate Kitchen recipes by query, food group, category, max calories and min rating.
/api/v1/recipes?q=chicken&food_group=protein-foods&limit=5 - GET
/api/v1/recipes/{slug}A full recipe: ingredients, directions, the complete USDA nutrition table, and MyPlate food-group amounts.
/api/v1/recipes/2-step-chicken
OpenAPI spec
The whole API is described by an OpenAPI 3.1 document — point Postman, a code generator, or an agent framework straight at it. Served with open CORS and edge-cached.
curl "https://myplate.food/api/v1/openapi.json"Response format
Every successful response is JSON and carries citation fields: source (how the number was derived) and canonical_url (the matching myplate.food page); health calculators add a disclaimer. Inputs accept metric (height_cm, weight_kg) or imperial (height_ft+height_in, weight_lb). Responses are edge-cached; errors return { "error": "…" } with a 4xx status.
Limits & commercial use
- Free, no key, for live per-request use — 20 requests/minute per IP, and full recipe fetches (API and MCP combined) cap at 100/day per IP. Over a limit returns HTTP 429 with a
Retry-Afterheader. - Building something high-volume or commercial? Get in touch or email hello@myplate.food — we offer dedicated access and licensing for products, classrooms, clinics and research.
- Educational estimates, not medical advice. The calculators implement published USDA/IOM/clinical equations. Independent; not affiliated with the USDA.
MCP tools
The same calculators and recipe search are exposed to AI agents as Model Context Protocol tools at https://mcp.myplate.food/mcp. Every tool is read-only and calls the same endpoints, so the numbers match.
calculate_bmiBMI + classification (WHO adult / CDC youth percentiles).calculate_body_fatBody-fat % via the U.S. Navy circumference method.calculate_body_metricQuick body metrics: waist-to-height/hip, lean mass, FFMI, water, 1RM, weight-loss %.calculate_myplate_planUSDA MyPlate food-group plan at your calorie level.calculate_calorie_needsBMR, TDEE, deficit tiers, macros, protein and ideal weight in one call.calculate_bmrBasal metabolic rate (Mifflin-St Jeor + Harris-Benedict).calculate_tdeeTotal daily energy expenditure at your activity level, plus a table across all four.calculate_calorie_deficitMaintenance calories and three weight-loss deficit tiers with weekly rates.calculate_macrosMacronutrient split from a calorie budget or a profile.calculate_protein_targetDaily protein target in grams by weight + activity.calculate_ideal_weightIdeal weight (Devine/Robinson/Miller/Hamwi) + healthy-BMI band.calculate_glp1_proteinGLP-1 muscle-preservation protein target + fiber AI.calculate_dach_energyGerman D-A-CH / DGE energy requirement (Müller-2004 × PAL).calculate_driThe full Dietary Reference Intakes nutrient table.search_recipesSearch the MyPlate Kitchen recipe collection.get_recipeFetch one full recipe by slug.
Building an AI agent? Use the same data as native tools via our MCP server.
MyPlate.food MCP serverAPI FAQ
Is the MyPlate.food API free?
Yes — free for live, per-request use with no API key and open CORS. It isn't a bulk-download channel: replicating the recipe catalog into your own database or storage requires a license agreement. For higher limits or a dedicated tier, contact us.
Do I need an API key?
No. Just call the endpoints. There's a per-IP rate limit (20 requests/minute) to keep the free tier fair, and full recipe fetches — API and MCP combined — cap at 100/day per IP: plenty for live use, not enough to mirror the catalog.
Can I use it commercially?
Yes, for live per-request calls inside your product. Bulk export or mirroring of the recipe catalog isn't part of the free tier — that requires a license agreement. For products, classrooms, clinics, research, higher limits, or licensed data feeds, get in touch via /for-professionals.
Is this the official USDA API?
No. MyPlate.food is independent and not affiliated with the USDA. The calculators implement published USDA/IOM equations and the recipe data preserves the public-domain USDA MyPlate Kitchen library; each response cites its source.
Is there an MCP server?
Yes — the same calculators and recipe search are available to AI agents as Model Context Protocol tools. See the MCP server page.