List fonts
list_fontsList available font families across every source the editor knows about (Google + Bunny + Fontshare + Fontsource + Velvetyne) PLUS the project's user-uploaded custom_fonts (surfaced as source: "custom"). Use this to discover families before set_layer_text / add_text_layer when you don't know what to pick. Returns { fonts: [{family, source, weights, italics}], total, returned, sources }. Filter via q (case-insensitive substring on family), source, and/or script (only families that draw that writing system, e.g. "cyrillic", "arabic", "japanese": use it when the text is not in Latin letters); cap with limit (default 50, max 1000). Picking any returned family in font_family Just Works — the editor's loader dispatches to the right CSS/FontFace endpoint by source.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Case-insensitive substring filter on family name. Omit to list everything. | |
| limit | No | Max entries to return (default 50, max 1000). | |
| script | No | Only families whose catalogue lists this writing system. A text layer in a font without it still renders: those letters paint in a Noto fallback (fallback_fonts in the text report). Custom, Fontshare and Velvetyne faces publish no coverage and are left out. | |
| source | No | Restrict to one source. Omit to span every source. "custom" returns only the project's uploaded faces. | |
| projectId | Yes | Opaque project id (a v4 UUID, from list_projects/create_project). Selects which existing project this call mutates. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ok | Yes | Whether the call succeeded. | |
| data | No | The payload, shaped by the tool. | |
| note | No | What to do next when not ready. | |
| error | No | Why it failed. | |
| status | No | For cache-backed readers: whether the answer was ready. | |
| editorUrl | No | Opens this project in the editor. |