Skip to main content
Glama

Search fonts

search_fonts
Read-onlyIdempotent

Use this when the person wants fonts for something: a style or mood, a use, a font by name, or a language to cover. For example "a warm serif", "a playful display font for a poster" or "a monospace for code". query is their words, at most 200 characters. category narrows to sans-serif, serif, monospace, display or handwriting. language keeps fonts that fully cover latin, latin-extended, ukrainian, greek, vietnamese, arabic, hebrew, thai, japanese, korean, chinese-simplified or devanagari. limit is 1 to 20, 8 when left out. Not for fonts installed on the person's computer, and not for paid fonts: the catalog holds free fonts only. Answers free, openly licensed font families from the onlyfonts catalog, best match first, each with its id, name, page link, category, designer and how many styles it has.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "query": "<query>"
    },
    "name": "search_fonts"
  }
}

Input Schema

NameRequiredDescriptionDefault
limitNo
queryYestheir words: a style, a mood, a use, a font's name
categoryNo
languageNoonly fonts that fully cover this language

Output Schema

NameRequiredDescriptionDefault
resultsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Goes beyond the annotations by disclosing catalog scope (free, openly licensed only), result ordering (best match first), and the default limit of 8. Annotations already cover safety and idempotency, so the description correctly spends its words on domain behavior instead of repeating that.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads the trigger, then examples, then disambiguating constraints. It is a dense single block that reads well, though the parameter walkthrough slightly duplicates the schema's enums.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a four-parameter search tool this covers the trigger, the exclusions, every parameter's meaning, and result shape (id, name, page link, category, designer, style count) so an agent can call it and interpret the response without extra lookups.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is only 50%, and the description compensates: query is the person's own words capped at 200 characters, language keeps only fonts that fully cover the language (more specific than the schema's wording), and limit defaults to 8. The enum value lists largely restate the schema, which holds it below a 5.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource (search the onlyfonts catalog for font families) and scopes it to a free, openly licensed catalog, which separates it from get_font and get_font_css, which take an id.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives clear trigger conditions with concrete example queries plus explicit exclusions: not locally installed fonts, not paid fonts. It stops short of naming the sibling tool to use when the person already has a font id, so the alternative routing is implied rather than stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources