App Catalog
Sign Up Sign In
Run PaperBLAST on a Protein Sequence


By: jmc


Find papers related to a protein sequence with PaperBLAST.

This is the KBase wrapper for running PaperBLAST.

PaperBLAST is software that finds open access publications related to a gene of interest, based on protein sequence similarity between your gene of interest and a gene described in the publication.


The PaperBLAST database links 401,049 different protein sequences to 723,768 scientific articles. The searches against EuropePMC were last performed on March 26, 2017.

How It Works

PaperBLAST builds a database of protein sequences that are linked to scientific articles. These links come from automated text searches against the articles in EuropePMC and from manually-curated information from GeneRIF, Swiss-Prot, and EcoCyc. As of March 2017, PaperBLAST links over 360,000 different protein sequences to over 700,000 articles. Given this database and a protein sequence query, PaperBLAST uses protein-protein BLAST to find similar sequences with E < 0.001.

To build the database, we query EuropePMC with locus tags, with RefSeqprotein identifiers, and with UniProt accessions. We obtain the locus tags from RefSeq or from MicrobesOnline. We use queries of the form "locus_tag AND genus_name" to try to ensure that the paper is actually discussing that gene. Because EuropePMC indexes most recent biomedical papers, even if they are not open access, some of the links may be to papers that you cannot read or that our computers cannot read. We query each of these identifiers that appears in the open access part of EuropePMC, as well as every locus tag that appears in the 500 most-referenced genomes, so that a gene may appear in the PaperBLAST results even though none of the papers that mention it are open access. We also incorporate text-mined links from EuropePMC that link open access articles to UniProt or RefSeq identifiers. This yields some additional links because EuropePMC uses different heuristics for their text mining than we do.

For every article that mentions a locus tag, a RefSeq protein identifier, or a UniProt accession, we try to select one or two snippets of text that refer to the protein. If we cannot get access to the full text, we try to select a snippet from the abstract, but unfortunately, unique identifiers such as locus tags are rarely provided in abstracts.

We also use manually-curated links between protein sequences and articles:

For the entries from Swiss-Prot and EcoCyc, we provide a short curated description of the protein's function. Most of these entries also link to articles in PubMed.

For more information see the PaperBLAST paper (mSystems 2017) or the code.


PaperBLAST cannot provide snippets for many of the papers that are published in non-open-access journals. This limitation applies even if the paper is marked as "free" on the publisher's website and is available in PubmedCentral or EuropePMC. If a journal that you publish in is marked as "secret," please consider publishing elsewhere.

Omissions from the PaperBLAST Database

Some important articles are missing from PaperBLAST, either because the article's full text is not in EuropePMC (as for many older articles) or because of PaperBLAST's heuristics. If you notice an article that characterizes a protein's function but is missing from PaperBLAST, please notify the curators at UniProt or add an entry to GeneRIF. Entries in either of these databases will eventually be incorporated into PaperBLAST. Note that to add an entry to UniProt, you will need to find the UniProt identifier for the protein. If the protein is not already in UniProt, you can ask them to create an entry. To add an entry to GeneRIF, you will need an NCBI Gene identifier, but unfortunately, many prokaryotic proteins in RefSeq do not have corresponding Gene identifiers.

PaperBLAST was developed by Morgan Price, from the Arkin group at Lawrence Berkeley National Laboratory.

Team members who deployed this App in KBase: John-Marc Chandonia. For questions, please contact us.

Related Publications

App Specification:

Module Commit: d5766145122cb3c73f5d4d2ba0e0343199d9dcb6