Elysia Tools Docs
EN
Language
ZHESPTRUFRDEEN
Back to site
Browse tools

Design

Web Font Pairing Lab

Preview a heading + body Google Fonts pairing with weight and line-height controls, and copy a ready-to-paste CSS @import + variables snippet. Curated 22-face registry plus 7 proven pairing presets.

html· HTML resultOpen tool

Quick start

Call this tool from your code in three languages.

cURL
curl -X POST 'https://api.elysiatools.com/en/api/tools/webfont-pairing-lab' \
  -H 'Content-Type: application/json' \
  -d '{"headingFont":"Playfair Display","headingWeight":700,"bodyFont":"Inter","bodyWeight":400,"bodySize":16,"lineHeight":1.6,"headSample":"Custom heading text (optional)","bodySample":"Custom body text (optional)"}'

API reference

Send a POST request with your inputs as JSON. File parameters require a separate upload first.

Endpoint

HTTP
POST https://api.elysiatools.com/en/api/tools/webfont-pairing-lab

Parameters

NameTypeRequiredDescription
headingFontselectNoThe display / heading typeface.
headingWeightnumberNoSnaps to the nearest available weight for the chosen font.
bodyFontselectNoThe body / paragraph typeface.
bodyWeightnumberNoSnaps to the nearest available weight for the chosen font.
bodySizenumberNo

MCP integration

Add this tool to your Model Context Protocol server so AI agents can list and call it.

Server configuration

Add this block to your MCP client configuration:

mcp.json
{
  "mcpServers": {
    "elysiatools-webfont-pairing-lab": {
      "name": "webfont-pairing-lab",
      "description": "Preview a heading + body Google Fonts pairing with weight and line-height controls, and copy a ready-to-paste CSS @import + variables snippet. Curated 22-face registry plus 7 proven pairing presets.",
      "baseUrl": "https://api.elysiatools.com/mcp/sse?toolId=webfont-pairing-lab",
      "command": "",
      "args": [],
      "env": {},
      "isActive": true,
      "type": "sse"
    }
  }
}

List available tools

After connecting to the SSE endpoint, list the exposed tools:

tools/list
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/list"
}

Call this tool

Invoke the tool by its id, passing arguments built from its parameters:

tools/call
{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "tools/call",
  "params": {
    "name": "webfont-pairing-lab",
    "arguments": {
  "headingFont": "Playfair Display",
  "headingWeight": 700,
  "bodyFont": "Inter",
  "bodyWeight": 400,
  "bodySize": 16,
  "lineHeight": 1.6,
  "headSample": "Custom heading text (optional)",
  "bodySample": "Custom body text (optional)"
}
  }
}
Chain multiple tools in one session with a comma-separated toolId list, e.g. /mcp/sse?toolId=png-to-webp,jpg-to-webp,gif-to-webp (max 20).
Browse toolsOpen tool

© 2026 Elysia Tools. Developer documentation.

Back to siteBrowse tools
Body paragraph font-size in pixels.
lineHeightnumberNoUnitless line-height for body text. 1.4–1.7 is the readable range.
headSampletextNoOptional custom heading text. Defaults to a neutral sample.
bodySampletextareaNoOptional custom body paragraph(s). Defaults to a neutral sample.

Response format

HTML result

JSON
{
  "result": "<div>Processed HTML content</div>",
  "error": "Error message (optional)",
  "message": "Notification message (optional)",
  "metadata": {
    "key": "value"
  }
}

Questions or issues? Contact [email protected]