MCPcopy Index your code
hub / github.com/MultiQC/MultiQC

github.com/MultiQC/MultiQC @v1.35

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.35 ↗ · + Follow
5,156 symbols 20,388 edges 683 files 1,504 documented · 29%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

MultiQC

Aggregate bioinformatics results across many samples into a single report

Find documentation and example reports at https://seqera.io/multiqc/

PyPI Version Bioconda Version DOI


MultiQC is a tool to create a single report with interactive plots for multiple bioinformatics analyses across many samples.

Reports are generated by scanning given directories for recognised log files. These are parsed and a single HTML report is generated summarising the statistics for all logs found. MultiQC reports can describe multiple analysis steps and large numbers of samples within a single plot, and multiple analysis tools making it ideal for routine fast quality control.

A very large number of Bioinformatics tools are supported by MultiQC. Please see the MultiQC website for a complete list. MultiQC can also easily parse data from custom scripts, if correctly formatted / configured - a feature called Custom Content.

More modules are being written all the time. Please suggest any ideas as a new issue (please include example log files).

Installation

You can install MultiQC using uv (no separate Python installation required):

uv tool install multiqc

Alternatively, install from PyPI using pip:

pip install multiqc

Or install using Conda from Bioconda (set up your channels first):

conda install multiqc

If you would like the development version from GitHub instead, you can install it with uv or pip:

uv tool install git+https://github.com/MultiQC/MultiQC.git
pip install --upgrade --force-reinstall git+https://github.com/MultiQC/MultiQC.git

MultiQC is also available via Docker and Singularity images, Galaxy wrappers, and many more distribution methods. See the documentation for details.

Usage

Once installed, you can use MultiQC by navigating to your analysis directory (or a parent directory) and running the tool:

multiqc .

That's it! MultiQC will scan the specified directory (. is the current dir) and produce a report detailing whatever it finds.

cd test-data/data/modules/fastqc/v0.10.1 && multiqc .

The report is created in multiqc_report.html by default. Tab-delimited data files are also created in multiqc_data/, containing extra information. These can be easily inspected using Excel (use --data-format to get yaml or json instead).

For more detailed instructions, run multiqc -h or see the documentation.

Citation

Please consider citing MultiQC if you use it in your analysis.

MultiQC: Summarize analysis results for multiple tools and samples in a single report.

Philip Ewels, Måns Magnusson, Sverker Lundin and Max Käller

Bioinformatics (2016)

doi: 10.1093/bioinformatics/btw354

PMID: 27312411

@article{doi:10.1093/bioinformatics/btw354,
 author = {Ewels, Philip and Magnusson, Måns and Lundin, Sverker and Käller, Max},
 title = {MultiQC: summarize analysis results for multiple tools and samples in a single report},
 journal = {Bioinformatics},
 volume = {32},
 number = {19},
 pages = {3047},
 year = {2016},
 doi = {10.1093/bioinformatics/btw354},
 URL = { + http://dx.doi.org/10.1093/bioinformatics/btw354},
 eprint = {/oup/backfile/Content_public/Journal/bioinformatics/32/19/10.1093_bioinformatics_btw354/3/btw354.pdf}
}

Contributions & Support

Contributions and suggestions for new features are welcome, as are bug reports! Please create a new issue for any of these, including example reports where possible. Pull-requests for fixes and additions are very welcome. Please see the contributing notes for more information about how the process works.

MultiQC has extensive documentation describing how to write new modules, plugins and templates.

If in doubt, feel free to get in touch with the author directly: @ewels (phil.ewels@seqera.io)

Contributors

MultiQC is developed and maintained by Phil Ewels (@ewels) at Seqera Labs. It was originally written at the National Genomics Infrastructure, part of SciLifeLab in Sweden.

A huge thank you to all code contributors - there are a lot of you! See the Contributors Graph for details.

MultiQC is released under the GPL v3 or later licence.

Core symbols most depended-on inside this repo

plot
called by 689
multiqc/modules/bbmap/bbmap.py
add_section
called by 602
multiqc/base_module.py
ignore_samples
called by 385
multiqc/base_module.py
find_log_files
called by 363
multiqc/base_module.py
add_data_source
called by 334
multiqc/base_module.py
write_data_file
called by 324
multiqc/base_module.py
add_software_version
called by 286
multiqc/base_module.py
clean_s_name
called by 211
multiqc/base_module.py

Shape

Function 2,929
Method 1,835
Class 391
Route 1

Languages

Python50%
TypeScript50%

Modules by API surface

multiqc/templates/default/assets/js/packages/plotly-3.1.2.custom.min.js1,291 symbols
multiqc/templates/disco/compiled/js/multiqc.min.js296 symbols
multiqc/templates/default/compiled/js/multiqc.min.js296 symbols
multiqc/plots/plot.py87 symbols
multiqc/templates/original/assets/js/packages/jquery-3.1.1.min.js85 symbols
multiqc/templates/default/assets/js/packages/jquery-3.1.1.min.js85 symbols
tests/test_plots.py57 symbols
multiqc/modules/bases2fastq/tests/test_bases2fastq.py54 symbols
multiqc/core/ai.py49 symbols
multiqc/report.py39 symbols
multiqc/templates/original/assets/js/toolbox.js37 symbols
multiqc/templates/original/assets/js/packages/jszip.min.js36 symbols

For agents

$ claude mcp add MultiQC \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact