Skip to content

SOLUTIONS

AI reviewer for data availability and accessions

A prebuilt custom agent that checks GEO, SRA and dbGaP accessions, genome build, tool versions and code availability before you submit an omics manuscript.

Built by NIH-funded cancer researchers

Affiliations

Built by researchers funded by leading cancer-prevention institutions

  • University of Utah
  • Huntsman Cancer Institute
  • National Cancer Institute
  • American Cancer Society

Current platform

A review workflow built around the decisions only the author can make

PerfectPaper now carries context from setup through research, revision, and export—without turning the paper into a generic writing prompt.

Prepare

Tell the review what the paper cannot

Author interview

PerfectPaper asks targeted questions about design decisions and fixed constraints before review, then carries your answers into the critique.

Journal-aware setup

Search the journal catalogue, choose up to three targets, and compare compatible open-access journals before the review starts.

Your own review panel

Brief up to three custom reviewers, declare ground truths, attach instructions, and choose standard or deep-research depth with specific tools.

Investigate

Read the evidence as a connected whole

Methods, claims, citations, and visuals

Specialist reviewers inspect the full paper in context, including figures and tables—not isolated paragraphs.

Cited research

Deep-research reviewers can search the web and scholarly literature, inspect sources, and attach vetted citations to research-backed findings.

Visible review progress

The reading room shows which review areas are working, which findings have arrived, and when a research step could not complete.

Revise

Turn critique into a submission-ready draft

Anchored reading room

Move between each comment and its passage, read your paper as you wrote it in Word, filter feedback, and discuss any finding.

Apply, track, and undo

Preview suggested revisions, apply accepted changes, keep an edit history, and reverse a change without losing the review trail.

Submission exports

Export the revised paper and saved feedback as DOCX, annotated PDF, or print view, and prepare an anonymous copy for blinded review.

A custom AI reviewer for data availability and accession numbers

PerfectPaper’s data availability agent reads an omics manuscript for the reproducibility items that cause a return before peer review: missing repository accessions, an unstated genome build, software named without versions, parameters left to the reader’s imagination, and a data availability statement that promises less than the journal requires. Copy the brief below into a custom agent slot.

Data availability is the easiest reviewer objection to prevent and among the most common to trigger. An editor who cannot find your accession number does not send the paper out.

When to use this agent

Run the data availability agent when any of the following describes the submission in front of you:

  • You are preparing a sequencing, array, proteomics or metabolomics manuscript for submission
  • Your data availability statement was written quickly and has not been checked against the paper
  • The analysis used a pipeline assembled over several years by several people
  • A previous submission was returned with a request for accessions or code
  • You are the corresponding author and did not personally run the alignment

Frequently asked questions

What is an AI reviewer for data availability and accession numbers?

An AI reviewer for data availability is a custom PerfectPaper agent briefed to check reproducibility reporting rather than science: repository accessions for every dataset in the methods, the genome build and annotation release, software versions, non-default parameters, code location, and whether the data availability statement covers everything the paper generated.

Should I run this before I submit, or wait until a reviewer asks?

Run the data availability agent before submission. Reporting gaps such as a missing accession or an unversioned tool are caught by an editorial technical check that happens before peer review even starts, so fixing them after a reviewer asks costs a full revision cycle. The brief works equally well on a near-final draft, provided the methods already name every dataset and tool.

The agent brief

Paste this into a custom agent. Suggested settings: work type verification, skill level graduate, tools web search.

Name: Data availability and resource identification

You are reviewing an omics manuscript for reproducibility reporting. Your job
is to determine whether an independent group could obtain the data and repeat
the analysis from what the manuscript states.

Check each of the following and report what is missing:

1. Repository accessions. Every dataset generated for this study should have a
   named repository and an accession identifier: GEO or ArrayExpress for
   expression and epigenomic arrays, SRA or ENA for raw sequence, dbGaP or EGA
   for controlled-access human data, PRIDE for proteomics, MetaboLights or
   Metabolomics Workbench for metabolomics. Report any dataset described in
   methods with no accession. Report accessions given in a format that does not
   match the repository's own pattern.

