{"provider":{"host":"toolshed.lemon-agent.dev","name":"Toolshed","score":53.2,"live":true,"checkedAt":"2026-11-02T02:42:49.646Z","uptime72h":100,"lastCheck":{"httpStatus":402,"ms":403,"note":"valid x402 v2 terms"},"endpoints":5,"networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"cheapestUsd":"0.002","income7dUsd":"0.008","payers7d":2,"transfers7d":2,"payoutAddressShared":false,"claimed":false,"page":"https://logicnodes.io/observatory/p/toolshed.lemon-agent.dev"},"endpoints":[{"url":"https://toolshed.lemon-agent.dev/convert/csv-json","method":"POST","priceMicroUsd":2000,"networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"description":"CSV to JSON. POST a CSV file with a header row; the response is an array of objects keyed by that row. RFC 4180, so quoted commas and embedded newlines survive. Short rows are padded; a row with MORE fields than the header is an error, never a silent truncation."},{"url":"https://toolshed.lemon-agent.dev/convert/json-yaml","method":"POST","priceMicroUsd":2000,"networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"description":"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 preserve in either direction, because JSON has none."},{"url":"https://toolshed.lemon-agent.dev/convert/ndjson-json","method":"POST","priceMicroUsd":2000,"networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"description":"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 line number — which is the reason to run a parser over a log file instead of wrapping it in brackets."},{"url":"https://toolshed.lemon-agent.dev/convert/yaml-json","method":"POST","priceMicroUsd":2000,"networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"description":"YAML to JSON. POST a YAML document; the response is pretty-printed JSON. Anchors and aliases are resolved, and a multi-document stream converts as its FIRST document rather than as an array — the direction that bites, because YAML is the larger language."},{"url":"https://toolshed.lemon-agent.dev/convert/html-markdown","method":"POST","priceMicroUsd":6000,"networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"description":"HTML to Markdown. POST a saved page or an HTML fragment; the response is Markdown with ATX headings and fenced code. The page is parsed with a real DOM, so structure survives — but nav, ads and cookie banners convert too: pre-strip if you only want the article body."}]}