maxquant-proteomics
MaxQuant + Perseus proteomics pipeline: run MaxQuant for LFQ and SILAC; parse proteinGroups.txt in Python; filter contaminants/decoys; log2 + median-normalize; impute MNAR; t-test with FDR; volcano plot; GO/pathway enrichment. Use Proteome Discoverer for Thermo-native processing; FragPipe/MSFragger for GPU-accelerated DB search.
npx skills add BioTender-max/awesome-bio-agent-skills --skill maxquant-proteomics --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
What it does
The skill describes a proteomics analysis pipeline that processes MaxQuant outputs (proteinGroups.txt) to perform quality filtering, normalization, MNAR imputation, differential testing with FDR, and visualization, followed by GO/pathway enrichment. It includes steps to configure MaxQuant via mqpar.xml, run MaxQuant from the command line, and analyze results in Python, producing a volcano plot and enrichment results.
How it works
- Ingests MaxQuant proteinGroups.txt and applies quality filters to remove reverse decoys, contaminants, and entries identified only by site.
- Extracts LFQ intensity columns, replaces zeros with NaN, and applies log2 transformation.
- Performs per-sample median normalization (centering) across samples.
- Imputes missing values using an MNAR strategy by drawing from a downshifted Gaussian distribution with specified width and downshift per sample.
- Conducts two-sample t-tests (group A vs group B) for each protein, computes log2 fold changes, and applies Benjamini-Hochberg FDR correction; flags significant proteins.
- Generates a volcano plot showing log2FC vs -log10(padj) with significance thresholds and labels top proteins by significance.
- Performs GO/KEGG enrichment via Enrichr (via gseapy) separately for up- and down-regulated significant proteins.
- Provides scripts illustrating how to configure mqpar.xml, run MaxQuant (including CLI and Wine options), and load/filter proteinGroups.txt.
When to use it
- For LFQ or SILAC proteomics workflows where MaxQuant outputs are available as proteinGroups.txt
- When you want a reproducible Python-based downstream analysis mirroring the Perseus workflow (filtering, normalization, imputation, differential testing, plots, enrichment) without the Perseus GUI
- If you need to compare against publication-compatible outputs and generate GO/KEGG enrichment for significant proteins
- When Thermo-native processing or GPU-accelerated search is desired, with guidance to use Proteome Discoverer or FragPipe/MSFragger respectively
What it can touch
- Uses Python libraries: pandas, numpy, scipy, matplotlib, seaborn, statsmodels, gseapy
- Calls MaxQuant via MaxQuantCmd.exe (Windows) with mqpar.xml; also shows steps for running MaxQuant under Wine on Linux/macOS
- Reads and writes proteinGroups.txt and mqpar.xml configurations
- Produces a volcano_plot.pdf and enrichment results via Enrichr-compatible outputs
Caveats
- License listed as Apache-2.0 for the skill; no explicit runtime license for MaxQuant or third-party tools is provided here
- The MNAR imputation and t-test assumptions follow standard Perseus-like approaches but may require adaptation for specific experimental designs
- The workflow assumes LFQ and sample naming conventions that match the script examples (e.g., ctrl_1, treat_1, etc.)
# MaxQuant + Perseus — Proteomics Analysis Pipeline ## Overview MaxQuant is the community-standard software for label-free quantification (LFQ) and SILAC proteomics. It performs database search, protein grouping, and intensity-based quantification from raw LC-MS/MS files, producing `proteinGroups.txt` as the primary output. Downstream statistical analysis — filtering, normalization, imputation, differential abundance testing, and visualization — is performed in Python using pandas, scipy, and matplotlib/seaborn, mirroring the Perseus workflow in a reproducible scripting environment. ## When to Use - Performing label-free quantification (LFQ) of proteins across multiple biological conditions — MaxQuant's MaxLFQ algorithm is the community benchmark - Running SILAC (stable isotope labeling) experiments with light/heavy or triple-label designs - Processing iTRAQ or TMT isobaric labeling experiments via MaxQuant's reporter ion quantification - Identifying and quantifying proteins when you need the widely-cited MaxQuant output format (`proteinGroups.txt`) for comparison with published datasets - Performing statistical differential abundance analysis on MaxQuant outputs without installing
- Overview
- When to Use
- Prerequisites
- Quick Start
- Workflow
- Step 1: Configure MaxQuant Parameters via mqpar.xml
- Step 2: Run MaxQuant from Command Line (Windows)
- Step 3: Load and Filter proteinGroups.txt
- Step 4: Log2 Transform and Median Normalize LFQ Intensities
- Step 5: Impute Missing Values (MNAR Strategy)
- Step 6: Statistical Testing — t-test with FDR Correction
- Step 7: Volcano Plot Visualization
- Step 8: GO/Pathway Enrichment of Significant Proteins
- Key Parameters
pip install pandas numpy scipy matplotlib seaborn statsmodels gseapy Install pyMaxQuant for programmatic mqpar.xml configuration pip install pymaxquant wine MaxQuantCmd.exe mqpar.xml Monitor progress log tail -f combined/proc/#runningTimes.txt
What does the maxquant-proteomics skill do?
MaxQuant + Perseus proteomics pipeline: run MaxQuant for LFQ and SILAC; parse proteinGroups.txt in Python; filter contaminants/decoys; log2 + median-normalize; impute MNAR; t-test with FDR; volcano plot; GO/pathway enrichment. Use Proteome Discoverer for Thermo-native processing; FragPipe/MSFragger for GPU-accelerated DB search.
How do I install it?
Run `npx skills add BioTender-max/awesome-bio-agent-skills --skill maxquant-proteomics --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From BioTender-max/awesome-bio-agent-skills, a repository with 135 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
