# BMI Calculator

> Computes body mass index (BMI) from weight and height and classifies it with the WHO adult categories, plus the healthy weight range for that height.

- Calculator id: `bmi` · Category: Health (`health`) · Tool name: `calculate_bmi`
- Canonical page: https://tttkmbb.com/health/bmi · This document: https://tttkmbb.com/health/bmi.md · JSON definition: https://tttkmbb.com/health/bmi.json

## Purpose

Computes body mass index (BMI) from weight and height and classifies it with the WHO adult categories, plus the healthy weight range for that height.

**Use when:** You need an adult's BMI, its WHO/CDC weight category, or the weight range that corresponds to a normal BMI (18.5–24.9) for a given height.

**Do not use when:** The person is under 20 years old (children need age- and sex-specific BMI percentiles), or you need body-fat percentage (use body-fat) or calorie needs (use bmr / tdee).

## Input

| Parameter | Type | Unit | Required | Description |
| --- | --- | --- | --- | --- |
| `weight_kg` | number | kg | required | Body weight in kilograms. (> 0, max 700) |
| `height_cm` | number | cm | required | Standing height in centimetres. (min 50, max 300) |

## Output

| Field | Type | Unit | Description |
| --- | --- | --- | --- |
| `bmi` | number | kg/m² | Body mass index = weight / height². |
| `category` | string |  | WHO adult BMI classification. |
| `healthy_weight_min_kg` | number | kg | Weight at BMI 18.5 for this height. |
| `healthy_weight_max_kg` | number | kg | Weight at BMI 24.9 for this height. |
| `prime` | number |  | BMI divided by the upper normal limit 25; values above 1 indicate excess weight. |

## Formula

`BMI = weight_kg / (height_cm / 100)²`

BMI is a screening measure, not a diagnosis: it does not distinguish fat from muscle mass and thresholds were derived from European adult populations. WHO categories: <18.5 underweight, 18.5–24.9 normal, 25–29.9 overweight, ≥30 obesity (classes I–III at 30, 35, 40).

## Data Sources

- WHO – A healthy lifestyle: body mass index — https://www.who.int/europe/news-room/fact-sheets/item/a-healthy-lifestyle---who-recommendations (standard, retrieved 2026-09-23)
- CDC – Adult BMI categories — https://www.cdc.gov/bmi/adult-calculator/bmi-categories.html (standard, retrieved 2026-09-23)

Data freshness: `static`. Deterministic formula with fixed constants; results never go stale. Inputs supplied by the caller determine the output.

## API

- `GET https://tttkmbb.com/api/v1/calculate/bmi?weight_kg=…&height_cm=…`
- `POST https://tttkmbb.com/api/v1/calculate/bmi` with JSON body `{"inputs": {…}}`
- Response: unified envelope (`success`, `request`, `result.values`, `result.units`, `sources`, `freshness`, `timestamp`, `next_actions`, `links`); see https://tttkmbb.com/docs/response-format.md
- Schema: https://tttkmbb.com/api/v1/calculators/bmi · OpenAPI operationId `calculate_bmi` in https://tttkmbb.com/openapi.json
- Authentication: none. Rate limit: fair use, see https://tttkmbb.com/docs/rate-limits.md.

## MCP

- Server: `https://tttkmbb.com/mcp` (Streamable HTTP, JSON-RPC 2.0, no auth)
- Tool: `calculate_bmi` (dedicated) or `run_calculator` with `{"calculator_id": "bmi", "inputs": {…}}`

## Example

- 70 kg, 175 cm: inputs `{"weight_kg":70,"height_cm":175}` → `{"bmi":22.86,"category":"Normal weight","healthy_weight_min_kg":56.7,"healthy_weight_max_kg":76.3,"prime":0.914}`
- 95 kg, 180 cm: inputs `{"weight_kg":95,"height_cm":180}` → `{"bmi":29.32,"category":"Overweight (pre-obesity)"}`

```
GET https://tttkmbb.com/api/v1/calculate/bmi?weight_kg=70&height_cm=175
```

## Limitations

The person is under 20 years old (children need age- and sex-specific BMI percentiles), or you need body-fat percentage (use body-fat) or calorie needs (use bmr / tdee). BMI is a screening measure, not a diagnosis: it does not distinguish fat from muscle mass and thresholds were derived from European adult populations. WHO categories: <18.5 underweight, 18.5–24.9 normal, 25–29.9 overweight, ≥30 obesity (classes I–III at 30, 35, 40). All values are computed from the formula above; no measurement or live data is involved.

## FAQ

**Is BMI accurate for athletes?**

No. Muscular people can have a high BMI without excess fat, because BMI only uses weight and height. Use body-fat percentage for body composition.

**Which thresholds are used?**

WHO adult thresholds (18.5 / 25 / 30 / 35 / 40). Some Asian populations use lower action points (23 and 27.5) recommended by WHO for public-health action.

**Does this work for children?**

No. For ages 2–19 BMI must be interpreted with age- and sex-specific percentiles (CDC/WHO growth charts), which this calculator does not implement.

## Related

- [BMR Calculator](https://tttkmbb.com/health/bmr.md) — Estimate resting calorie needs for the same weight and height.
- [Body Fat Calculator](https://tttkmbb.com/health/body-fat.md) — BMI does not measure body composition; the US Navy method estimates body-fat percentage.
- [Ideal Weight Calculator](https://tttkmbb.com/health/ideal-weight.md) — Compare with ideal-weight formulas (Devine, Robinson, Miller, Hamwi).
