---
title: Bibliography Audit - Check Every Reference Before You Submit
description: Paste or upload a bibliography (BibTeX, RIS, or CSL-JSON) and audit every reference in one pass: fabrication verification against the scholarly registries plus retraction checks, a per-entry verdict table, a corpus summary, and a downloadable evidence report pinned to the verify version that produced it. Free, no signup.
doc_version: "2026-07-18"
last_updated: "2026-07-18"
---

# Bibliography Audit

*Paste or upload a whole bibliography. Every reference is verified against the scholarly registries and checked for retraction; you get a per-entry verdict table, a corpus summary, and a downloadable evidence report.*

## What this tool does

The Bibliography Audit runs the [Citation Verifier](/tools/citation-verifier) engine across an entire reference list in one pass - a manuscript bibliography before submission, a collaborator's `.bib`, or an AI-generated reading list. Each entry's identifier is resolved against the canonical registry and its claimed title compared to the resolved record, catching the dominant AI-fabrication pattern documented by [Topaz et al. (Lancet 2026)](https://www.thelancet.com/journals/lancet/article/PIIS0140-6736(26)00603-3/fulltext): a real, resolvable identifier paired with an invented title. Each resolved DOI is additionally checked for retractions, corrections, and expressions of concern (Crossref / Retraction Watch).

## Scope

The audit verifies **citation identity** - does each reference exist, and does its identifier really point to the paper it claims - plus retraction status. It **does not** verify that a cited work supports the claim made in the citing text; that remains a human judgment task. Background: [/citation-integrity](/citation-integrity).

## How it works

1. **Parse.** The bibliography (BibTeX / RIS / CSL-JSON, auto-detected) is parsed server-side. Entries that cannot be parsed are reported individually - never silently dropped.
2. **Verify.** Each entry runs the single-citation verification pipeline: resolve the identifier, compare claimed vs resolved fields, title-search when they disagree. Up to 25 entries per run; anything beyond the cap is counted and reported.
3. **Check retraction.** Each resolved DOI is checked for retractions, corrections, and expressions of concern.
4. **Summarise.** A corpus summary counts matched / mismatch / ambiguous / not found / errored / retracted, and the evidence report packages the lot with the request id and verify version.

## Verdicts

- **Matched** - claimed title agrees with the paper at the identifier.
- **Mismatch** - identifier resolves but the title disagrees. The Topaz et al. fabrication pattern: real DOI, invented title.
- **Ambiguous** - identifier resolves to paper X, but the claimed title matches paper Y found via search. Usually a wrong identifier for a real paper.
- **Not found** - neither the identifier nor a title-search returns any match.

## The evidence report

After an audit you can download a self-contained HTML report (print to PDF from any browser) and a machine-readable JSON receipt. Both carry: per-entry verdicts with confidence and field-level diffs, retraction status, the corpus summary, parse failures, the request id, the verify version that produced the verdicts, and a generated-at timestamp - so the audit is reproducible and attributable, not a screenshot. The report is generated in your browser from the audit response.

## Programmatic access

- REST: `POST /api/audit` with `bibliography` text (BibTeX / RIS / CSL-JSON) or a pre-parsed `claims[]` array - see [API documentation](/docs).
- MCP: the `auditBibliography` tool ships with the [scholar-sidekick MCP server](/mcp); call it from Claude Desktop, Cursor, or any MCP-aware client.
- CLI: `npm i -g scholar-sidekick-cli`, then `scholar audit refs.bib`.

## FAQ

### What does a bibliography audit check?

Two things per reference. (1) Identity verification: the identifier (DOI, PMID, PMCID, ISBN, arXiv, ISSN, ADS bibcode, or WHO IRIS URL) is resolved against the appropriate registry and the claimed title is compared to the resolved record - catching the dominant AI-fabrication pattern documented by Topaz et al. (Lancet 2026), a real DOI paired with an invented title. (2) Retraction status: each resolved DOI is checked for retractions, corrections, and expressions of concern via Crossref (which mirrors Retraction Watch). You get a verdict per entry plus a corpus summary.

### Which file formats can I upload?

BibTeX (`.bib`), RIS (`.ris`), or CSL-JSON (`.json`) - paste the text or upload the file. The format is auto-detected (an upload's file extension is used as a hint). Entries that cannot be parsed are reported individually with the reason; they are never silently dropped.

### How many references can I audit at once?

Up to 25 per run, on the web and on the API - the cap keeps one audit inside a bounded upstream-fetch budget. If your bibliography is longer, the audit reports exactly how many entries were beyond the cap (they are never silently skipped); split the file and run again, or script [POST /api/audit](/docs) / the `auditBibliography` [MCP tool](/mcp) / the `scholar audit` CLI command across chunks.

### What is in the evidence report?

Everything needed to show the bibliography was checked - and to re-check it. Per reference: the verdict (matched / mismatch / ambiguous / not found), confidence, the resolved record, field-level diffs where the claim disagrees, retraction status, and any caveats the verifier attached. Plus the corpus summary, the entries that could not be parsed, the request id, the verify version that produced the verdicts, and a generated-at timestamp. It downloads as a self-contained HTML file (print it to PDF from any browser) and as a machine-readable JSON receipt.

### What do the verdicts mean?

Matched means the claimed title agrees with the paper at the identifier. Mismatch means the identifier resolves but the title disagrees - the Topaz et al. fabrication pattern. Ambiguous means the identifier resolves to one paper but the claimed title matches a different real paper found via search, which usually indicates a wrong identifier rather than a fabrication. Not found means neither the identifier nor a title-search resolves anywhere.

### Does it check whether each paper supports my argument?

No - and deliberately so. The audit verifies citation identity (this reference exists, and its identifier really points to the paper it claims) and retraction status. Whether the cited paper actually supports the claim you make in your text is a judgment task that needs the paper and the claim read together; no tool here pretends to solve it. Background on where the line sits: [/citation-integrity](/citation-integrity).

### Is this free? Is my bibliography stored?

The web audit is free at the anonymous tier with a published rate limit (see [API documentation](/docs)) - no signup. Your bibliography is not retained beyond standard server logs, and the evidence report is generated in your browser from the audit response - nothing extra is uploaded to produce it.

### How accurate is the verifier behind the audit?

It is the same engine as the single-citation [Citation Verifier](/tools/citation-verifier). On a 1,395-entry blind holdout it caught every fabrication on the dominant patterns (150/150 = 100%, Wilson 95% CI lower bound ~97.6%) with a 0.8% high-confidence false-accusation rate on correctly-cited papers (95% CI 0.4-1.4%). It also has a measured blind spot - single-word near-miss semantic flips (caught 4/30) - which we report rather than hide. Fixtures, methodology, and downloadable receipts: [/citation-integrity](/citation-integrity).

### Can I run the audit from the API, MCP, or command line?

Yes - the same endpoint backs all three. REST: [POST /api/audit](/docs) with the bibliography text (or a pre-parsed `claims[]` array). MCP: the `auditBibliography` tool ships with the [scholar-sidekick MCP server](/mcp) for Claude, Cursor, and any MCP-aware client. CLI: `npm i -g scholar-sidekick-cli`, then `scholar audit refs.bib`.

## Related

- [/tools/citation-verifier](/tools/citation-verifier) - the single-citation verifier: full per-field diff and candidate search for one reference at a time.
- [/tools/chatgpt-reference-checker](/tools/chatgpt-reference-checker) - the verification engine framed for AI-generated reference lists.
- [/tools/retraction-checker](/tools/retraction-checker) - retraction status for a single identifier.
- [/citation-integrity](/citation-integrity) - the explainer, with measured validation numbers and downloadable JSON receipts.
- [/mcp](/mcp) - programmatic access via the MCP server.

## Sitemap

See the full [sitemap](https://scholar-sidekick.com/sitemap.md) for all pages.
