Verify Source
verify_sourceVerifies a claim against PDF sources and presents an inline citation card with evidence, managing not-found and multiple-match cases.
Instructions
Verify a source for a PDF-backed claim and show the result as an inline citation state card. Default mode is high-level: pass document_id, claim, and any rough locator/pages/quote/number; Okra searches parsed nodes, handles not-found and multiple-candidate states, and when a confident source is found mints a durable link.okrapdf.com proof card with quote, page image, bbox focus, confidence, and reasons. For lawfully-reachable PDFs (permitted source or a doc the user has rights to; not paywalled/license-gated) that should not go through full upload/parse yet, pass pdf_url plus page/pages and the tool uses eager_url mode to fetch only that PDF page. verification_requirement defines what counts as verified and defaults to "bbox": eager_url must resolve coordinate evidence before proof is minted, and the API fails rather than returning a proof without bbox. Pass verification_requirement="text_match" only when a deterministic page-text/text-layer match is enough; that returns a found state without a durable proof link, page-image proof, or bbox-backed confidence claim. Use mode="exact_node" with nodes only when the agent is already grounded in exact query rows or node ids. This is the one model-facing source-verification tool; the result also includes create_view arguments for arranging returned card(s) in a custom view.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | Alias for pdf_url. | |
| mode | No | Defaults to high-level auto verification. Use exact_node only when passing query rows or node ids; eager_url is inferred when pdf_url is passed without document_id. | |
| page | No | One-based page number for eager URL verification. | |
| claim | No | Single-source assertion to verify. Use sources[] for multiple citations. | |
| label | No | Optional source label shown on the proof card. | |
| nodes | No | Exact query row(s) or node id(s), only for mode="exact_node" or when the agent is already grounded. | |
| pages | No | Rough pages/ranges for a single citation, e.g. "2", "10-12", or "3,7". | |
| quote | No | Optional direct quote, number, phrase, or printed value to find and cite. | |
| locator | No | Natural-language source hint for a single citation. | |
| pdf_url | No | Lawfully-reachable HTTPS PDF URL (permitted source or a doc you have rights to; not paywalled/license-gated) for eager one-page source verification without upload/parse. Provide pages/page too. | |
| sources | No | Batch mode: verify several claims and render them as citation cards. | |
| document_id | No | okraPDF document ID. Required unless every item in sources has document_id. | |
| min_quality | No | Requested citation grade. Defaults to high, but low-confidence/not-found/multiple-candidate states are rendered as cards rather than hidden. | |
| rough_pages | No | Alias for pages when the user says rough pages. | |
| continue_on_error | No | When sources[] is used, keep verified citations even if one item cannot be matched. | |
| verification_requirement | No | What the caller considers verified. Defaults to bbox, which requires coordinate evidence before proof is minted. Use text_match only when a deterministic text-layer/page-text hit is sufficient and no proof link is needed. |