2. Reused data. Where the study analyses data generated elsewhere, check that
   the source accession and the original publication are both cited.

3. Reference genome and annotation. Identify the genome build and the
   annotation release used. A build named without a version, or two analyses
   that appear to use different builds, should both be reported.

4. Software versions. List every named tool. Report each one given without a
   version number. Report any analysis step described without naming the tool
   that performed it.

5. Parameters. For alignment, peak calling, quantification, normalisation and
   differential testing, determine whether non-default parameters are stated.
   Report steps where the description is too general to repeat.

6. Code. Determine whether analysis code is available, and where. A statement
   that code is available on request should be reported as insufficient for
   most journal policies.

7. Data availability statement. Compare what the statement promises with what
   the methods describe generating. Report any dataset covered by the methods
   but not the statement.

Where identifiers are present, use web search only to confirm that the
identifier format matches the named repository. Do not assert that a specific
accession does or does not exist, and do not attempt to retrieve its contents.

Report each gap with the exact location and the specific item to add.

Note the constraint in the last paragraph. It is there deliberately: an agent asked to confirm that an accession resolves will sometimes report a real identifier as missing, which is worse than not checking. Embargoed GEO series, dbGaP studies still in curation and ENA records held until a release date are all invisible to a search engine while being entirely legitimate, so a resolution check produces confident false positives on exactly the manuscripts that did the deposition properly.

What this agent catches

The data availability agent catches five recurring gaps between what an omics manuscript reports and what a repository, editor or reproducing reader requires, ranging from a dataset with no accession at all to a statement that promises less than the methods actually generated.

Failure Consequence
Dataset in methods with no accession Return without review at most journals
Genome build unstated Coordinates in tables cannot be interpreted
Tool named without a version Analysis is not reproducible as described
Code available on request Fails the policy at a growing number of journals
Availability statement narrower than the methods Editor query, then a delay

Why a missing accession stops a manuscript before an editor reads it

A missing accession is caught by editorial staff at the technical check, which happens before the handling editor sees the science and which runs from a checklist rather than from judgement. The person performing that check is not evaluating whether your differential expression analysis is sound; they are confirming that a named repository and an identifier appear somewhere in the manuscript. A blank in that box returns the file to you with the status unchanged, which is the mechanism behind most cases of being desk rejected without review on an omics paper that had no scientific problem at all.

The policy layer behind that checklist is written down and enforceable. The ICMJE Recommendations have required a data sharing statement in every submitted manuscript reporting the results of a clinical trial since 1 July 2018, and require trials that begin enrolling participants on or after 1 January 2019 to describe their data sharing intentions in the trial registration itself. PLOS asks for a data availability statement that names the repository holding the data and supplies the accession number, DOI or other persistent identifier a reader would need to retrieve it, rather than a general assurance. The NIH Data Management and Sharing Policy took effect on 25 January 2023 and applies to competing applications submitted for that receipt date and after, so most current US-funded omics work carries a written sharing commitment that a reader can hold up against the paper.

Prevention takes one pass. Recovery takes a resubmission cycle, and at journals that treat a returned manuscript as a new submission it takes your place in the queue as well. See how journals screen submissions at scale for what else is checked in the same pass.

Which repository takes which data, and what its accessions look like

Repository choice follows data type and consent status, and each repository stamps its records with a recognisable prefix. The agent uses these patterns to distinguish a typo from a placeholder that was never replaced.

Data type Repository Accession shape
Processed expression, methylation and epigenomic series GEO (NCBI) GSE for a series, GSM for a sample, GPL for a platform
Functional genomics submitted in Europe ArrayExpress, now in BioStudies E-MTAB- followed by digits
Raw sequencing reads SRA or ENA run ERR, SRR or DRR plus six or more digits; project PRJEB, PRJNA or PRJDB
Biological samples BioSample or ENA samples SAMEA, SAMN or SAMD plus digits, or ERS, SRS or DRS plus six or more digits
Controlled-access human data, United States dbGaP phs followed by six digits, then a .v version and .p participant-set suffix
Controlled-access human data, Europe EGA EGAS for a study, EGAD for a dataset
Mass-spectrometry proteomics PRIDE via ProteomeXchange PXD followed by digits
Metabolomics MetaboLights or Metabolomics Workbench MTBLS or ST followed by digits
Bioimaging BioImage Archive or IDR study accession assigned on deposit
Flow cytometry FlowRepository experiment identifier assigned on deposit

