MSFragger is an ultrafast database search tool for peptide identification in mass spectrometry-based proteomics. It has demonstrated excellent performance across a wide range of datasets and applications. The speed of MSFragger makes it particularly suitable for the analysis of large datasets (including TIMS-TOF data), for enzyme unconstrained searches, and for ‘open’ database searches (with the precursor mass tolerance set to hundreds of Daltons) for identification of modified peptides.
MSFragger is implemented in the cross-platform Java programming language, and can be used three different ways:
- With FragPipe GUI (Graphical User Interface)
- Through ProteomeDiscoverer
- As a standalone Java executable (JAR) file
MSFragger writes output in either tabular or pepXML formats, making it fully compatible with downstream data analysis pipelines such as Trans-Proteomic Pipeline and Philosopher. See the complete documentation, including a list of Frequently Asked Questions. Example parameter files can be found here.
Supported instruments and file formats
mzML/mzXML: Data from any instrument in mzML/mzXML format can be used.
Thermo RAW: MSFragger can read Thermo raw files (.raw) directly. FragPipe has limited support for RAW files (no MS1-based label-free quantification), so conversion to mzML is recommended. The MSFragger ProteomeDiscoverer (PD) node is fully compatible with all downstream PD tools.
Bruker TIMS-TOF: MSFragger can read Bruker timsTOF raw files (.d) directly, as well as MGF files converted by Bruker DataAnalysis. Quantification requires .d files.
TIMS-TOF data requires Visual C++ Redistributable for Visual Studio 2017 in Windows. If you see an error saying cannot find Bruker native library, please try to install the Visual C++ redistibutable.
Whether you run use FragPipe, PD, or the command line, you will need to download the latest MSFragger JAR file. See instructions for downloading or upgrading MSFragger.
The latest version of MSFragger was released on 2020-06-05. Check here for the full list of MSFragger versions and changes.
FragPipe includes post-database search tool Philosopher (for downstream analysis with PeptideProphet and ProteinProphet), label-free and label-based quantification, FDR filtering, and report generation (at the PSM/ion/peptide/protein-levels). Additional tools (currently supporting Thermo data in mzML/mzXML format only) include DIA-Umpire SE module for DIA data, PTM-Shepherd for generating global PTM profiles, and SpectraST-based spectral library building module.
MSFragger and Philosopher (PeptideProphet) are also available as processing nodes in Proteome Discoverer (PD, Thermo Scientific). Currently, the MSFragger-PD node can be used in PD versions 2.2, 2.3 and 2.4.
Please visit our PD-Nodes page for more information.
See Launching MSFragger on the Wiki page.
Complete command line analyses can be performed with Philosopher, see this tutorial for a step-by-step example.
For technical documentation on MSFragger (hardware requirements, search parameters, etc.), see the MSFragger Wiki page. Tutorials for common MSFragger-related workflows are listed below.
- FragPipe setup
- Using FragPipe
- Glycoproteomics with MSFragger
- Linux shell/command line workflow
- Converting LC/MS data files to mzML
- Running MSstats on timsTOF data
- Importing results to Skyline
Questions and Technical Support
See our Frequently Asked Questions (FAQ) page. Please post all questions/bug reports regarding MSFragger itself on the MSFragger GitHub page, or if more appropriate on FragPipe page or Philosopher page.
Requests for Collaboration
If you would like to propose a new collaboration that can take advantage of MSFragger and related tools, please contact us directly.
How to Cite
Kong AT, Leprevost FV, Avtonomov DM, Mellacheruvu D, Nesvizhskii AI. MSFragger: ultrafast and comprehensive peptide identification in mass spectrometry-based proteomics. Nature Methods 14:513–520 (2017). Manuscript.
For other tools developed by the Nesvizhskii lab, see our website www.nesvilab.org
The pepXML files produced by MSFragger may have additional attributes (e.g.,
ion_mobility) not in the original schema. According to our tests, both PeptideProphet and Philosopher can process those additional attributes.