toolshed.lemon-agent.dev publishes 16 machine-payable endpoints over the x402 protocol, priced from $0.002 to $0.006 per call. Each was probed directly; the response code below is what it returned.
| Endpoint | Method | Price | Probe |
|---|---|---|---|
| /convert/csv-yaml | POST | $0.002 | 402 |
| /convert/frontmatter-json | POST | $0.004 | 402 |
| /convert/html-json | POST | $0.006 | 402 |
| /convert/html-text | POST | $0.006 | 402 |
| /convert/json-csv | POST | $0.002 | 402 |
| /convert/json-ndjson | POST | $0.002 | 402 |
| /convert/json-toml | POST | $0.004 | 402 |
| /convert/json-yaml | POST | $0.002 | 402 |
| /convert/markdown-json | POST | $0.004 | 402 |
| /convert/md-html | POST | $0.004 | 402 |
| /convert/ndjson-json | POST | $0.002 | 402 |
| /convert/srt-vtt | POST | $0.002 | 402 |
| /convert/toml-json | POST | $0.004 | 402 |
| /convert/vtt-srt | POST | $0.002 | 402 |
| /convert/xml-json | POST | $0.006 | 402 |
| /convert/yaml-csv | POST | $0.002 | 402 |
CSV to YAML. POST a CSV file with a header row; the response is block-style YAML — a list of maps, one per data row. Parsed to RFC 4180, so quoted commas and embedded newlines survive. Every value sta…
Markdown frontmatter to JSON. POST a Markdown file that begins with a --- fence; the response is {"data": the parsed YAML frontmatter, "content": the body returned byte for byte}. A file with no openi…
HTML tables to JSON. POST an HTML page; the response is {"tables": [{caption, columns, rows}]} — every <table> read into row objects keyed by its header cells, in the same shape whether the page has o…
HTML to readable plain text. POST an HTML file; the response is its prose. The page is parsed with a real DOM, so script, style, noscript, nav, header, footer and aside are dropped WITH their contents…
JSON to CSV. POST an array of objects; the response is a CSV file whose header row is the union of every record's keys in first-seen order, so a record missing a key gets an empty cell instead of a sh…
JSON array to NDJSON. POST a JSON array; the response is one compact JSON value per line — the shape streaming loaders, log shippers and jq pipelines take. A non-array input is refused rather than emi…
JSON to TOML. POST a JSON object; the response is a TOML document. The root must be an object, because TOML's root is a table, and a null anywhere in the document is refused — TOML has no spelling for…
JSON to YAML. POST any JSON value; the response is block-style YAML — the readable, indented form, not flow style. Any top-level shape is accepted, not just an object. There are no comments to preserv…
Markdown to a JSON token tree. POST Markdown; the response is {"toc": [{depth, text}], "tokens": [...]} — the marked lexer's token stream plus a table of contents derived from the real headings. The d…
Markdown to HTML. POST a Markdown file; the response is an HTML FRAGMENT — CommonMark plus GitHub tables, no <html> wrapper and no stylesheet. It does not sanitize: raw HTML in the input passes throug…
NDJSON to a JSON array. POST newline-delimited JSON; the response is a pretty-printed array of the parsed values. Blank lines are skipped and a line that does not parse is refused naming the 1-based l…
SubRip to WebVTT. POST an .srt file; the response is a .vtt file — a WEBVTT header and timestamps written with a decimal point instead of a comma. Cue numbers are kept as WebVTT cue identifiers and ca…
TOML to JSON. POST a TOML document; the response is pretty-printed JSON. A conforming parser handles the parts hand-rolled readers get wrong — dotted keys, arrays of tables, offset date-times. Dates b…
WebVTT to SubRip. POST a .vtt file; the response is an .srt file. Cues are renumbered from 1 and hour-less timestamps are expanded to hh:mm:ss,mmm. The WEBVTT header, NOTE/STYLE/REGION blocks and per-…
XML to JSON. POST an XML document; the response is JSON in fast-xml-parser's convention — attributes prefixed @_, text content under #text, and repeated sibling elements collapsed into an array (so an…
YAML to CSV. POST a YAML list of maps; the response is a CSV file with a header row. The first document of a stream is used and anchors are resolved. One level of nesting flattens to dotted columns; a…