live · Productivity & Work · JSON · API for agents
Render raw markdown into FlatWrite-styled HTML <head> and <body> fragments, with optional typography and page-layout controls. Returns { head, body } — head is CSS to inject, body is the document fragment.
{
"name": "render_markdown",
"kind": "action",
"impl": "imperative",
"description": "Render raw markdown into FlatWrite-styled HTML <head> and <body> fragments, with optional typography and page-layout controls. Returns { head, body } — head is CSS to inject, body is the document fragment.",
"inputSchema": {
"type": "object",
"properties": {
"markdown": {
"type": "string",
"description": "Raw markdown content to render"
},
"framework": {
"type": "string",
"enum": [
"spectre",
"poshui",
"pico",
"milligram",
"chota"
],
"description": "Optional UI framework applied when surfaceMode=\"app\"."
},
"fontFamily": {
"type": "string",
"enum": [
"Inter",
"JetBrains Mono",
"Lato",
"Lora",
"Merriweather",
"Playfair Display",
"Comfortaa",
"Unbounded"
],
"description": "Optional font family — must be a bundled family. Defaults to Inter."
},
"fontSize": {
"oneOf": [
{
"type": "string",
"description": "Scale token (e.g. \"-1\", \"0\", \"1\")"
},
{
"type": "number",
"description": "Absolute pixel value (8..72)"
}
],
"description": "Optional font size",
"minimum": 8,
"maximum": 72
},
"fontWeight": {
"oneOf": [
{
"type": "string",
"description": "Scale token (e.g. \"-1\", \"0\")"
},
{
"type": "number",
"description": "Absolute weight (100..900, multiples of 100)"
}
],
"description": "Optional font weight",
"minimum": 100,
"maximum": 900
},
"lineHeight": {
"oneOf": [
{
"type": "string",
"description": "Scale token (e.g. \"-1\", \"0\", \"1\")"
},
{
"type": "number",
"description": "Absolute multiplier (0.8..4.0)"
}
],
"description": "Optional line height",
"minimum": 0.8,
"maximum": 4
},
"uiZoom": {
"type": "number",
"description": "Optional UI zoom level (1.0 = default; >1 zooms in, <1 zooms out)",
"minimum": 0.25,
"maximum": 4
},
"pageSize": {
"type": "string",
"enum": [
"A0",
"A1",
"A2",
"A3",
"A4",
"A5",
"Letter",
"Legal"
],
"description": "Optional page size for paged output."
},
"orientation": {
"type": "string",
"enum": [
"portrait",
"landscape"
],
"description": "Optional page orientation"
},
"marginsLR": {
"type": "string",
"enum": [
"narrow",
"normal",
"wide"
],
"description": "Optional left/right page margin preset."
},
"marginsTB": {
"type": "string",
"enum": [
"narrow",
"normal",
"wide"
],
"description": "Optional top/bottom page margin preset."
},
"footer": {
"type": "boolean",
"description": "Optional: include a page-number footer in paged output"
},
"width": {
"type": "number",
"description": "Optional content width in pixels (400..1400)",
"minimum": 400,
"maximum": 1400
},
"docEngine": {
"type": "string",
"enum": [
"none",
"pagedjs",
"vivliostyle"
],
"description": "Optional document engine — \"none\" emits plain CSS; \"pagedjs\"/\"vivliostyle\" wrap the output in @page rules."
},
"surfaceMode": {
"type": "string",
"enum": [
"doc",
"app"
],
"description": "Optional surface mode — \"doc\" or \"app\". \"app\" unlocks the framework picker."
},
"theme": {
"type": "string",
"description": "Optional theme identifier (e.g. \"light\" or \"dark\") rendered as body[data-theme=\"...\"]."
}
},
"required": [
"markdown"
]
}
}Fetch markdown from an allowlisted URL (raw.githubusercontent.com, raw.gitlab.com, bitbucket.org) and render it into FlatWrite-styled HTML <head> and <body> fragments, with the same optional typography and page-layout controls as render_markdown. Returns { head, body }.
{
"name": "render_markdown_from_url",
"kind": "action",
"impl": "imperative",
"description": "Fetch markdown from an allowlisted URL (raw.githubusercontent.com, raw.gitlab.com, bitbucket.org) and render it into FlatWrite-styled HTML <head> and <body> fragments, with the same optional typography and page-layout controls as render_markdown. Returns { head, body }.",
"inputSchema": {
"type": "object",
"properties": {
"markdownUrl": {
"type": "string",
"format": "uri",
"description": "URL pointing to raw markdown content. Must be on an allowlisted host (raw.githubusercontent.com, raw.gitlab.com, bitbucket.org). The deprecated alias `url` is still accepted."
},
"framework": {
"type": "string",
"enum": [
"spectre",
"poshui",
"pico",
"milligram",
"chota"
],
"description": "Optional UI framework applied when surfaceMode=\"app\"."
},
"fontFamily": {
"type": "string",
"enum": [
"Inter",
"JetBrains Mono",
"Lato",
"Lora",
"Merriweather",
"Playfair Display",
"Comfortaa",
"Unbounded"
],
"description": "Optional font family — must be a bundled family. Defaults to Inter."
},
"fontSize": {
"oneOf": [
{
"type": "string",
"description": "Scale token (e.g. \"-1\", \"0\", \"1\")"
},
{
"type": "number",
"description": "Absolute pixel value (8..72)"
}
],
"description": "Optional font size",
"minimum": 8,
"maximum": 72
},
"fontWeight": {
"oneOf": [
{
"type": "string",
"description": "Scale token (e.g. \"-1\", \"0\")"
},
{
"type": "number",
"description": "Absolute weight (100..900, multiples of 100)"
}
],
"description": "Optional font weight",
"minimum": 100,
"maximum": 900
},
"lineHeight": {
"oneOf": [
{
"type": "string",
"description": "Scale token (e.g. \"-1\", \"0\", \"1\")"
},
{
"type": "number",
"description": "Absolute multiplier (0.8..4.0)"
}
],
"description": "Optional line height",
"minimum": 0.8,
"maximum": 4
},
"uiZoom": {
"type": "number",
"description": "Optional UI zoom level (1.0 = default; >1 zooms in, <1 zooms out)",
"minimum": 0.25,
"maximum": 4
},
"pageSize": {
"type": "string",
"enum": [
"A0",
"A1",
"A2",
"A3",
"A4",
"A5",
"Letter",
"Legal"
],
"description": "Optional page size for paged output."
},
"orientation": {
"type": "string",
"enum": [
"portrait",
"landscape"
],
"description": "Optional page orientation"
},
"marginsLR": {
"type": "string",
"enum": [
"narrow",
"normal",
"wide"
],
"description": "Optional left/right page margin preset."
},
"marginsTB": {
"type": "string",
"enum": [
"narrow",
"normal",
"wide"
],
"description": "Optional top/bottom page margin preset."
},
"footer": {
"type": "boolean",
"description": "Optional: include a page-number footer in paged output"
},
"width": {
"type": "number",
"description": "Optional content width in pixels (400..1400)",
"minimum": 400,
"maximum": 1400
},
"docEngine": {
"type": "string",
"enum": [
"none",
"pagedjs",
"vivliostyle"
],
"description": "Optional document engine — \"none\" emits plain CSS; \"pagedjs\"/\"vivliostyle\" wrap the output in @page rules."
},
"surfaceMode": {
"type": "string",
"enum": [
"doc",
"app"
],
"description": "Optional surface mode — \"doc\" or \"app\". \"app\" unlocks the framework picker."
},
"theme": {
"type": "string",
"description": "Optional theme identifier (e.g. \"light\" or \"dark\") rendered as body[data-theme=\"...\"]."
}
},
"required": [
"markdownUrl"
]
}
}