Those patterns are the ENA’s own published accession formats, expressed in its documentation as regular expressions such as (E|D|S)RR[0-9]{6,} for a run and PRJ(E|D|N)[A-Z][0-9]+ for a project, and the letter in each encodes the INSDC partner that issued it: E for ENA, D for DDBJ, and S for NCBI in the run and secondary-sample series — N for NCBI in the PRJ and SAM series. That detail matters in practice, because a manuscript that cites SRR numbers alongside a PRJEB project is quoting records issued by two different INSDC partners, and a reviewer will ask which record is authoritative.

A project accession and the run accessions beneath it answer different questions. PRJNA, PRJEB and PRJDB identify the umbrella study; the SRR, ERR or DRR accessions beneath it identify the sequencing runs a pipeline actually reads. The ENA’s own guidance is to cite the top-level project accession, and that is the right primary citation — but it does the job only when the project holds this paper’s data and nothing else. Where a project accumulates runs across several experiments or several papers, a reader who follows it lands on a study page listing dozens of runs with no indication which ones this analysis used, and the identifier stops doing the work an identifier is for. Cite the project, then say which runs, in a supplementary table if the list is long.

The most common formatting failure is not a wrong prefix but a dropped version. phs000178 and phs000178.v11.p8 are not interchangeable: the participant set determines who is in the cohort you analysed. Cite the version. The same applies to reused GEO series, where the sample list of a series can grow after publication. For raw reads specifically, list the run accessions or the project accession, not a folder name from your institutional cluster. Flow cytometry and imaging deposits have their own reporting conventions, covered in flow cytometry reporting and image quantification.

Common questions about accession numbers and repositories

Reviewer says my accession number doesn’t work — what do I do?

First check the version and prefix character-for-character against the repository’s own pattern — a dropped digit or a stray letter accounts for most of these. If the number is correct but embargoed, state the release date and, for GEO or PRIDE, supply the reviewer token or account the repository issues; ENA and SRA offer no equivalent private-review route, so state the release date instead.

I don’t know which repository my data goes in — GEO, SRA, or somewhere else?

Repository choice follows data type, not preference: processed expression and epigenomic data go to GEO or ArrayExpress, raw sequencing reads to SRA or ENA, controlled-access human data to dbGaP or EGA, proteomics to PRIDE, and metabolomics to MetaboLights or Metabolomics Workbench. Journal instructions and consent terms decide the exact venue when a dataset could plausibly fit more than one.

Do I need both a BioProject and a GEO or SRA accession, or just one?

They identify different things, so cite the project and then say which runs. A BioProject (PRJNA, PRJEB or PRJDB) is the umbrella study, and the top-level project accession is what the repositories themselves ask you to cite; a GEO series (GSE) or the run-level SRA/ENA accessions (SRR, ERR, DRR) beneath it identify the actual data a pipeline reads. The project alone is enough only when it contains this paper’s data and nothing else — otherwise a reader cannot tell which runs, among possibly dozens, this analysis used.

Why won’t the agent just check whether my accession actually resolves?

Because that check produces confident false positives on exactly the manuscripts that did the deposition properly. Embargoed GEO series, dbGaP studies still in curation and ENA records held until a release date are all invisible to a search while being entirely legitimate, so the agent confirms only that an identifier’s format matches its named repository and never asserts that a specific accession does or does not exist.

Why “available on request” is treated as non-compliance

