For Agents
Contrie is built for a machine caller: single-page extraction and reading, returning JSON with fields to make a keep/retry decision on — not a browsing agent. It does not crawl sites, run a search, or drive a multi-step browser session.
Machine-Readable Surfaces
| Path | What it is |
|---|---|
| /llms.txt | Plain-text summary of the API and pipeline, for models that read it directly |
| /openapi.json | Full OpenAPI spec for the REST endpoints — generate a typed client from this |
| /agent-onboarding/SKILL.md | Setup and the same decision procedure below, in a format agent frameworks that load skills can consume directly |
| /mcp | Hosted MCP server — contrie_extract and contrie_read as tool calls, no HTTP client code needed |
Decision Procedure
- Reading vs. structured data: use
format: "markdown"(or thecontrie_readMCP tool) when you just need to read a page. Useschemawhen downstream code depends on the exact shape; use free-textextractotherwise. - Accept, don't re-check: treat
qualityScore ≥ 70andgrounding ≥ 0.8as good enough to act on. - Retry once, narrower: on a lower score, retry a single time with a more specific
extractprompt rather than repeating the same call. - RENDER_REQUIRED isn't retryable as-is: it means the page has no server-rendered content. Render it yourself, then call /api/v1/extract with the resulting HTML.
- Budget with costUsd: every response reports the model spend for that call, 0 on free-tier models.
- One page per call: no crawling, no search, no multi-step browsing — call once per URL you already have.
Full Reference
For the complete parameter and response contract, see Scrape, Extract, Streaming, and Error Codes.