Ask a web page a question, with verified quotes API
AI question answering over one live web page or document URL: an answer drawn only from the page text, verbatim quotes with character offsets checked against the page, an answerable flag and low/medium/high confidence. answerable:false (page lacks the answer) is a normal, charged 200 result. Without a question: summary, key points, title. Also final URL, page size, truncation flag. Generated by Anthropic Claude under a fixed Kit Rx prompt; may miss or misstate details.
$0.004 per call USDC over x402 v2 on Base, Polygon, Arbitrum, Avalanche or Sei. No signup, no API key. Requests that fail or match nothing are not charged.
Endpoint
GET https://api.kit-rx.com/v1/web/read
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
url | string | yes | http or https URL of a public page (HTML, or a PDF/DOCX/XLSX document; a bare domain is fetched as https://). Default ports only; credentials, IP addresses, localhost and private or single-label names are rejected. e.g. https://www.archives.gov/founding-docs/declaration-transcript |
q | string | no | Question to answer from the page, up to 500 characters. Omit it for a summary. e.g. From what do governments derive their just powers, according to this document? |
mode | string: answer, summary | no | answer (default when q is given: answer, verbatim quotes with offsets, answerable flag, confidence) or summary (default without q: summary, key points, title). e.g. answer |
max_chars | integer | no | Characters of the page's main content (as Markdown) read, 1000 to 30000. Default 30000. Longer pages are cut and flagged truncated. e.g. 30000 |
Example request
https://api.kit-rx.com/v1/web/read?url=https%3A%2F%2Fwww.archives.gov%2Ffounding-docs%2Fdeclaration-transcript&q=From+what+do+governments+derive+their+just+powers%2C+according+to+this+document%3F
Without payment the server answers 402 Payment Required with the price (4000 atomic USDC) in the PAYMENT-REQUIRED header. Any x402 v2 client pays and retries automatically. A request with no parameters runs this example.
curl -i "https://api.kit-rx.com/v1/web/read?url=https%3A%2F%2Fwww.archives.gov%2Ffounding-docs%2Fdeclaration-transcript&q=From+what+do+governments+derive+their+just+powers%2C+according+to+this+document%3F"
Pay from an agent
AgentCash: fetch the URL. OpenDexter MCP: x402_fetch. Kit Rx MCP server: https://api.kit-rx.com/mcp. Code:
import { x402Client } from "@x402/core/client";
import { registerExactEvmScheme } from "@x402/evm/exact/client";
import { wrapFetchWithPayment } from "@x402/fetch";
import { privateKeyToAccount } from "viem/accounts";
const client = new x402Client();
registerExactEvmScheme(client, { signer: privateKeyToAccount(process.env.BUYER_KEY) });
const pay = wrapFetchWithPayment(fetch, client);
const res = await pay("https://api.kit-rx.com/v1/web/read?url=https%3A%2F%2Fwww.archives.gov%2Ffounding-docs%2Fdeclaration-transcript&q=From+what+do+governments+derive+their+just+powers%2C+according+to+this+document%3F");
console.log(await res.json());
Example response
{
"query": {
"url": "https://www.archives.gov/founding-docs/declaration-transcript",
"q": "From what do governments derive their just powers, according to this document?",
"mode": "answer",
"max_chars": 30000
},
"result": {
"mode": "answer",
"answerable": true,
"answer": "According to the page, governments derive their just powers from the consent of the governed.",
"quotes": [
{
"text": "Governments are instituted among Men, deriving their just powers from the consent of the governed",
"char_start": 1305,
"char_end": 1402
}
],
"quotes_dropped": 0,
"confidence": "high",
"title": "Declaration of Independence: A Transcription | National Archives",
"title_source": "page",
"final_url": "https://www.archives.gov/founding-docs/declaration-transcript",
"page_chars": 9990,
"page_chars_read": 9990,
"truncated": false,
"model_family": "Claude",
"ai_generated": true
},
"sources": [
{
"name": "Cloudflare DNS over HTTPS (JSON API)",
"url": "https://developers.cloudflare.com/1.1.1.1/encryption/dns-over-https/make-api-requests/dns-json/"
},
{
"name": "Cloudflare Workers AI toMarkdown",
"url": "https://developers.cloudflare.com/workers-ai/features/markdown-conversion/"
},
{
"name": "Anthropic Claude (AI-generated text)",
"url": "https://www.anthropic.com/claude"
},
{
"name": "Live HTTP(S) fetch of the URL",
"url": "https://www.archives.gov/founding-docs/declaration-transcript"
}
],
"notes": [
"AI-generated answer by Anthropic Claude under a fixed Kit Rx prompt, based only on the fetched page text; it can misread or miss details. Quotes are checked in code to be exact substrings of the page text; the answer itself is not verified.",
"Quote char_start and char_end are 0-based, end-exclusive UTF-16 offsets into the page text as extracted at fetch time (Markdown of the main content, as web.markdown returns it).",
"Page fetched live by the Kit Rx fetcher (User-Agent KitRx/1.0) and converted with Cloudflare Workers AI toMarkdown; content belongs to its publisher."
],
"attribution": [
"DNS resolved via Cloudflare 1.1.1.1 DNS-over-HTTPS."
],
"generated_at": "2026-11-15T05:52:41.899Z"
}
Kit Rx: Pay-per-call data and safety tools for AI agents, paid in USDC over x402. No signup, no API key. Machine-readable: OpenAPI, llms.txt, /.well-known/x402, agent skills.