The grounding layer
for AI-assisted research. Δ
Scan the real prior art around an idea, gauge how crowded — or open — the space is, then verify every citation against the real record. The discovery is AI-driven; the verdict is not — no model sits in the trust path, and verify runs with no key.
Three stages of research · one grounding layer ▸
Hypothesis
假说Is the idea grounded, and genuinely new?
scan prior art · gap · verify its citations
liveExecution
执行Is the work real, and does it reproduce?
verify data & code provenance · reproducibility
research previewReview
审查Does it hold up to scrutiny?
verify citations · find missing prior art · draft review
live$ pip install deltasci
Watch the room ground an idea — live.
One run of the whole flow in motion: scan the real prior art, read the gap, answer the one handoff only you can — then verify every citation against the record, with a fabricated one caught on the spot. Scripted and illustrative; the verdicts are exactly what deltasci verify returns.
Discovery (scan · gap) is AI-driven; verify runs from your terminal (deltasci verify), an MCP client, or a hosted Space — deterministic, no LLM, no key. Verdicts: PASS · FABRICATED · METADATA-MISMATCH · UNSUPPORTED.
Start by seeing what already exists.
Scan pulls the closest existing work from OpenAlex, arXiv, PubMed and GitHub — every result a real, clickable record. Gap reads that retrieval and tells you how crowded the space is. This is the discovery layer: keyless on its own, and far sharper when an agent drives the queries and ranking — read it as a fast first pass on novelty, not the verdict.
▷ scan · closest real work
▷ gap · how crowded is it?
Top overlap 67% · 1 close work · 6 retrieved. Crowding is read from the real records above — it flags adjacent work; it doesn't judge whether your idea is novel.
the read is held at INCONCLUSIVE — it won't call a space empty when it couldn't look.
Four reads: CROWDED · CONTESTED · OPEN · INCONCLUSIVE. Finding a close match is robust; calling a space open is not — so an open read is downgraded to inconclusive whenever a scholarly source didn't respond. deltasci scan · deltasci gap.
A citation that looks fine can be wrong.
The DOI resolves, the PMID looks real, the title reads right — and it still points to the wrong year, the wrong paper, or a study that never made the claim it's attached to. Whether it came from a model, a reference manager, or memory at 2 a.m., it sails past a glance, past a co-author, sometimes past a reviewer.
How citations go wrong
- Fabricated PMIDs / DOIs that look perfectly real
- A real paper cited for a claim it never makes
- Wrong year, wrong author, transposed digits
- You find out at submission. Or never.
After the verifier
- Every identifier fetched from the real record
- Fabricated IDs & metadata mismatches flagged
- The cited paper checked against the actual claim
- A per-citation verdict, in seconds, no LLM key
Three checks on every citation.
For each PMID, DOI, arXiv ID, GitHub repo or dataset accession: does it exist, does its metadata match what's claimed, and does the cited paper actually support the sentence it's attached to? A fabricated or mis-cited reference gets a FAILED AUDIT showing the claim next to what's really there.
It exists
The identifier is fetched from PubMed / Crossref / OpenAlex / DataCite / GitHub. No record at that ID → FABRICATED.
deterministicMetadata matches
Title, authors and year at that identifier are compared to what the text claims. A mismatch is flagged, not waved through.
deterministicIt supports the claim
The cited paper's own abstract is checked against the sentence citing it — catching a real paper used for a claim it never makes.
deterministicWhat the AI claimed
"Spatial transcriptomics predicts checkpoint-immunotherapy response in osteosarcoma."
What's actually at PMID 31452104
A 2019 methods paper on bulk RNA-seq normalization — different topic, different year, different journal.
First-pass checks are deterministic — real API lookups plus string comparison, no LLM in the loop — so a FABRICATED verdict means the identifier genuinely did not resolve.
Or check a whole paper.
Real papers cite by number, with the references at the bottom — a pasted paragraph only has "[12]". Drop in a PDF and DeltaScience parses the bibliography, resolves every reference to a real record (even author-year entries, via Crossref + DataCite), and checks each citation in the context of the sentence that cites it.
$ pip install "deltasci[pdf]"
$ deltasci verify --pdf paper.pdf
Or drag a PDF onto the web app for the same per-citation report — each verdict, the in-text sentence it was cited in, and a link to the real record.
Pick a goal, or call a component.
Run a goal end to end, or call verify / scan / gap directly. Verify is the deterministic trust path — no key, no model. Scan / gap are discovery: keyless on their own, and AI-driven when an agent (or the deltasci-ground skill) writes the queries and reasons over the results.
A goal in one command
$ pip install deltasci
$ deltasci workflow grant --file proposal.md
$ deltasci scan --text "my idea…"
$ deltasci verify --pdf paper.pdf --json
As an MCP tool
$ pip install "deltasci[mcp]"
$ claude mcp add deltasci-verify -- deltasci-mcp
Prefer to click? deltasci view opens a browser goal picker at /workflow. Also a Python library — from deltasci import verify_text — and a Claude Code skill. Exit code 2 on any failed audit, so it drops straight into CI. (DeltaScience also has an experimental two-perspective co-reasoning mode, deltasci run — a research preview, not the focus here.)