MS²PIP Server

MS² Peak Intensity Prediction

MS²PIP is a tool to predict MS² signal peak intensities from peptide sequences. It employs the XGBoost machine learning algorithm and is written in Python.

You can install MS²PIP on your machine by following our extended install instructions found on the MS²PIP GitHub repository. For a more user friendly experience, we created this web server. Below, you can easily upload a list of peptide sequences, after which the corresponding predicted MS² spectra can be downloaded in a CSV or MGF file format.

If you use MS²PIP for your research, please cite the following papers:

  • Degroeve, S., Maddelein, D., & Martens, L. (2015). MS2 PIP prediction server: compute and visualize MS2 peak intensity predictions for CID and HCD fragmentation. Nucleic Acids Research, 43(W1), W326–W330.
  • Degroeve, S., & Martens, L. (2013). MS²PIP: a tool for MS/MS peak intensity prediction. Bioinformatics (Oxford, England), 29(24), 3199–203.

How to


MS²PIP takes a PEPREC (Peptide Record) file as an input. This is a space-separated file that lists all peptides. To run our server smoothly, we limit the number of peptides to 5000. If you need to predict more peptide spectra, we recommend you to split-up your dataset into multiple batches, or to download MS2PIP from GitHub and run it locally.

A PEPREC file contains the following columns:

  • spec_id: A unique ID for the peptide.
  • peptide: Peptide sequence.
  • modifications: PTMs for the given peptide. Every modification is listed as name|location, separated by a pipe (|) between the name, the location and other PTMs. The location is an integer counted starting at 1 for the first AA. 0 is reserved for N-terminal modifications. Name has to correspond to a preset or custom PTM (see below) . Unmodified peptides are marked with a hyphen (-).
  • charge: Precursor charge of the peptide.

Example of a PEPREC file:

spec_id modifications peptide charge
peptide1 - ACDE 2
peptide2 2|Carbamidomethyl ACDEFGHI 3
peptide3 0|iTRAQ|10|Oxidation ACDEFGHIKMNPQ 2


A list of all modifications and the corresponding mass shifts is needed for MS²PIP to properly calculate the fragmentation peak m/z values. You can select some preset modifications below or provide your own list. For the preset modifications, we use the PSI-MS names and monoisotopic mass shifts from Unimod. This means that, if you use these preset modifications, the modification names in your PEPREC file need to match the Unimod PSI-MS names. If MS2PIP encounters a modification in the PEPREC file that is not provided in the modifications list, it will skip that peptide.

If you provide your own list of modifications, each line can only contain one modification, with the following comma-separated properties:

  • PSI-MS Name
  • Monoisotopic mass shift
  • Amino acid one-letter code, N-term or C-term

If a certain modification occurs on different amino acids, every modification-amino acid combination should have it's own entry and have a unique name (eg PhosphoS, PhosphoT and PhosphoY). N- and C-terminal modifications can be added in the same way, but require N-term or C-term instead of an amino acid code.

Example a of custom modification list:


Run MS²PIP Server

Select preset modifications

Upload your PEPREC file

(*) To run MS2PIP Server, please use Mozilla Firefox. Google Chrome and Microsoft Edge are known to show an endless progress bar. We are actively working on fixing this issue.


For any further questions, feedback or suggestions, you can contact one of the following people: