Find, price and license fonts for agents; pay per licence in USDC with x402 on Base.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Buy a font licence. Call without payment to get x402 payment requirements (USDC), then again with the signed payment. Spends money: confirm price and licensee with the user first.
The person or organisation the licence is for. Never the agent itself.
Shorthand for the first dimension of the use (desktop: computers, web: visitors/month, app: apps, ebook: titles, server: cores)
One style. Or use font_ids or bundle_id.
Licence dimensions, e.g. {"visitors": 100000, "domains": 2} or {"cores": 8, "years": 2}. get_family lists them per use.
Base64 x402 payment payload (X-PAYMENT). Omit on the first call to get the payment requirements.
Several styles of the same family, priced per style
A family bundle from get_family, e.g. <family_id>.family
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http fontmarket https://agentfonts.com/mcp
Buy a font licence. Call without payment to get x402 payment requirements (USDC), then again with the signed payment. Spends money: confirm price and licensee with the user first.
| Argument | Type | Description |
|---|---|---|
| use* | string | |
| tier | integer | Shorthand for the first dimension of the use (desktop: computers, web: visitors/month, app: apps, ebook: titles, server: cores) |
| font_id | string | One style. Or use font_ids or bundle_id. |
| options | object | Licence dimensions, e.g. {"visitors": 100000, "domains": 2} or {"cores": 8, "years": 2}. get_family lists them per use. |
| payment | string | Base64 x402 payment payload (X-PAYMENT). Omit on the first call to get the payment requirements. |
| font_ids | array | Several styles of the same family, priced per style |
| licensee* | object | The person or organisation the licence is for. Never the agent itself. |
| bundle_id | string | A family bundle from get_family, e.g. <family_id>.family |
{
"type": "object",
"required": [
"use",
"licensee"
],
"properties": {
"use": {
"enum": [
"desktop",
"web",
"app",
"ebook",
"server"
],
"type": "string"
},
"tier": {
"type": "integer",
"description": "Shorthand for the first dimension of the use (desktop: computers, web: visitors/month, app: apps, ebook: titles, server: cores)"
},
"font_id": {
"type": "string",
"description": "One style. Or use font_ids or bundle_id."
},
"options": {
"type": "object",
"description": "Licence dimensions, e.g. {\"visitors\": 100000, \"domains\": 2} or {\"cores\": 8, \"years\": 2}. get_family lists them per use.",
"additionalProperties": {
"type": "integer"
}
},
"payment": {
"type": "string",
"description": "Base64 x402 payment payload (X-PAYMENT). Omit on the first call to get the payment requirements."
},
"font_ids": {
"type": "array",
"items": {
"type": "string"
},
"description": "Several styles of the same family, priced per style"
},
"licensee": {
"type": "object",
"required": [
"name",
"email"
],
"properties": {
"name": {
"type": "string"
},
"email": {
"type": "string"
},
"org_id": {
"type": "string",
"description": "VAT or company number"
},
"country": {
"type": "string",
"description": "ISO 3166-1 alpha-2"
}
},
"description": "The person or organisation the licence is for. Never the agent itself."
},
"bundle_id": {
"type": "string",
"description": "A family bundle from get_family, e.g. <family_id>.family"
}
}
}A font family: every style with its base price, bundle offers (whole family, variable fonts, collection) and the foundry's licence types with their dimensions and price tiers. Free.
| Argument | Type | Description |
|---|---|---|
| id* | string | A family id, or the id of any font in the family |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "A family id, or the id of any font in the family"
}
}
}Details for one font: styles, scripts, metrics, missing glyphs for a sample text and a specimen URL. Free.
| Argument | Type | Description |
|---|---|---|
| sample | string | Text to check glyph coverage for, e.g. the real headline |
| font_id* | string |
{
"type": "object",
"required": [
"font_id"
],
"properties": {
"sample": {
"type": "string",
"description": "Text to check glyph coverage for, e.g. the real headline"
},
"font_id": {
"type": "string"
}
}
}Price a licence (USD and USDC) and return machine-readable licence terms. Free, nothing is reserved.
| Argument | Type | Description |
|---|---|---|
| use* | string | |
| tier | integer | Shorthand for the first dimension of the use (desktop: computers, web: visitors/month, app: apps, ebook: titles, server: cores) |
| font_id | string | One style. Or use font_ids or bundle_id. |
| options | object | Licence dimensions, e.g. {"visitors": 100000, "domains": 2} or {"cores": 8, "years": 2}. get_family lists them per use. |
| font_ids | array | Several styles of the same family, priced per style |
| bundle_id | string | A family bundle from get_family, e.g. <family_id>.family |
{
"type": "object",
"required": [
"use"
],
"properties": {
"use": {
"enum": [
"desktop",
"web",
"app",
"ebook",
"server"
],
"type": "string"
},
"tier": {
"type": "integer",
"description": "Shorthand for the first dimension of the use (desktop: computers, web: visitors/month, app: apps, ebook: titles, server: cores)"
},
"font_id": {
"type": "string",
"description": "One style. Or use font_ids or bundle_id."
},
"options": {
"type": "object",
"description": "Licence dimensions, e.g. {\"visitors\": 100000, \"domains\": 2} or {\"cores\": 8, \"years\": 2}. get_family lists them per use.",
"additionalProperties": {
"type": "integer"
}
},
"font_ids": {
"type": "array",
"items": {
"type": "string"
},
"description": "Several styles of the same family, priced per style"
},
"bundle_id": {
"type": "string",
"description": "A family bundle from get_family, e.g. <family_id>.family"
}
}
}Search the font catalogue by style, tags, required glyphs and price. Free.
| Argument | Type | Description |
|---|---|---|
| use | string | |
| tags | array | All must match: headline, body, condensed, newspaper, ui, print… |
| tier | integer | first licence dimension: desktop computers, web visitors/month, app apps, ebook titles, server cores |
| limit | integer | |
| query | string | Free text over family, classification and tags, e.g. 'condensed headline sans' |
| glyphs | string | Characters the font must support, e.g. 'åäöÅÄÖ' or a sample headline |
| script | string | latin, latin-ext, cyrillic, greek |
| max_price_usd | number | Only fonts at or below this price for use/tier |
{
"type": "object",
"properties": {
"use": {
"enum": [
"desktop",
"web",
"app",
"ebook",
"server"
],
"type": "string"
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"description": "All must match: headline, body, condensed, newspaper, ui, print…"
},
"tier": {
"type": "integer",
"description": "first licence dimension: desktop computers, web visitors/month, app apps, ebook titles, server cores"
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1
},
"query": {
"type": "string",
"description": "Free text over family, classification and tags, e.g. 'condensed headline sans'"
},
"glyphs": {
"type": "string",
"description": "Characters the font must support, e.g. 'åäöÅÄÖ' or a sample headline"
},
"script": {
"type": "string",
"description": "latin, latin-ext, cyrillic, greek"
},
"max_price_usd": {
"type": "number",
"description": "Only fonts at or below this price for use/tier"
}
}
}We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 12, 2026.