“Available from the corresponding author on reasonable request” has been measured, and it does not work. Gabelica, Bojčić and Puljak analysed 3,556 articles published in a single month across 333 BioMed Central open-access journals (Journal of Clinical Epidemiology 2022;150:33–41); 3,416 contained a data availability statement, and the most frequent category, at 42%, said the data were available on reasonable request. Among the 1,792 manuscripts whose statement indicated the authors were willing to share, 1,669 (93%) either did not respond or declined, and only 123 (6.8%) provided the requested data.

The failure worsens with time rather than resolving. Vines and colleagues requested datasets from 516 articles published between 2 and 22 years earlier (Current Biology 2014;24:94–97) and found that, among the papers whose authors gave the status of their data, the odds of a dataset still being extant fell by 17% per year, while the odds of finding a working email address for the first, last or corresponding author fell by 7% per year. A promise attached to a mailbox is a promise with a half-life.

Journals have responded by narrowing where the phrase is permitted rather than banning it outright. PLOS, for example, allows availability on request in the specific situation where the data cannot be shared publicly because they are human participant data or otherwise sensitive. That is a carve-out for consent and privacy, not a general escape hatch for an omics dataset that could have gone into GEO. The agent flags every instance so that you make the distinction deliberately, before an editor makes it for you. The consent side of that judgement is treated separately in ethics and data sharing review.

The distinction that trips up otherwise careful authors is timing rather than substance. A data availability statement submitted with the manuscript may legitimately say deposition will be completed on acceptance, since a journal cannot expect embargoed data to be public before peer review; the same statement at publication must instead name a resolvable accession. Treating the submission-stage placeholder as the final answer, rather than updating it, is the gap this agent flags most often at revision, not at first submission.

Common questions about data availability statements

How do I check my data availability statement before submitting?

Reconcile the data availability statement against the methods, rather than rereading it in isolation. List every dataset the paper generates, list every dataset it reuses with an accession and source publication, and confirm each line appears in the statement. Then open every URL in the statement from a browser session where you are not logged in.

Will “data available upon reasonable request” get my paper rejected?

Not automatically, but the phrase is the single most common cause of an editor query, and it fails outright at journals and funders that now require deposition in a recognised repository before acceptance. Gabelica and colleagues found that among 1,792 manuscripts whose statement promised data on request, 1,669 (93%) either did not respond or declined when the data were actually requested.

Can I just say data are available on request if it’s human genomic data?

Only when public deposition would breach participant consent or privacy, and only through a controlled-access repository, not a plain mailbox. PLOS, for instance, permits on-request language specifically for human-participant or otherwise sensitive data; the correct action is still to deposit in dbGaP or EGA, which issue an accession while a Data Access Committee governs who receives it, rather than to route requests through an author’s inbox.

Genome build and annotation release are two separate facts

A genome build and an annotation release are different objects, and naming one does not name the other. The build fixes the coordinate system; the annotation release fixes which intervals are called genes, which transcripts exist, and what each is named. Two analyses on GRCh38 using GENCODE releases a year apart will return different gene counts from the same reads, so “2,431 differentially expressed genes” is not a reproducible number until both are stated.

State the build with its patch where the patch matters, and state the annotation source with its release number: GENCODE release, Ensembl release, or RefSeq annotation release. The current human reference is GRCh38.p14, released in February 2022, and the Genome Reference Consortium has signalled no near-term coordinate-changing successor while pangenome work proceeds, so GRCh38 coordinates are likely to remain current for some time. Many clinical and legacy pipelines still run on GRCh37, also called hg19, and T2T-CHM13 assemblies appear in newer work; a manuscript that says only “the human genome” is compatible with all three.

The failure mode is silent and lands in your supplementary tables. A peak reported at chr7:5,527,151 names different sequence under hg19 and hg38, and a reader who guesses wrong will map your result to the wrong gene. Chromosome naming compounds it: UCSC-style chr1 and Ensembl-style 1 are not interchangeable, and a pipeline that mixed them usually failed silently on a subset of intervals rather than erroring. liftOver and CrossMap can move coordinates between builds, but both drop a fraction of intervals and relocate others, and neither can run at all if the source build is unstated. Two analyses in the same paper on different builds is the version of this that the agent reports most often, typically when a public dataset was reused without being remapped — see batch effects and replicate structure for the analytic consequence.

