citation-span
Locate quoted text in a source with exact offsets, or classify it as normalized, elided, paraphrased or absent — Finds each quote an agent attributes to a source text and returns where it sits: exact offsets in UTF-16, code points, UTF-8 bytes and graphemes, so the span slices back to the matched text. Tries an exact match, then a match tolerant of whitespace, curly vs straight quotes, dash types, ellipses, invisible characters and Unicode forms (NFC/NFD, ligatures), naming which normalizations were needed,
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"source": "<source>",
"quotes": "<quotes>"
},
"name": "citation-span"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| quotes | Yes | Up to 50 quotes, 40000 characters in total. | |
| source | Yes | Text the quotes are claimed to come from. | |
| tolerate | No | Normalizations that still count as a match. Default: all six. | |
| exactOnly | No | Count only byte-identical matches as pass; normalized matches become fail. Default false. | |
| minLength | No | Quotes shorter than this many characters (after trimming quote marks) are too-short and give unknown. Default 8. | |
| ignoreCase | No | Also tolerate case differences (reported as a normalization). Default false. |