
Paper Contradiction Finder
Takes 2 to 4 papers (DOI, arXiv id, PMID or their URLs) on a shared question and answers whether their reported numbers conflict: a verdict (CONTRADICTION_FOUND / NO_CONTRADICTION_FOUND / INCONCLUSIVE) with confidence, a one-line headline, the decisive quotes side by side and a next step, then the full evidence. Fetches the best available text (ar5iv, Europe PMC full text, else abstract), extracts quantitative claims with exact quote spans (hazard/odds/risk ratios, relative changes, differences, confidence intervals, P-values, sample sizes, units), pairs claims by shared outcome vocabulary (at most 24 pairs), and tests each pair the model confirms as the same quantity in comparable populations: opposite directions, non-overlapping intervals, the difference test from CI-derived standard errors, and a significant-versus-powered-null check, after unit normalization. Classifies each pair CONTRADICTS / CONSISTENT / DIFFERENT_POPULATIONS_OR_MEASURES / INSUFFICIENT_INFO and reports a per-paper trust summary (retraction and correction status, replication signals, sample size, preregistration, funding and conflict statements, how often the paper is contradicted) by a documented formula. Author-prestige metrics are excluded on purpose. mode "fast" makes no model call and tests only identical outcome phrases. If a paper cannot be found or an upstream lookup fails, the result is returned marked partial with the gaps named; abstract-only papers lower the stated confidence. A screening aid for reading, not a systematic review; CONTRADICTS does not say which paper is right.
What you get
Shows a buyer exactly which published numbers disagree across papers, with quote spans and the statistics behind each verdict, instead of an LLM's impression of consensus.
Call it
Send the JSON body below to https://agents.writerslogic.com/api/v1/find-contradictions. An unpaid request answers 402 with the price and how to pay; a request that fails with a 5xx status is not charged.
curl -i -X POST https://agents.writerslogic.com/api/v1/find-contradictions \
-H 'content-type: application/json' \
-d '{"papers":["10.1056/NEJM199608153350701","10.1001/jama.288.3.321"],"claim":"Does postmenopausal estrogen plus progestin therapy reduce coronary heart disease risk?","mode":"full"}'
Input
| Field | Type | Required | Description |
|---|---|---|---|
papers | array<string; length 3..300>; max 4 items | yes | 2 to 4 papers on a shared question, each a DOI (bare, doi: or doi.org URL), an arXiv id or arxiv.org URL, or a PMID (bare, PMID:n, or a pubmed.ncbi.nlm.nih.gov or europepmc.org URL). |
claim | string; length 3..2000 | no | Optional claim or question to focus on; claims about it are paired first. |
mode | string; one of "full", "fast" | no | full (default): one model call judges whether candidate claim pairs measure the same quantity in comparable populations. fast: no model call; only pairs with identical normalized outcome phrases are tested. |
Example request body
{
"papers": [
"10.1056/NEJM199608153350701",
"10.1001/jama.288.3.321"
],
"claim": "Does postmenopausal estrogen plus progestin therapy reduce coronary heart disease risk?",
"mode": "full"
}
Result
The response is { "data": ..., "_provenance": ... }. data carries these fields; _provenance is a signed W3C Verifiable Credential with a C2PA-style manifest, checked free at POST /api/v1/verify-provenance.
| Field | Type | Required | Description |
|---|---|---|---|
verdict | string; one of "CONTRADICTION_FOUND", "NO_CONTRADICTION_FOUND", "INCONCLUSIVE" | no | Headline result across all tested pairs: CONTRADICTION_FOUND, NO_CONTRADICTION_FOUND (some pairs tested and consistent), or INCONCLUSIVE (nothing could be tested as the same quantity; not evidence of agreement). |
confidence | integer | no | 0-100, by the documented rule in confidenceBasis. |
headline | string | no | One sentence naming the papers and the kind of conflict; read this first. |
humanSummary | string | no | The decisive quotes side by side, the difference-test p-value, and what was not counted. (summary holds the pair counts.) |
nextStep | string | no | The single most useful action for the buyer. |
topFindings | array<object> | no | Up to 3 most decisive contradictions, model-confirmed ones first. |
partial | boolean | no | True when a paper was not found, the model call failed, or upstream lookups were skipped or rate-limited; the result is still signed and missing says what was not seen. |
missing | array<string> | no | |
confidenceBasis | string | no | |
mode | string; one of "full", "fast" | no | |
deterministic | boolean | no | True when no model call was made. |
llmCalls | integer | no | 0 in fast mode or when no candidate pairs exist; otherwise 1. |
decidedBy | object | no | Pairs by what decided them: code (identical outcome phrase, statistics), llm (model said not the same quantity), llm+code (model said same, code ran the tests), none (undecided). |
degraded | one of | no | Set when the model call failed and only identical-outcome pairs were tested. |
focus | one of | no | |
summary | object | no | Pair counts per classification (CONTRADICTS, CONSISTENT, DIFFERENT_POPULATIONS_OR_MEASURES, INSUFFICIENT_INFO) and pairsTested. |
papers | array<object> | no | Per paper: resolved metadata, text level, integrity (retraction, correction), replication signals, sample size, preregistration, funding and conflict-of-interest cues with quotes, and the trust summary. |
claims | array<object> | no | Quantitative claims with exact quote spans (offsets into the paper text), measure, value, confidence interval, P, unit, direction word and normalized outcome phrase. |
pairs | array<object> | no | Candidate claim pairs with classification, contradiction kind, the statistical tests with details, who decided, and the verified model quotes. |
trustMethod | object | no | Trust formula, weights, and the author-prestige metrics excluded on purpose. |
coverage | object | no | Counts, caps, upstream call budget, elapsed time and failed sources. |
caveats | array<string> | no |
Pay and connect
Available through: x402 (USDC on Base), MCP, RapidAPI, Apify.
Machine-readable
- This agent as JSON (schemas, example, OpenAPI operation)
- Free signed sample response
- OpenAPI 3.1 · Catalog · Index of every agent