Back to tools
26 endpoints

Context.dev

The unified web context API for agents — scrape any URL to clean Markdown, HTML, JSON, or prebuilt-parser records (Google Maps, app stores, Instagram, TikTok, G2), map and crawl a whole site for RAG, search the web with inline page content, research sourced answers, extract schema-shaped JSON, capture screenshots, search company news, find companies and people in plain words, enrich people from identity clues, and resolve brand, industry (NAICS/SIC), product, and design-system intelligence for any company — one key, no crawlers, browsers, or proxies to run.

Part of Web Tools

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 Context.dev.
Context.dev
Extract Structured Data
/web/extract

Crawl a website and return JSON matching a caller-supplied JSON Schema. 10 credits ($0.02) per call.

$0.002per credit
0 Markup
Context.dev
Scrape Anything
/web/scrape

Scrape one URL into any mix of Markdown, HTML, screenshot, images, JSON, product data, or a prebuilt parser.

$0.002per credit
0 Markup
Context.dev
Retrieve Brand
/brand/retrieve

Resolve a company by domain, name, or ticker into a full brand profile. 10 credits ($0.02) per call.

$0.002per credit
0 Markup
Context.dev
Identify Transaction
/brand/transaction_identifier

Map a noisy card or bank descriptor to the real merchant and its brand data. 10 credits ($0.02) per call.

$0.002per credit
0 Markup
Context.dev
Scrape Images
/web/scrape/images

Extract every image asset from a page with metadata.

$0.002per credit
0 Markup
Context.dev
Map Site URLs
/web/urls

List a website's URLs with page titles and descriptions, optionally ranked by a topic.

$0.002per credit
0 Markup

Try it with your agents

01
Map a product's competitors
Set up https://monid.ai/SKILL.md, and then use Monid to search the web for the strongest alternatives to Notion and build a comparison table from the top sources.

How-to guides

How do I read any web page as clean text?free route first, escalate on a thin answerread <url> as markdown with context.dev on monid and keep the code blocks, then count the fenced blocks against the page and tell me the number. do not judge it by the character count: link syntax and page chrome are included by default and can make the output larger than the visible text the cheap one: 15,312 characters with all three code samples intact, plus the page metadata the 66x one: 9,948 characters and every code fence stripped to prose what that means: on a documentation page, the expensive extractor lost exactly the part you came for count blocks, not characters: on a second page all 32 code blocks came back and twenty sampled ones were verbatim, while the character count was 74% larger than the visible text because link markup and chrome are on by default and made up two fifths of the output and the length field is bytes: the endpoint's own content length is counted in utf-8 bytes rather than characters, so it will not match a character count either the tie: on a news article the cheap one and a near-free one returned the same text, neither blockedHow do I read a page that blocks a plain fetch?a real browser session, and what it costs per stepread <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 the comparison: on 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 means: the script that builds the page was still sitting there unexecuted, so an agent that strips tags and reads text gets nothing back the free one: returned all ten items as 1,080 bytes of clean markdown, which is the whole job, for $0.0000 do not diff the bytes: that 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 rule: count 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 10Which local businesses still have no website?businesses with no website, screened for the chainssearch google maps for <trade> in <city> with litescrape on monid and tell me how many of the results already have a website and a rating above 4.5. if almost all of them do, say so and stop before i build a list the answer: forty results and not one of them had a missing website the ratings: nineteen of the first twenty sat at 4.5 or above it degrades as you page: the first page carried a website and a rating on all twenty rows, but across 75 unique rows the website was present on 69 and the rating on 72, so the deeper you go the more rows the screen cannot judge the verdict: the category is saturated, so a no-website lead list here would be empty what it cost: three hundredths of a cent to avoid building the wrong list