# Type Scale Generator — REST API endpoint `type-scale-generator`

Generate a modular type scale as CSS custom properties. Each step multiplies the one below it by a ratio, so sizes stay in proportion instead of being picked by hand. Ratios are the classical musical intervals from minor-second (1.067, tight) to golden-ratio (1.618, dramatic), or supply custom_ratio. Sizes are emitted in rem against a root size so they respect the reader browser setting, or in px if you ask. Returns the full :root block and every step with its pixel equivalent.

- Category: generators
- 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/type-scale-generator/execute (no API keys, 60 req/min per IP)
- Reference page: https://findutils.com/api/type-scale-generator/
- Same tool on the other surface: https://findutils.com/mcp/type-scale-generator/

## Call the endpoint (verified example)

```bash
curl -X POST https://api.findutils.com/api/tools/type-scale-generator/execute \
  -H "Content-Type: application/json" \
  -d '{
    "base": 16,
    "ratio": "major-third"
  }'

# Parameter schema
curl https://api.findutils.com/api/tools/type-scale-generator
```

## Input schema

| Argument | Type | Required | Description |
|---|---|---|---|
| `base` | number | no | Base body size in px (8 to 48). Default 16. Default: `16`. |
| `ratio` | string (minor-second \| major-second \| minor-third \| major-third \| perfect-fourth \| augmented-fourth \| perfect-fifth \| golden-ratio) | no | Named ratio. Default major-third (1.25). Default: `"major-third"`. |
| `custom_ratio` | number | no | Own ratio between 1.01 and 3. Overrides ratio. |
| `steps_up` | integer | no | How many sizes above the base (1 to 9). Default 5. Default: `5`. |
| `steps_down` | integer | no | How many sizes below the base (0 to 5). Default 2. Default: `2`. |
| `unit` | string (rem \| px) | no | rem keeps the scale relative to the reader root size; px is fixed. Default rem. Default: `"rem"`. |
| `root` | number | no | Root font size in px used to convert to rem (8 to 32). Default 16. Default: `16`. |

Example arguments (verified):

```json
{
  "base": 16,
  "ratio": "major-third"
}
```

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:type_scale_generator`. Full MCP reference: https://findutils.com/mcp/type-scale-generator/

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