Skip to content

FFMI

Tool id: ffmi · Methods: standard

Compute the Fat-Free Mass Index (FFMI) and its height-adjusted form from weight and body fat percentage (or lean mass directly), and flag whether the result exceeds the ~25 natural ceiling (Kouri et al. 1995).

FieldTypeNotes
height{ value, unit }cm or in — required
weight{ value, unit }kg or lb — required
body_fatnumber | nullbody-fat %, 2–70; required if lean_mass is absent
lean_mass{ value, unit } | nullfat-free mass — alternative to body_fat; if both are given, lean_mass wins
methodsstring[] | "all"defaults to "all"
  • standard — FFMI = fat-free mass (kg) ÷ height (m)². The adjusted value normalizes to a 1.8 m reference: FFMI + 6.1 × (1.8 − height_m) (Kouri et al. 1995). above_natural_limit is true when the adjusted FFMI exceeds 25 (the ceiling is defined on the height-normalized value).

The ~25 ceiling comes from a male reference population; the practical natural limit for women is lower (~22). The flag uses the single 25 threshold — read it with that in mind.

import { REGISTRY } from "@almostjacked/fitness-tools";
const ffmi = REGISTRY.get("ffmi")!;
ffmi.compute(ffmi.input.parse({
height: { value: 170, unit: "cm" },
weight: { value: 80, unit: "kg" },
body_fat: 12,
}));
{
results: [
{
method: "standard",
value: 24.36,
unit: "kg/m²",
detail: {
ffm_kg: 70.4,
ffmi_adjusted: 24.97,
above_natural_limit: false,
},
},
],
consensus: null,
}

Full docs for the other protocols: HTTP API · MCP server.