API & MCP
Everything a person can do on OpenType Feature Playground, a program or AI agent can do with the same inputs and get the identical result.
HTTP API
POST https://luminafontfeatures.usefulweb.site/api/v1/calculate– run OpenType Feature PlaygroundGET https://luminafontfeatures.usefulweb.site/api/v1/tool– inputs, output schema, examples- OpenAPI 3.1: /openapi.json · /openapi.yaml
- Errors:
application/problem+json;422includes per-fielderrors.
OpenType Feature Playground
Upload a TTF, OTF or WOFF font to list its scripts, languages and OpenType features (ligatures, small caps, figures, stylistic sets, kerning …) and its variation axes. Switch features on or off and set axis values: the text is shaped with the font's own GSUB and GPOS lookups and drawn from its outlines, next to the browser defaults, with the features that change your text marked.
| Field | Type | Default | Description |
|---|---|---|---|
font (required) | file | — | Font (TTF, OTF or WOFF; up to 10 MB; uploaded to the server) |
text | text | "Office 1/2 AVATAR" | Sample text |
features | text | — | Feature switches (e.g. smcp, onum, -liga, ss01) |
axes | text | — | Axis values for variable fonts (e.g. wght=650, wdth=90) |
script | text | "auto" | OpenType script tag (auto = from the text) |
lang | text | — | OpenType language system tag (optional, e.g. DEU, TRK) |
Every result contains
inputs (normalised, defaults applied), summary, result (validated against the published schema), units, assumptions, sources, warnings, computedAt and links.
MCP (Model Context Protocol)
- Streamable HTTP endpoint:
https://luminafontfeatures.usefulweb.site/mcp– protocol revisions 2026-07-28 (stateless) and 2025-11-25 / 2025-06-18 / 2025-03-26 (initialize handshake). - Tools:
lumina_font_features - Local stdio connector:
node src/mcp-stdio.ts --tool=lumina-font-features
{
"mcpServers": {
"lumina-font-features": { "type": "http", "url": "https://luminafontfeatures.usefulweb.site/mcp" }
}
}