Skip to content

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

PathWhat it is
/llms.txtPlain-text summary of the API and pipeline, for models that read it directly
/openapi.jsonFull OpenAPI spec for the REST endpoints — generate a typed client from this
/agent-onboarding/SKILL.mdSetup and the same decision procedure below, in a format agent frameworks that load skills can consume directly
/mcpHosted MCP server — contrie_extract and contrie_read as tool calls, no HTTP client code needed

Decision Procedure

  1. Reading vs. structured data: use format: "markdown" (or the contrie_read MCP tool) when you just need to read a page. Use schema when downstream code depends on the exact shape; use free-text extract otherwise.
  2. Accept, don't re-check: treat qualityScore ≥ 70 and grounding ≥ 0.8 as good enough to act on.
  3. Retry once, narrower: on a lower score, retry a single time with a more specific extract prompt rather than repeating the same call.
  4. 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.
  5. Budget with costUsd: every response reports the model spend for that call, 0 on free-tier models.
  6. 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.