# Sleep Calculator — REST API endpoint `sleep-calculator`

Calculate the best bedtimes for a wake-up time, or the best wake-up times for a bedtime, based on 90-minute sleep cycles plus 15 minutes to fall asleep. Returns 4 options (3-7 cycles) with duration and quality (optimal/good/fair).

- Category: calculators
- MCP server: https://mcp.findutils.com/ (Streamable HTTP, no API keys, 120 req/min per IP)
- REST endpoint: POST https://api.findutils.com/api/tools/sleep-calculator/execute (no API keys, 60 req/min per IP)
- Reference page: https://findutils.com/api/sleep-calculator/
- Same tool on the other surface: https://findutils.com/mcp/sleep-calculator/

## Call the endpoint (verified example)

```bash
curl -X POST https://api.findutils.com/api/tools/sleep-calculator/execute \
  -H "Content-Type: application/json" \
  -d '{
    "mode": "wake",
    "time": "07:00"
  }'

# Parameter schema
curl https://api.findutils.com/api/tools/sleep-calculator
```

## Input schema

| Argument | Type | Required | Description |
|---|---|---|---|
| `mode` | string (wake \| sleep \| now) | no | "wake": you give the wake-up time and get bedtimes (6 down to 3 cycles). "sleep": you give the bedtime and get wake-up times (4 to 7 cycles). "now": like "sleep" with the current time (UTC) when time is omitted. Default: `"wake"`. |
| `time` | string | no | Time of day as HH:MM (24-hour). Required for "wake" and "sleep". Optional for "now". |

Example arguments (verified):

```json
{
  "mode": "wake",
  "time": "07:00"
}
```

OpenAPI 3.1 spec: https://findutils.com/api/openapi.json · Interactive docs: https://findutils.com/api/docs/

## Also an MCP tool

```bash
claude mcp add findutils --transport http https://mcp.findutils.com/
```

Then ask the client to call `findutils:sleep_calculator`. Full MCP reference: https://findutils.com/mcp/sleep-calculator/

---
Full catalog: GET https://api.findutils.com/api/tools · https://findutils.com/api/ · https://findutils.com/llms.txt
