Research Scan
Type to search documentation.

Find the 5–10 recent papers with the highest impact on a research question, topic or project

An evidence pipeline for a reasoning agent to drive, not an assistant that answers questions. Start from a brief or a one-line question.

Research Scan takes a research question and returns a small, ranked shortlist of papers — each one carrying an argument for why it earned its slot, and a verification record showing that its DOI, title, year and first author were checked against the live record.

It runs on free and pay-per-use scholarly APIs, on any laptop, without an LLM API key in the tool itself.

The work is split in two, deliberately

The two layers of research-scanLayer 1, agent cognition, performs query planning, zero-to-three screening, gap queries and reranking. It communicates with layer 2 through files in a run directory. Layer 2, the research-scan engine, is deterministic and model-free: it retrieves, expands the citation graph, dedupes, counts coverage, shortlists, verifies and emits. The result is a set of evidence objects.LAYER 1 · AGENT COGNITIONSupplied by whatever agent hosts the skill, under written rubricsplan queriesscreen 0–3gap queriesrerankfiles are the interface — a run directory of validated JSONLAYER 2 · RESEARCH-SCAN ENGINEDeterministic · model-free · contains no LLM SDKretrieveexpanddedupecoverageshortlistverifyemitEVIDENCE OBJECTSEvidencePacket JSON + Markdown · every DOI checked against the live record
The model can change without touching the evidence engine. Files in the run directory are the only contract between the two.

The CLI is deterministic and model-free. It retrieves across OpenAlex, Semantic Scholar and arXiv, walks the citation graph, dedups, counts coverage per criterion, shortlists, verifies every DOI against the live record, applies the selection rules and renders the result. It contains no LLM SDK and makes no judgement about a paper.

The agent supplies the cognition. Planning the queries, scoring each candidate 0–3, writing gap queries when coverage is thin, and reranking the shortlist are all model decisions. The skill packages the rubrics they are made against, as plain Markdown; whatever agent hosts it executes them.

Files are the interface between the two halves — the filesystem is the protocol boundary between reasoning and execution, not a storage detail. That is what lets Claude Code, Codex, Cursor or a plain Python loop drive the same chain over the same artifacts.

Why the separation matters

Judgement and retrieval fail in different ways, and fixing them requires different tools. Retrieval fails quietly — a source times out, a cap truncates a pool, a duplicate survives. Those are engineering faults, and the fix is a deterministic pipeline that records every drop and every failure so you can see them.

Judgement fails differently. A model can score a paper generously, or reward a famous venue, or repair a DOI from memory. The fix there is a written rubric, a narrow interface, and metadata the model is never allowed to invent.

Fusing the two hides both. Separating them means the model can change — a better one, a cheaper one, a local one — without touching the layer that decides what counts as a verified record.

What bounds a result

Two things. A purpose decides what a paper has to do to earn a slot.

PurposeA paper earns its place byExample
buildmoving a design or plan decision“What should we know before we design the enrolment flow?”
researchchanging what we believe, what we would test, or how we would measure it“What is the strongest recent evidence that default enrolment affects how much people save?”
orientbeing something a newcomer must know, recent first“I am new to mechanistic interpretability — what must I read, recent first?”

A profile decides how much the scan costs.

ProfilePer queryPool capOut-of-window totalGap round
quick2025012never
standard (default)4045020when coverage is uneven
deep40450 × sources ÷ 230always

Start at standard; use quick for “what is out there” and deep when a miss is expensive. Measured recall for each.

How this differs

Stated as category differences, not as claims about any particular product.

  • No embedded model. The package declares no LLM SDK and makes no model calls. Every judgement belongs to the hosting agent.
  • No vendor lock-in. The interface is files in a run directory, so any agent that can read and write JSON can drive the pipeline.
  • Auditable artifacts. Every drop — retracted, excluded, type-filtered, pool-capped — and every source that failed after retries is counted in manifest.json. Nothing is capped silently.
  • A reproducible pipeline. Stages are idempotent and re-runnable; clocks are injectable, so re-runs are byte-identical.
  • Agent-controlled judgement. The rubrics ship as plain Markdown you can read, edit and disagree with.

Run it

Python ≥ 3.11 and uv.

Terminal window
uvx research-scan doctor # run any command without installing
uv tool install research-scan # or put it on PATH permanently

Then connect an agent. In Claude Code, the plugin installs the skill and configures the MCP server in one step:

/plugin marketplace add Synectic-Research/research-scan
/plugin install research-scan@synectic

For Claude Desktop, Cursor, or anything else that speaks MCP, point the client at uvx research-scan mcp. It talks MCP on stdin and stdout and nothing else, reads no token and needs none, and exposes four tools — scan_start, scan_continue, scan_verify and scan_result — one per decision the pipeline needs from a model. See MCP clients for the config block and where it goes.

You drive it by asking your agent for a scan, not by running a single command: there is no one-shot scan, because the pipeline needs a model’s judgement between stages. Walk through a first scan.

Not for

Systematic reviews. There is no PRISMA trail and no workflow for screening thousands of records.

Manuscript citation management. evidence.bib is a courtesy, not a library. Use a citation manager.

Full-text work. Retrieval and screening run on titles, abstracts and metadata. No PDF is fetched, parsed or read.

Google Scholar, Scopus, Web of Science, PsycInfo are not sources and are not planned: none offers a personal-key API or a ToS-compatible path.

Where to go next

Research Scan is Apache-2.0 and developed in the open at Synectic-Research/research-scan. Contributions are welcome, with one unusual rule: any change to retrieval, expansion, screening caps or selection has to arrive with golden-set eval results. Measured, or reverted — a green test suite is not evidence that a scan finds better papers. How to contribute.