Fetches a public web page and returns its readable text as JSON: url, status, title, char count, and clean text with scripts, styles and tags stripped. Blocks private/localhost addresses. Free: 3 calls a day per visitor; after that $0.01 per call via x402 at https://tools.orchardshop.xyz/t/page-to-text.
Parametersurlrequired
Validates a JSON document sent as the raw request body and returns it pretty-printed. Returns valid true/false, the formatted JSON, a count of keys, and byte size. Invalid JSON returns the parser error message. Free: 3 calls a day per visitor; after that $0.01 per call via x402 at https://tools.orchardshop.xyz/t/json-check.
Parametersbodyrequired
Send plain text as the raw POST body and get back word count, sentence count, character count, estimated reading minutes, and the top 10 keywords (stopwords removed). Free: 3 calls a day per visitor; after that $0.01 per call via x402 at https://tools.orchardshop.xyz/t/text-stats.
Parametersbodyrequired
POST raw text as the body and get back its byte count, sha256, sha1, md5, hex, base64 and base64url encodings. Useful for checksums, IDs and encoding a value mid-task. Free: 3 calls a day per visitor; after that $0.01 per call via x402 at https://tools.orchardshop.xyz/t/hash-encode.
Parametersbodyrequired
POST raw CSV as the body (first row is headers) and get back a JSON array of row objects, plus column names and row count. Handles quoted fields, commas and newlines inside quotes, and escaped quotes. Free: 3 calls a day per visitor; after that $0.01 per call via x402 at https://tools.orchardshop.xyz/t/csv-to-json.
Parametersbodyrequired
POST titles as JSON {"titles": [...]} or as raw text with one title per line, and get back URL-safe slugs. Strips accents, lowercases, removes apostrophes and collapses other punctuation to single hyphens. Up to 500 titles per call. Free: 3 calls a day per visitor; after that $0.01 per call via x402 at https://tools.orchardshop.xyz/t/slugify.
Parameterstitles
POST a JSON array of flat objects (or {"rows":[...]}) and get CSV back. Columns are the union of all keys in order of first appearance. Values are quoted and escaped per RFC 4180. Nested objects are stored as JSON text. Up to 5000 rows per call. Free: 3 calls a day per visitor; after that $0.01 per call via x402 at https://tools.orchardshop.xyz/t/json-to-csv.
Parametersrows
POST raw markdown as the request body and get plain text back. Removes headings, emphasis, links (keeps the label), images (keeps the alt text), list markers, blockquotes, HTML tags and code fences (keeps code contents). Useful before summarizing or indexing markdown documents. Free: 3 calls a day per visitor; after that $0.01 per call via x402 at https://tools.orchardshop.xyz/t/markdown-strip.
Parametersmarkdown
Fetches any public http(s) page and returns clean Markdown: headings (#), paragraphs, lists, links with absolute URLs, bold/italic, and code blocks. Scripts, styles and nav/footer are removed. Output is capped at the first 50,000 characters, with a truncated flag. Blocks localhost and private addresses. Returns JSON with url, status, title, chars, truncated and markdown. Free: 3 calls a day per visitor; after that $0.02 per call via x402 at https://tools.orchardshop.xyz/t/page-to-markdown.
Parametersurlrequired
Fetches any public http(s) page and returns its metadata: title, meta description, canonical URL, favicon URL, all OpenGraph (og:*) properties, and every unique absolute link with its anchor text (up to 500). Blocks localhost and private addresses. Returns JSON with url, final_url, status, title, description, canonical, favicon, og, link_count and links. Free: 3 calls a day per visitor; after that $0.01 per call via x402 at https://tools.orchardshop.xyz/t/page-metadata.
Parametersurlrequired
Crawls one public website breadth-first from a start URL, staying on the same hostname, and returns each page as clean Markdown (up to 20,000 chars per page). Reads robots.txt and skips disallowed paths, fetches at most 2 pages at a time with about 300ms between requests, and identifies as OrchardBot/1.0. Blocks localhost and private addresses, including after redirects. Answers within 45 seconds; if time runs out it returns the pages it has with partial=true. Returns JSON with start_url, pages_crawled, partial, pages[{url,title,markdown}] and skipped[{url,reason}]. max_pages is 1-20 (default 10). Paid only: $0.25 per call via x402 at https://tools.orchardshop.xyz/t/site-crawl-markdown.
Parametersurlrequiredmax_pagesrequired