heartbeats-since-birth
Estimate the total number of heartbeats a person has had since birth, given their date of birth and a reference 'now' timestamp. Uses an average resting heart rate of 80 bpm (American Heart Association adult midpoint) by default; the caller can override. Returns heartbeats, breaths, minutes alive, and days alive.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| nowMs | Yes | The reference 'now' instant, as Unix epoch milliseconds. The widget passes Date.now(); MCP callers can pin a value for deterministic output. | |
| birthMs | Yes | Date of birth as a Unix epoch in milliseconds (the value returned by Date.getTime()). Must be on or before nowMs. | |
| restingBpm | No | Average resting heart rate in beats per minute. Defaults to 80, the midpoint of the adult resting range (60–100 bpm) per the American Heart Association. | |
| breathsPerMinute | No | Average breath rate per minute. Defaults to 16, the midpoint of the adult resting range (12–20) per the Mayo Clinic. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| breaths | Yes | Estimated total breaths since birth. | |
| daysAlive | Yes | Whole days elapsed (minutes ÷ 1440, floored). | |
| heartbeats | Yes | Estimated total heartbeats since birth. | |
| restingBpm | Yes | The bpm value used for the calculation. | |
| minutesAlive | Yes | Whole minutes elapsed between birthMs and nowMs. | |
| breathsPerMinute | Yes | The breaths-per-minute value used for the calculation. |