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.6.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.6.1
File Size Uploaded Provenance Actions
mhctools-4.6.1.tar.gz 1.2 MB Without provenance Details for mhctools-4.6.1.tar.gz

Built distribution (wheel)

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

Total release size: 2.1 MB

Release files / mhctools-4.6.1.tar.gz

Download URL mhctools-4.6.1.tar.gz
Size 1.2 MB
Tags Source
SHA-256 checksum
How to use checksums
db16a14f0ee877fc13e1fbdd7a8bbb8f4e4b31355a85bfc7afb2c64ad22c06f4
BLAKE2b-256 checksum
How to use checksums
6ded07a8ed7399fe13df2b873ce6d83dd34399f9160b22e0c0828bc1c89a8d33
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.6.1-py3-none-any.whl

Download URL mhctools-4.6.1-py3-none-any.whl
Size 895.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fabdcd705c3a7c8042c652ef65c2faabf8c22db632fe8d81c3f50dd49293d35b
BLAKE2b-256 checksum
How to use checksums
3d5e6969196471ece308ee86f93adebf3a291e631e01153c5dbadf272ddebbe2
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.6.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.6.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