One further wrinkle applies even when two groups agree on GRCh38 by name: the primary assembly and the full analysis set that adds ALT, decoy and HLA sequence are not the same reference. The primary assembly — chromosomes plus unlocalised and unplaced contigs — is the recommended reference for ordinary analyses. ALT contigs hold long clustered variation that is largely near-identical to sequence already in the primary assembly, which is precisely why adding them changes mapping: a read that mapped uniquely now matches two nearly identical places, and an aligner that is not ALT-aware answers by assigning mapping quality zero. Those reads, and any variants carried on them, drop silently out of a pipeline that filters on mapping quality. HLA, immune-locus and structural-variant work generally wants the ALT-aware route; most other work wants the primary assembly. Either is defensible. Not saying which file was indexed is not.

Software versions and parameters: what counts as reproducible

A tool name without a version is not a method, because tool behaviour changes between releases. Report the version string the tool itself prints, and where the field has assigned one, the RRID from the Resource Identification Initiative — software identifiers take the form RRID:SCR_ followed by digits, and they survive a tool being renamed or moved.

The parameter question is narrower than authors expect: state the non-default parameters, and say explicitly that the rest were defaults. Reviewers do not need your full command line for a stock run; they need to know that the run was stock. The steps where non-defaults change conclusions are consistent across omics manuscripts:

  • Alignment: multimapping policy, mismatch tolerance, and for spliced aligners the annotation supplied at index build, which is a different file from the annotation used for counting.
  • Quantification: whether counts came from a splice-aware counter, a selective-alignment quantifier, or a transcript-level estimator, and how transcript estimates were aggregated to genes.
  • Filtering: minimum count and minimum sample thresholds, and for single-cell work the mitochondrial fraction cutoff, the minimum genes-per-cell, and the doublet-detection method.
  • Normalisation: the specific method named, since median-of-ratios, TMM, quantile and CPM are not equivalent and are frequently reported only as “normalised”.
  • Differential testing: the design formula in full, including every covariate and interaction, and the shrinkage or moderation applied.
  • Multiple testing: the correction procedure and the threshold, which is the subject of multiple testing and enrichment review.
  • Randomness: the seed for any stochastic step — clustering, dimensionality reduction, bootstrapping, permutation-based enrichment — because a figure that cannot be regenerated is a figure a reviewer cannot check.

For code, a repository link is the minimum and an archived, versioned snapshot is the standard. A GitHub URL points at a branch that will change; a DOI-bearing deposit in Zenodo, or an archive in Software Heritage, points at the state of the code when the paper was written. Where the environment matters, deposit the environment specification, and prefer a container image digest over a mutable tag. A version number also has a second, quieter failure mode, and STAR is the clearest illustration. STAR carries a versionGenome parameter that its own default file describes as the earliest genome index version compatible with that release, and several releases — 2.7.0b, 2.7.1a and 2.7.4a among them — state in their release notes that they require the genome indexes to be re-generated. The index is therefore a versioned artefact in its own right, and it need not have been built by the binary that ran the alignment. A reader who reruns your pipeline with a newer STAR against an index built by an older one is stopped by a compatibility error rather than led into a silent difference in results, which is the benign version of this problem. The fix in the manuscript is one clause: state the version that built the index alongside the version that ran the alignment. A public code repository with no open-source license attached is a narrower form of the same gap as no repository at all: the code is visible but not legally reusable, which a growing number of journal policies now check as a separate item from availability itself.

Questions about genome build, software versions and code

Does it matter if I just wrote “the human genome” without saying which build?

Yes. An unstated genome build is one of the gaps this agent detects most reliably, because the absence is purely textual: GRCh38, GRCh37/hg19 and T2T-CHM13 assign different coordinates to the same locus, so a peak or variant position stays uninterpretable until the build is named — and the annotation release (GENCODE, Ensembl or RefSeq) still needs stating separately, since it defines the gene set independently of the coordinate system.

