Back to tools

Tinyfish

Get started by giving this to your agent
$Set up https://monid.ai/SKILL.md, and then use Monid to show me what I can do with Tinyfish.
No endpoints here yet
Check back soon — the catalog grows weekly.

How-to guide

How do I read a page that blocks a plain fetch?a real browser session, and what it costs per step
Step 1

Set up Monid.

One line. It installs the CLI and asks for an API key from app.monid.ai. New accounts start with $1.00.

Say this to your agent
>set up https://monid.ai/SKILL.md
Step 2

Pick what you need. Say it in one sentence.

Click a job. Paste the sentence, fill in the brackets.

Read a page that JavaScript builds

Say this to your agent
>read <url> with tinyfish on monid and give me the items on it. it is a page where nothing is in the html until javascript runs, so tell me how many items came back with real values in them. do not judge it by the byte count or by the status: judge it by whether the fields are populated
What the agent runsdone
tinyfish /fetch$0.00
context.dev /web/extract$0.009
context.dev /web/scrape/markdown$0.0009
x402.browserbase.com /fetch$0.011
What came backone JS-built page · 2026-09-25
Same url, same minute, four routesitems actually rendered, of ten
tinyfish · $0.0010
context.dev extract · $0.00910, typed
plain curl · $0.000
browserbase · $0.0110
the comparisonon one page the $0.011 route and plain curl returned the same 5,806 bytes and a string equality check said true; on another the bytes differed by 367 and nothing had rendered either way
what that meansthe script that builds the page was still sitting there unexecuted, so an agent that strips tags and reads text gets nothing back
the free onereturned all ten items as 1,080 bytes of clean markdown, which is the whole job, for $0.0000
do not diff the bytesthat 367-byte gap was a CDN performance beacon injected because the request looked like a browser, so on any fronted site the byte check reports a difference that means nothing
the rulecount the populated fields. Both routes answered HTTP 200 on both pages, and on two different targets the paid one rendered 0 of 12 and 0 of 10
$0.00ten items, rendered
Open this guide on its own page →