https://nf-co.re logo
Join Slack
Powered by
# mhcquant
  • u

    王家文

    11/24/2025, 8:43 AM
    Hi, how to find neoantigens using MHCquant ? In the MHCquant1 paper, it was reported "MHCquant is an integrated data processing pipeline (Figure 1) including a range of different tools from the OpenMS software package (version 2.4).64 The input to the pipeline is four-fold: a set of LC−MS/MS raw files (each LC−MS/MS run in a separate file in mzML format), a protein database (in FASTA format), a variant calling file (VCF format) containing putative neoantigenic mutations and a file specifying the HLA allotypes (in TSV format).". Are there any tutorials on neoantigen discovery ?
    j
    • 2
    • 2
  • u

    王家文

    11/24/2025, 8:50 AM
    I don't see the vcf parameters in MHCquant2 --help
  • u

    王家文

    11/24/2025, 9:22 AM
    The method described above is a bit complicated. We only have three candidate neoantigens, and we know the mutation sites of these neoantigens. In this case, how about manually editing the FASTA file to include our neoantigens?
    j
    • 2
    • 25
  • e

    Emily Southworth

    11/28/2025, 1:52 PM
    Hi there, is there a max for the --number_mods parameter? I'm interested in amino acid substitution, specifically of two amino acids - I've listed all the ones I'm interested in as defined by variable_modifications here https://abibuilder.cs.uni-tuebingen.de/archive/openms/Documentation/nightly/html/TOPP_CometAdapter.html (approx 40!) but I understand the number of mods specified is proportional to compute time!
    j
    m
    • 3
    • 3
  • u

    王家文

    12/12/2025, 6:28 AM
    Hi, Can I use different formats in the samplesheet ?
  • u

    王家文

    12/12/2025, 6:28 AM
    image.png
    j
    • 2
    • 3
  • u

    王家文

    12/12/2025, 6:30 AM
    For example, use raw for one sample, use mzML for the second, use d, d.tar.gz for the third sample, and so on
  • u

    王家文

    12/15/2025, 9:49 AM
    Hi, I want to run nextflow MHCquant in the background with
    nohup
    or
    -bg
    but failed. However, I run it successfully without
    nohup
    or
    -bg
    , so how to run MHCquant2 in background ?
    j
    • 2
    • 1
  • u

    王家文

    12/18/2025, 7:21 AM
    Hi, @Jonas S This time I used the full test datasets and identified several thousands of peptides, but some peptides are duplicated and some have none values. How to explain these explain these results ? Which peptide should I use for downstream analysis ?
    j
    • 2
    • 10
  • g

    GitHub

    01/07/2026, 3:47 PM
    Release - 3.1.0 - BlüBa New release published by jonasscheid ## 3.1.0 - BlüBa - 07/01/26 ###
    Added
    • Added a peptidoform column to the pipeline output #376 • Added Boxplot of intensity distributions to the MulitQC report #382 • Added a config option to hide outliers in box plots, add plot descriptions #387 • Added a
    Fasta
    column to the input samplesheet to enable sample-specific FASTA files #391 • Added a column for unique accessions to the pipeline output #403 ###
    Fixed
    • Fixed an issue with not providing the full process name in conf/base.config #384 • Template update 3.1.1, migrate to nf-test #379 • Fixed the binning of the TICs histogram and move the general stats table to the top of the report #388 • Write out FDR-filtered peptide list in global FDR-mode, instead of 100% FDR list #394 • Update labels for global FDR process configurations #397 • Remove special character '#' from the header of OpenMS TextExporter output #403 • Fixed an issue in the summary process that led the pipeline crash if deeplc was not specified #411 ###
    Dependencies
    | Dependency | Old version | New version | | ---------- | ----------- | ----------- | | EasyPQP | 0.1.51 | 0.1.53 | | Epicore | 0.1.6 | | | MultiQC | 1.28.0 | 1.31.0 | | Nf-core | 3.2.1 | 3.4.1 | | OpenMS | 3.4.0 | 3.4.1 | nf-core/mhcquant
  • j

    Jonas S

    01/07/2026, 3:53 PM
    <!channel> new release ⬆️ party parrot
    l
    • 2
    • 2
  • m

    Marissa Dubbelaar

    01/07/2026, 4:11 PM
    Good way to start the new year party parrot
    party parrot 2
  • a

    Alisa Fuchs

    02/06/2026, 8:35 AM
    Hi @Jonas S, I am running mhcquant with timsTOF data. I just found here that I am supposed to change default
    ms2pip_model
    to
    "timsTOF"
    . Any additional parameters I should change for best performance (in addition to the instrument specific settings described in Recommended search settings)? I also tried to use --feature_generators deeplc,ms2pip,ionmob,im2deep, but I got an error: ImportError: Ionmob not installed. Please install Ionmob to use this feature generator. I am currently using release 3.1.0. Is there a release with those features working?
    j
    • 2
    • 2
  • e

    Emmanuel Labaronne

    02/25/2026, 3:44 PM
    Hi! I'm new to this channel and trying to use the mhcquant pipeline for the first time. Running the command:
    nextflow run nf-core/mhcquant -r 3.1.0 -profile test,singularity --outdir results
    I get the following error:
    Copy code
    ERROR ~ Error executing process > 'NFCORE_MHCQUANT:MHCQUANT:OPENMSTHIRDPARTY_COMETADAPTER (3)'
    
    Caused by:
      Process `NFCORE_MHCQUANT:MHCQUANT:OPENMSTHIRDPARTY_COMETADAPTER (3)` terminated with an error exit status (1)
    
    Command executed:
      CometAdapter \
          -in HepG2_rep3_small.mzML \
          -database UP000005640_9606_decoy.fasta \
          -out HepG2_rep3_small.idXML \
          -threads 2 \
          -pin_out HepG2_rep3_small_pin.tsv -instrument high_res -spectrum_batch_size 0 \
          -activation_method ALL -precursor_mass_tolerance 5 -precursor_error_units ppm \
          -fragment_mass_tolerance 0.01 -fragment_bin_offset 0.0 -num_hits 1 \
          -digest_mass_range 800:2500 -max_variable_mods_in_peptide 3 -missed_cleavages 0 \
          -precursor_charge 2:3 -fixed_modifications -variable_modifications 'Oxidation (M)' \
          -enzyme 'unspecific cleavage' -use_X_ions false -use_Z_ions false \
          -use_A_ions false -use_C_ions false -use_NL_ions false
    
    Command error:
      Could not remove directory 20260225_152310_sd-177307_41_1!
      Error: File not found (the file '/tmp/20260225_152310_sd-177307_41_1/result.pep.xml' could not be found)
    
    Container:
      openms-thirdparty-3.5.0--h9ee0642_0.img
    Notably, this error does not occur when using the
    docker
    profile instead of
    singularity
    . Has this error already been documented? In my experience, this kind of issue is usually related to file access permissions or mount path differences between Singularity and Docker (e.g., Comet writing temporary files to
    /tmp
    , which may not be properly bound in the Singularity container). Is there any walkaround to avoid this error still using singularity ? Thanks !
    j
    • 2
    • 3
  • d

    Denis Komarov

    04/09/2026, 8:59 AM
    This got merged into dev, but not to master, right? Cause I have the same problem
  • d

    Denis Komarov

    04/09/2026, 9:00 AM
    Profile apptainer for me, regular server, not cluster
    j
    • 2
    • 15
  • j

    Jonas S

    04/14/2026, 9:05 AM
    PR to support SDRF and autonomous processing of PRIDE projects if SDRF is in there 🐕 https://github.com/nf-core/mhcquant/pull/445 Any reviews, suggestions, feedback is very welcome!
  • e

    Emily Southworth

    05/01/2026, 1:53 PM
    Hi there! In my output sample file, I have multiple intensities (-quantify was specified in my pipeline) for the same peptide. In proteomics analyses, it is standard to take the maximal value detected and I wanted to confirm if this was also the case for immunopeptidomics?
    j
    • 2
    • 1
  • g

    GitHub

    05/21/2026, 1:50 PM
    Release - 3.2.0 - Solitude New release published by jonasscheid
    Added
    • Added support for single run quantification #438 • Added per-sample search parameter support via samplesheet with SearchPreset column #439 • Added PRIDE ID and SDRF sheet support #445 • Added ion mobility export and MultiQC distribution plot for timsTOF data #441
    Fixed
    • Fixed crashes in
    FeatureLinkerUnlabeledKD
    and
    PYOPENMS_IONANNOTATOR
    for samples with zero peptides past FDR; empty samples now emit an empty TSV #451 • Fixed
    OPENMS_FILECONVERTER
    version eval emitting a
    \x01
    control character into the MultiQC versions YAML due to an unescaped sed backreference #451 • Fixed nf-test CI failures caused by Docker layer extraction running out of disk space when pulling
    ms2rescore
    and OpenMS 3.5.0 containers; added
    jlumbroso/free-disk-space
    cleanup step and bumped the RunsOn disk to
    volume=40gb
    #451 • Fixed
    EPICORE
    running only once instead of per sample when
    --fasta
    is used, by broadcasting
    ch_fasta
    to
    EPICORE
    via
    .first()
    #446 • Fixed
    SUMMARIZE_RESULTS
    crash with
    --quantify
    caused by OpenMS 3.5.0 TextExporter phantom column bug (OpenMS/OpenMS#9120) #444 • Fixed an issue where stripping the sequence in
    SUMMARIZE_RESULTS
    did not work for complex modifications #436 • Fixed
    tdf2mzml
    container entrypoint issue by pinning to
    0.5_noentry
    and invoking the CLI explicitly #447 • Fixed
    OPENMS_FILECONVERTER
    version extraction emitting a SOH byte due to a single-backslash sed backreference #447 • Fixed
    OPENMS_IDMASSACCURACY
    process argument to use
    meta.precursor_error_units
    so per-sample preset overrides apply #447
    Changed
    • Migrate to topic channels #431 • Bumped
    openms/fileconverter
    ,
    openms/featurefinderidentification
    and
    openms/idconflictresolver
    local modules to OpenMS 3.5.0 #447 • Rewrote
    openms/idmassaccuracy
    meta.yml to reflect the actual process I/O #447 • Tightened preset normalization so empty/whitespace
    FixedMods
    and
    VariableMods
    cells are treated as empty (preserves the existing
    -fixed_modifications
    CLI call) #447 • Migrated
    conf/test_single_quant.config
    from deprecated `max_cpus`/`max_memory`/`max_time` to
    process.resourceLimits
    #447 • Replaced local
    openms/textexporter
    module with the
    nf-core/modules
    equivalent; preserved the
    _exported
    output suffix via
    ext.prefix
    to keep SUMMARIZE_RESULTS input/output filenames distinct #447 • Replaced local
    openms/fileconverter
    module with the
    nf-core/modules
    equivalent; updated
    PROCESS_FEATURE
    to consume the renamed
    converted
    output channel #449 • Replaced local
    pridepy/fetch_sdrf
    module with the
    nf-core/modules
    pridepy/fetchsdrf
    equivalent (now meta-aware); bumped local
    pridepy/download_file
    to pridepy 0.0.15 to match #449 • Sealed search-preset values: when a samplesheet row sets
    SearchPreset
    , preset values are no longer overridable via
    --<param>
    ,
    -params-file
    , or
    -c
    for that row; rows without a preset resolve from
    params
    as before. Removed the fragile
    workflow.commandLine
    regex from
    resolveSearchParams
    (renamed to
    resolvePresetParams
    ). Documented the new precedence in
    docs/usage.md
    . #449
    Dependencies
    | Dependency | Old version | New version | | ---------- | ----------- | ----------- | | easypqp | 0.1.53 | 0.1.57 | | MultiQC | 1.31.0 | 1.33.0 | | Nf-core | 3.4.1 | 3.5.1 | | openms | 3.4.1 | 3.5.0 | | tdf2mzml | 0.3.0 | 0.5.0 | nf-core/mhcquant
  • j

    Jonas S

    05/21/2026, 2:00 PM
    <!channel> A few highlights worth getting excited about this release: - PRIDE & SDRF support — point the pipeline straight at a PRIDE accession. Or use an available SDRF sheet targetting a PRIDE accession. - Per-sample search parameters — new SearchPreset column lets each sample run with its own search config - Single-run quantification — quantify experiments with just one run - timsTOF ion mobility — ion mobility export + a new MultiQC distribution plot for IM data - Under the hood: OpenMS bumped to 3.5.0, plus a batch of stability fixes for empty samples and quant edge cases Give it a spin: -r 3.2.0 🎉
    🚀 1
  • j

    Jonas S

    06/12/2026, 10:34 AM
    Two small PRs adding plots to multiQC to check DeepLC calibration performance and RT Alignment performance https://github.com/nf-core/mhcquant/pull/461 https://github.com/nf-core/mhcquant/pull/462
  • j

    Jonas S

    06/12/2026, 10:34 AM
    Would be great if someone could have a look!
  • f

    Full test notifications

    09/30/2026, 1:53 PM
    ❌ mhcquant/test_full failed 😿 Run Name prickly_northcutt Duration 22.2s Status ❌ Failed Error Message
    Copy code
    Missing process or function paramsSummaryLog([[:], repository: <https://github.com/nf-core/mhcquant>, projectDir: /.nextflow/assets/.repos/nf-core/mhcquant/clones/aa931de1d7d0bb6ffb8cfe128cc57eea5d023834, commitId: aa931de1d7d0bb6ffb8cfe128cc57eea5d023834, revision: dev, startTime: 2026-09-30T13:52:37.102085528Z, endTime: null, duration: null, container: {}, commandLine: nextflow run '<https://github.com/nf-core/mhcquant>' -name prickly_northcutt -params-file '<https://api.cloud.seqera.io/ephemeral/zHweF1yU1iN3WhsOJCBD1g.json>' -with-tower -r dev -profile test_full, nextflow: nextflow.NextflowMeta(version:26.04.6, build:12646, timestamp:09-07-2026 18:49 UTC, preview:nextflow.NextflowMeta$Preview@213fc7e7, enable:nextflow.NextflowMeta$Features@c358f32, strictModeEnabled:false, moduleBinariesEnabled:false), success: false, workDir: /nf-core-awsmegatests/work/mhcquant/work-dev, launchDir: /, profile: test_full]) -- Did you mean 'paramsSummaryLog' instead?
    Command Line
    Copy code
    nextflow run '<https://github.com/nf-core/mhcquant>' -name prickly_northcutt -params-file '<https://api.cloud.seqera.io/ephemeral/zHweF1yU1iN3WhsOJCBD1g.json>' -with-tower -r dev -profile test_full
    Sep 30, 2026 at 1:53 PM
    🫠 1
    r
    j
    • 3
    • 2
  • f

    Full test notifications

    10/02/2026, 1:30 PM
    ✅ mhcquant/test_full completed successfully! 🎉 Run Name cheeky_booth Duration 37m 5s Status ✅ Success Tasks Completed: 105 Oct 2, 2026 at 1:30 PM
    j
    r
    a
    • 4
    • 4
  • g

    GitHub

    10/02/2026, 1:43 PM
    Release - 3.3.0 - Favorite New release published by jonasscheid
    Added
    • Added MultiQC plot for DeepLC retention time calibration per sample #461 • Added MultiQC box plot of aligned residuals in the quant workflow #462 • Added
    manifest.diagram
    to
    nextflow.config
    by @ewels #476
    Fixed
    • Fixed
    UNTAR
    ,
    UNZIP
    and
    EPICORE
    version
    eval
    crashing on parenthesis-containing tool banners #455 • Fixed silent per-sample drop from order-dependent
    combine(by:)
    in QUANT #460 • Fixed non-reproducible per-replicate column order in quantification output from unsorted
    groupTuple()
    #460 • Restored documented samplesheet validation errors for malformed input #463 • Fixed
    Condition
    samplesheet validation accepting values with whitespace #464 • Fixed
    FeatureFinderIdentification
    (OpenMS 3.5.0) losing all peptide identifications on FAIMS data, which crashed
    SUMMARIZE_RESULTS
    , by disabling
    faims:merge_features
    #474 • Fixed
    MapAlignerIdentification
    aborting with
    no data points for 'linear' model
    when a run shares no RT landmarks with its group; the whole sample/condition group is now excluded from quantification, exported with identifications only, and a warning is emitted #474 • Fixed
    test_single_quant
    nf-test never running the QUANT subworkflow #475 • Fixed missing ion mobility for timsTOF
    .d
    input by bumping
    tdf2mzml
    to 0.6.1 #479
    Changed
    • Updated to nf-core template 4.0.2 #454 • Updated to nf-core template 4.0.3 #468 • Updated to nf-core template 4.1.0 #472 • Updated all nf-core modules to their latest versions #454 • Replaced local
    pridepy/download_file
    with upstream nf-core
    pridepy/downloadfile
    #457 • Bumped
    nf-schema
    plugin to 2.7.2 #465 • Stopped publishing the intermediate
    _psm.idXML
    and
    _ms2rescore.idXML
    files to
    intermediate_results/rescoring
    #470 • Replaced local
    easypqp/convert
    and
    easypqp/library
    modules with the nf-core/modules equivalents #473 • Replaced local OpenMS modules (
    MzTabExporter
    ,
    MapAlignerIdentification
    ,
    MapRTTransformer
    ,
    FeatureFinderIdentification
    ,
    IDConflictResolver
    ,
    PSMFeatureExtractor
    ) with the nf-core/modules equivalents #477 • Updated
    utils_nfcore_pipeline
    subworkflow and
    easypqp/convert
    module to their latest versions and added missing tool citations #480 • Changed MultiQC box plot whiskers from min/max to 1.5 × IQR #482
    Dependencies
    | Dependency | Old version | New version | | ---------- | ----------- | ----------- | | easypqp | 0.1.57 | 0.1.59 | | MultiQC | 1.33.0 | 1.35.0 | | Nf-core | 3.5.1 | 4.1.0 | | tdf2mzml | 0.5.0 | 0.6.1 | nf-core/mhcquant
    j
    • 2
    • 1
  • f

    Full test notifications

    10/02/2026, 2:21 PM
    ✅ mhcquant/test_full completed successfully! 🎉 Run Name exotic_shannon Duration 35m 36s Status ✅ Success Tasks Completed: 105 Oct 2, 2026 at 2:21 PM
  • j

    Jonas S

    10/02/2026, 4:26 PM
    <!channel>
  • f

    Full test notifications

    10/07/2026, 10:34 AM
    ✅ mhcquant/test_full completed successfully! 🎉 Run Name nostalgic_euler Duration 47m 47s Status ✅ Success Tasks Completed: 105, Failed: 1 Oct 7, 2026 at 10:34 AM
    confused dog 1
  • f

    Full test notifications

    10/08/2026, 8:44 AM
    ❌ mhcquant/test_full failed 😿 Run Name loving_fermat Duration 21m 47s Status ❌ Failed Error Message
    Copy code
    (more omitted..)
    2026-10-08 08:40:45,279 INFO Adding MS²PIP-derived features to PSMs.
    2026-10-08 08:40:45,362 INFO Running MS²PIP for PSMs from run (1/3) `PBMC007_msms31`...
    2026-10-08 08:40:46,800 INFO Downloading model_20210316_Immuno_HCD_B.xgboost to null/model_20210316_Immuno_HCD_B.xgboost...
    2026-10-08 08:42:12,607 INFO Downloading model_20210316_Immuno_HCD_Y.xgboost to null/model_20210316_Immuno_HCD_Y.xgboost...
    Traceback (most recent call last):
      File "/usr/local/bin/ms2rescore_cli.py", line 177, in <module>
        sys.exit(main())
                 ^^^^^^
      File "/usr/local/lib/python3.12/site-packages/click/core.py", line 1442, in __call__
        return self.main(*args, **kwargs)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "/usr/local/lib/python3.12/site-packages/click/core.py", line 1363, in main
        rv = self.invoke(ctx)
             ^^^^^^^^^^^^^^^^
      File "/usr/local/lib/python3.12/site-packages/click/core.py", line 1226, in invoke
        return ctx.invoke(self.callback, **ctx.params)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "/usr/local/lib/python3.12/site-packages/click/core.py", line 794, in invoke
        return callback(*args, **kwargs)
               ^^^^^^^^^^^^^^^^^^^^^^^^^
      File "/usr/local/bin/ms2rescore_cli.py", line 173, in main
        rescore_idxml(kwargs["psm_file"], kwargs["output_path"], config)
      File "/usr/local/bin/ms2rescore_cli.py", line 84, in rescore_idxml
        rescore(config, psm_list, )
      File "/usr/local/lib/python3.12/site-packages/ms2rescore/core.py", line 79, in rescore
        fgen.add_features(psm_list)
      File "/usr/local/lib/python3.12/site-packages/ms2rescore/feature_generators/ms2pip.py", line 194, in add_features
        ms2pip_results = correlate(
                         ^^^^^^^^^^
      File "/usr/local/lib/python3.12/site-packages/ms2pip/core.py", line 275, in correlate
        ms2pip_parallelized = _Parallelized(
                              ^^^^^^^^^^^^^^
      File "/usr/local/lib/python3.12/site-packages/ms2pip/core.py", line 544, in __init__
        v...
    Command Line
    Copy code
    nextflow run '<https://github.com/nf-core/mhcquant>' -name loving_fermat -params-file '<https://api.cloud.seqera.io/ephemeral/ZIBSkAbNxxGlfhUp8brHAQ.json>' -with-tower -r dev -profile test_full
    Oct 8, 2026 at 8:44 AM
    j
    r
    m
    • 4
    • 5
  • t

    Thomas Weber

    10/14/2026, 8:13 AM
    depictio Depictio dashboard for mhcquant: your feedback wanted Hi all! 👋 I am building Depictio, an open-source platform from EMBL to explore pipeline results without writing a Shiny or Streamlit app each time. A pipeline gets a dashboard template: a short definition that turns the outputs of any run into an interactive dashboard. I am now sharing it more widely, so I would like the view of mhcquant users and developers. ✨ What it does • MultiQC reports (aggregated across runs) next to result tables, images, phylogenetic trees, maps... with linked filters • Reusable: point the template at any new run of the same pipeline and you get the same dashboard • Fully editable: modify any dashboard from the GUI or in YAML, so the template is a starting point, not a constraint • Versioned, with comments and annotations on any component • Runs as a Python package, with Docker Compose or on Kubernetes, and can serve as a companion web app for a publication 🧪 For mhcquant: replicate reproducibility, identification yield and FDR, retention time and mass accuracy, the MHC class signature of peptide lengths and anchor motifs, and peptides shared between conditions with their source proteins, next to the MultiQC report. 👀 What I need: I have built 25 templates and want people who really use these pipelines to review and criticise them. What is useful? What is misleading? 👉 Dashboard: mhcquant dashboard (no account needed) 💬 Comment on the dashboard (Google sign-in) or in the GitHub discussion dedicated to mhcquant. ⭐ A star on the repo is welcome if you find it useful. Thanks! 🙏 🎤 I was speaking about Depictio at the Nextflow Summit (session page), and the recording will be available in the coming weeks.
    🎉 2
    j
    • 2
    • 2