Do I really need a version number for every single tool I used?

Yes, for every tool that affects the reported result, because behaviour changes between releases even when the command line does not. Where a field has assigned one, add the RRID (RRID:SCR_ followed by digits) alongside the version, since an RRID survives a tool being renamed or moved to a new URL, which a bare version string does not.

My code is on GitHub — isn’t that enough for “code availability”?

Not on its own, for two reasons. A GitHub URL points at a branch that keeps changing, so it does not fix the code as it existed when the paper was written — an archived, versioned snapshot in Zenodo or Software Heritage does. And a public repository with no open-source license attached is visible but not legally reusable, which some journals now check as a separate requirement.

Worked example: one methods sentence, seven gaps

Consider a methods sentence of a kind that appears in submitted manuscripts every week: “Reads were aligned to the human genome using STAR and differentially expressed genes were identified with DESeq2 (adjusted p < 0.05).”

The agent reports seven distinct gaps from that sentence alone. The build is unnamed, so no coordinate in the paper is interpretable. The annotation release is unnamed, so the gene set is undefined. STAR has no version. No non-default alignment parameters are stated, and no statement that defaults were used. DESeq2 has no version. The design formula is absent, so the reader cannot tell whether batch, sex or donor was in the model. The adjustment method behind “adjusted p” is unnamed, and Benjamini–Hochberg, Benjamini–Yekutieli and Bonferroni give materially different gene lists at the same nominal threshold. An eighth item usually follows from the same paragraph: the reads themselves have no accession.

The repaired sentence names each of those: reads aligned with STAR at a stated version to GRCh38 with a stated GENCODE release supplied at index build, non-default parameters listed or defaults declared, counts produced by a named counter, differential testing in DESeq2 at a stated version with the design formula written out, Benjamini–Hochberg correction at a stated false discovery rate, and the raw reads deposited under a named project accession. That is roughly forty extra words. It is the difference between a methods section a reader can execute and one they can only admire.

When you cannot deposit publicly

Consent that forbids public release is a reason to use a controlled-access repository, not a reason to have no accession. Individual-level human genotype and sequence data with restrictive consent belong in dbGaP or EGA, both of which issue an accession that appears in your paper while access remains governed by a Data Access Committee. Register the study early: controlled-access submissions involve institutional certification and curation steps that take longer than the interval between finishing a figure and hitting submit.

Where the individual-level data genuinely cannot move, deposit the derived layer that can. Summary statistics, allele frequency tables, count matrices, differential expression results, quality-control metrics and processed peak sets are usually shareable when the underlying reads are not, and depositing them converts an unverifiable claim into a checkable one. State in the data availability statement exactly which layer is where, name the committee or office that grants access, describe the application process in one sentence, and quote the consent limitation from your protocol rather than paraphrasing it. “Data are available from the corresponding author on reasonable request” is the one formulation to avoid for human genomic data, because it names no governance body and, by the evidence above, predicts non-delivery.

For material that is neither publishable nor governed by an existing committee, an institutional repository deposit with restricted access and a DOI still gives an editor something durable to cite. The pattern to aim for in every case is the same: a persistent identifier in the paper, and a named human process behind it.

Deposit before you submit, and give reviewers a way in

Deposit first, submit second, because an accession that does not yet exist cannot be quoted in the manuscript and an accession that exists but is invisible reads to an editor exactly like no accession. GEO, SRA, ENA, PRIDE and their peers all support holding a record private until a release date. Confidential reviewer access is not uniform: GEO issues a reviewer token and PRIDE issues reviewer account credentials, while ENA and SRA document no reviewer-access route at all. Check the repository’s own guidance before promising an editor a way in.

Put that access mechanism where a handling editor will find it: in the data availability statement, in the cover letter, or both. A cover letter that names the accession and supplies the reviewer token removes an entire round of editorial correspondence. Set the public release date to coincide with publication rather than a date you guessed during submission, and check it again at acceptance, because a release date that has silently passed makes an unpublished dataset public and one that never arrives leaves a published paper pointing at a dead record.

