Skip to main content

Tests PyPI Python versions License Docs

mhctools

mhctools is a Python library for running MHC binding, presentation, immunogenicity, and antigen-processing predictors. It provides a common interface to tools such as NetMHCpan and MHCflurry, with results you can inspect in Python or export as a pandas DataFrame.

Read the getting started guide or browse the documentation.

Install and predict

Requires Python 3.11 or later and pandas 3.x.

pip install mhctools
mhctools fetch mhcflurry
from mhctools import MHCflurry

predictor = MHCflurry(alleles=["HLA-A*02:01", "HLA-B*07:02"])
results = predictor.predict(["SIINFEKL", "GILGFVFTL"])

for result in results:
    affinity = result.affinity
    if affinity is not None:
        print(result.peptide, affinity.allele, affinity.value)

Each result corresponds to one input peptide. The affinity accessor selects the strongest prediction across alleles, with IC50 in nM. Use predict_dataframe() for a pandas table or predict_proteins() to scan protein sequences. See results and DataFrames.

Most predictors need model weights or an external installation. Use mhctools ls to locate models and mhctools predictors to check which can run. The installation guide explains downloads, optional backends, and licensing.

Guides

Development

./develop.sh
./lint.sh
./test.sh

See the testing guide and release instructions.

Metadata

Release files for mhctools 4.5.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mhctools 4.5.1
File Size Uploaded Provenance Actions
mhctools-4.5.1.tar.gz 1.2 MB Without provenance Details for mhctools-4.5.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for mhctools 4.5.1
File Interpreter ABI Platform Actions
mhctools-4.5.1-py3-none-any.whl Python 3 none any Details for mhctools-4.5.1-py3-none-any.whl

Total release size: 2.1 MB

Release files / mhctools-4.5.1.tar.gz

Download URL mhctools-4.5.1.tar.gz
Size 1.2 MB
Tags Source
SHA-256 checksum
How to use checksums
5e5265f229eae9b615e7953331529447d1265b3aa49aeadf30414a534ae69bee
BLAKE2b-256 checksum
How to use checksums
fa0581279d75e16b4d79e44645823419abcd0ac95a6c65ff70d911a7c48027df
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.6

Release files / mhctools-4.5.1-py3-none-any.whl

Download URL mhctools-4.5.1-py3-none-any.whl
Size 892.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e5831661d7b50012a63ee6cb9cce6a0988534a27b75acf559593cc3abe4af1f6
BLAKE2b-256 checksum
How to use checksums
8823a53de87f5b16f336bc7c5ceb8db16f26ed8bdf1bbe5c37648c910d5e3545
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.6

Security for mhctools 4.5.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

4.5.1 This release

2 release files No provenance

0.0.0

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page