canli-mcp / Fact checks
How do I fact-check the financial figures an AI wrote?
Give the draft to canli-mcp's verify_claims tool with the company. It finds each figure in the text and checks it against the filings: confirmed, contradicted (with the filed figure and what the wrong number matches) or not reported.
Free and MIT-licensed. No account and no API key. Or run claude mcp add canli -- npx -y canli-mcp in Claude Code.
Ask it
Check these Apple figures against the filings.
The agent finds the tool through canli-mcp's find_tool and runs it through run_tool. This is the call:
{
"name": "verify_claims",
"arguments": {
"company": "AAPL",
"text": "Apple's revenue was $391 billion in fiscal 2024, and its net income was $120 billion."
}
}What came back
Recorded from canli-mcp 0.11.1 on 2026-10-25, with no API key set. The model read 2,167 characters.
| claim | measure | period | claimed | unit | verdict | filed | difference |
|---|---|---|---|---|---|---|---|
| Apple's revenue was $391 billion in fiscal 2024, and its net income was $120 billion. | revenue | fiscal 2024 | 391 | USD billion | confirmed | 391.035 | |
| Apple's revenue was $391 billion in fiscal 2024, and its net income was $120 billion. | net_income | fiscal 2024 | 120 | USD billion | contradicted | 93.736 | 26.264 |
The result verify_claims sent back, in full form
{
"ref": "r13",
"company": {
"cik": 320193,
"name": "Apple Inc.",
"ticker": "AAPL"
},
"summary": {
"claims": 2,
"confirmed": 1,
"contradicted": 1,
"not_reported": 0,
"not_checkable": 0
},
"columns": [
"claim",
"measure",
"period",
"claimed",
"unit",
"verdict",
"…"
],
"rows": [
[
"Apple's revenue was $391 billion in fiscal 2024, and its net income was $120 billion.",
"revenue",
"fiscal 2024",
391,
"USD billion",
"confirmed",
"…"
],
[
"Apple's revenue was $391 billion in fiscal 2024, and its net income was $120 billion.",
"net_income",
"fiscal 2024",
120,
"USD billion",
"contradicted",
"…"
]
],
"note": "Confirmed means the filed figure rounds to the claim at the claim's own precision (391 billion: within 0.5 billion). Fiscal years and quarte…",
"limits": [
"Checked against the US GAAP and IFRS figures companies tag in their SEC filings (10-K, 10-Q, 20-F, 40-F, and 6-K reports that carry tags); n…",
"A figure converted to another currency is not judged: the company's own figure is shown beside it.",
"A claim's measure and period are read from its words; read each row's measure and period before relying on a verdict."
]
}Prices, filings and statistics are as the sources published them on that day; run the call again for today's. Nothing here is investment advice.
The tools behind the answer
| Tool | Pack | What it does |
|---|---|---|
verify_claims | markets | Check a draft answer's figures against the company's own filings before using them: revenue, net income, EPS, operating income, margins, growth, cash flow, assets, debt and more, for a fiscal year or quarter as the company labels it. US and foreign filers (20-F, IFRS), in their own currency. Each claim comes back confirmed, contradicted (with the filed figure and what the claimed one matches instead: another year, a quarter, a unit slip), not reported or not checkable. |
Add canli-mcp
claude mcp add canli -- npx -y canli-mcp{ "mcpServers": { "canli": { "command": "npx", "args": ["-y", "canli-mcp"] } } }https://canlicapital.com/mcp/canliEverything canli-mcp does · How it compares with other finance MCP servers