Then click every link in your own statement from a browser session that is not logged in. Repository URLs, laboratory websites and code links are the three commonest sources of a broken pointer in an otherwise complete statement, and the failure is invisible to the author, who is always authenticated.

What editors and reviewers actually write

Reviewers rarely write the words “data availability” first; they write the specific version, and each of these comments adds a revision cycle.

“The accession number for the RNA-seq data described in the Methods could not be located in the manuscript.” “The reference genome build is not stated; coordinates in Supplementary Table 3 cannot be interpreted.” “Several software packages are cited without version numbers, and the analysis cannot be reproduced as described.” “The authors state that data are available on request; the journal requires deposition in a public repository prior to acceptance.” “The data availability statement covers the RNA-seq data but not the ATAC-seq data generated in Figure 4.” “The accession provided appears to be a placeholder.” “Custom code is referenced but no repository is given.” “Please state the annotation release used for gene-level quantification.” “The reused dataset is cited by publication only; please provide the original accession.”

The last two are the ones authors most often dismiss as pedantry, and they are the two that most often turn out to change a result. An annotation release determines the gene list; a reused accession determines which samples were actually analysed. Answering them well is a response to reviewers task with a one-line answer and a manuscript edit, provided the underlying facts still exist to be recovered.

How to check your own manuscript in twenty minutes

Run the check as a reconciliation, not a read-through, because the defect is always a mismatch between two parts of the paper.

  1. List every dataset the methods describe generating, one line each, including the ones that only appear in a supplementary figure. Small pilot experiments and validation cohorts are the datasets most often left out of the statement.
  2. List every dataset the paper reuses, with the accession and the original publication for each. A citation to the paper is not a citation to the data.
  3. Diff those two lists against the data availability statement. Every line must appear in both places.
  4. Search the manuscript and supplementary files for genomic coordinates, then confirm that the build governing them is stated in the same document a reader would have open.
  5. Build a tool inventory from the methods, including tools mentioned only in a figure legend, and add the version to each. Anything you cannot recall is a signal that the analysis is already partly unrecoverable.
  6. Open every URL in the statement in a private browser window, and confirm each resolves to what you intended.

The agent performs steps 1 through 5 against the manuscript text in one pass and reports the mismatches with locations. Step 6 is yours, because the agent is instructed not to attempt retrieval. If you are assembling several agents for one submission, how to write a custom reviewer agent covers the brief structure this one uses.

What this agent does not do

The data availability agent checks reporting, not analysis. It does not judge whether your normalisation was appropriate, whether your enrichment background was correct, or whether the replicate structure supports the claim — those are separate agents in the genomics set, and running this one does not substitute for them. It does not choose a repository for you, since journal instructions and consent terms decide that. It does not confirm that an identifier resolves, for the reason stated above. It does not read LaTeX source; manuscripts are reviewed as .docx.

Nor does it replace a data-savvy human reviewer. The agent finds absences reliably and reports them with locations; it cannot tell you that the dataset you deposited is not the dataset you analysed. That check requires someone who ran the pipeline. Because manuscripts are unpublished at this stage, how PerfectPaper handles unpublished research is worth reading before uploading a paper carrying embargoed accessions.

How this differs from the built-in review

The standing team includes a submission-requirements specialist that reads journal-facing requirements, and a reporting-guideline router. Neither is briefed on the specific repository landscape for omics data or on the difference between a genome build and an annotation release. This agent is narrow on purpose, and it is the one most worth running immediately before submission rather than during revision. For the general shape of what journals check on arrival, see journal policies.

Related: multiple testing and enrichment, batch effects, and the genomics cluster.

PerfectPaper reads the methods, the supplementary tables and the data availability statement together, and reports every dataset, tool and coordinate set the manuscript names without an identifier a reader could resolve.

Review my manuscript

Related agents

Four neighbouring agents share a review with this one; you can run three at a time. See AI peer review for genomics for the full set of five omics agents.

Last updated September 10, 2026

A careful read when you need a second opinion.

Upload your paper and receive structured, sourced feedback before you submit.