MHCflurry

July 24, 2026 ยท View on GitHub

Build Status Coverage Status Open In Colab

MHCflurry

MHCflurry predicts which peptides are likely to be displayed by MHC class I molecules. It provides pretrained models for three related tasks:

  • Binding affinity: how strongly a peptide binds an MHC allele.
  • Antigen processing: whether cellular processing favors the peptide.
  • Presentation: a combined score using binding and processing predictions.

You can use the released models from the command line or Python, scan proteins for candidate epitopes, or train models on your own data.

Quick start

Install MHCflurry, including prereleases, and download the pretrained presentation models:

pip install --upgrade --pre mhcflurry
mhcflurry downloads fetch models_class1_presentation

Omit --pre to install the latest stable release.

Predict a few peptides:

mhcflurry predict \
    --alleles HLA-A0201 HLA-A0301 \
    --peptides SIINFEKL SIINFEKD SIINFEKQ \
    --out predictions.csv

Or scan a protein sequence for candidate ligands:

mhcflurry predict-scan \
    --sequences MFVFLVLLPLVSSQCVNLTTRTQLPPAYTNSFTRGVYYPDKVFRSSVLHS \
    --alleles 'HLA-A*02:01' \
    --out scan.csv

To try MHCflurry without installing anything, open the Colab notebook.

The historical mhcflurry-* command names remain supported for existing scripts. See the 2.3.0 release notes for details.

Documentation

Please file an issue if you have questions or encounter problems.

Citing MHCflurry

If you use MHCflurry in your research, please cite:

T. O'Donnell, A. Rubinsteyn, U. Laserson. "MHCflurry 2.0: Improved pan-allele prediction of MHC I-presented peptides by incorporating antigen processing," Cell Systems, 2020. https://doi.org/10.1016/j.cels.2020.06.010

T. O'Donnell, A. Rubinsteyn, M. Bonsack, A. B. Riemer, U. Laserson, and J. Hammerbacher, "MHCflurry: Open-Source Class I MHC Binding Affinity Prediction," Cell Systems, 2018. https://doi.org/10.1016/j.cels.2018.05.014

Development

Contributions are welcome. Start with CONTRIBUTING.md; the testing guide describes the fast local checks and full suite.

Docker

Run the latest image from Docker Hub:

docker run -p 9999:9999 --rm openvax/mhcflurry:latest

Then open http://localhost:9999 to use the included Jupyter environment. To build the image from a checkout:

docker build -t mhcflurry:latest .
docker run -p 9999:9999 --rm mhcflurry:latest

More resources