pyopenms
Lets your agent process mass spectrometry data. It's useful for analyzing biological and chemical samples.
What it does
PyOpenMS is a tool that helps analyze mass spectrometry data. It can process information from proteomics and metabolomics, like identifying compounds, measuring their quantities, and converting file formats.
When to use it
- ✓When you have mass spectrometry data and want to understand what it means.
- ✓When comparing different samples to see which compounds are present and in what amounts.
- ✓To convert your data from one file format to another.
Example of what to ask your AI
“Analyze this mass spectrometry data file and tell me which compounds are present.”
Want more? Open the sections below.
How to use
The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.
Skill link
Ready-to-paste message
How it works
You use pre-defined scripts that process your data. These scripts perform tasks like finding peaks, identifying molecules, and calculating quantities.
Installation
Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.
In the terminal (Claude Code, Codex, Cursor), in your project folder:
npx skills add K-Dense-AI/scientific-agent-skills --skill pyopenmsOr download just the file:
curl -L https://raw.githubusercontent.com/K-Dense-AI/scientific-agent-skills/main/skills/pyopenms/SKILL.md -o SKILL.mdTechnical content (original SKILL.md)
Original text by the author, straight from GitHub.
PyOpenMS
Overview
PyOpenMS provides Python bindings to the OpenMS library for computational mass spectrometry, enabling analysis of proteomics and metabolomics data. Use it to read/write MS file formats, process raw spectra, detect and quantify features, identify peptides and proteins, and run end-to-end LC-MS/MS pipelines.
This skill ships ready-to-run scripts in scripts/ covering the most common
high-level workflows. Prefer running a script over writing new code—each is a
parameterized CLI tool that handles loading, processing, and export. Drop into the
Python API (and the references/) only when no script fits.
Installation
uv venv --python 3.13
uv pip install "pyopenms==3.6.0" pandas numpy matplotlib
Verify (note: __version__ works, but the bundled binary prints a one-line
memory-status notice on import that is harmless):
import pyopenms as ms
print(ms.__version__) # 3.6.0
Scripts (start here)
Run with python scripts/<name>.py --help for full options. Input formats differ by script; inspect its help. Commands below run from the skill
directory with the environment activated. Native regression tests use tiny synthetic
files; instrument-specific detection/search performance is not validated.
Inspect & convert
| Script | What it does |
|---|---|
inspect_ms_data.py |
Summarize any mzML/mzXML/featureXML/consensusXML/idXML (counts, RT/m/z ranges, TIC, metadata); optional per-spectrum CSV. |
convert_format.py |
Convert between mzML/mzXML/MGF with optional MS-level, RT, and intensity filtering. |
process_spectra.py |
Configurable signal-processing chain: smoothing (Gauss/SGolay), centroiding (PeakPickerHiRes), normalization, S/N and intensity thresholds. |
Feature detection & quantification
| Script | What it does |
|---|---|
detect_features_metabo.py |
Untargeted metabolomics feature finding: MassTraceDetection → ElutionPeakDetection → FeatureFindingMetabo. |
detect_features_centroided.py |
Peptide/centroided feature detection via FeatureFinderAlgorithmPicked. |
align_link_quantify.py |
Multi-sample pipeline: detect (or load) features → RT alignment → consensus linking → quant matrix CSV. |
consensus_to_matrix.py |
consensusXML → wide intensity matrix + metadata, with optional median/quantile normalization and long format. |
Annotation
| Script | What it does |
|---|---|
detect_adducts.py |
Group adducts/charge variants of the same neutral mass (MetaboliteFeatureDeconvolution). |
accurate_mass_search.py |
Annotate features against local formula/structure TSVs by accurate mass (AccurateMassSearchEngine → mzTab/CSV). |
export_gnps_sirius.py |
Export GNPS FBMN inputs (MGF + quant table) or a SIRIUS .ms file. |
Identification
| Script | What it does |
|---|---|
process_identifications.py |
Re-index against FASTA, estimate FDR/q-values, filter (FDR/length/best-per-spectrum), export idXML + CSV. |
Chemistry
| Script | What it does |
|---|---|
mass_calculator.py |
Monoisotopic/average mass, charged m/z, formula, and isotope pattern for peptides or empirical formulas. |
digest_protein.py |
In-silico protease digestion of FASTA/sequence → theoretical peptides with masses and m/z. |
theoretical_spectrum.py |
Generate annotated theoretical fragment spectra (b/y/a/c/x/z, losses) for a peptide. |
Targeted & visualization
| Script | What it does |
|---|---|
extract_chromatograms.py |
Build TIC/BPC and XIC traces for target m/z (CSV + optional plot). |
plot_ms_data.py |
Quick plots: single spectrum, TIC, 2D feature map, MS1 signal map. |
Common script recipes
# Inspect a file
python scripts/inspect_ms_data.py sample.mzML --spectra-csv spectra.csv
# Untargeted metabolomics: features for one sample
python scripts/detect_features_metabo.py sample.mzML --out-csv features.csv
# Full multi-sample quantification study
python scripts/align_link_quantify.py s1.mzML s2.mzML s3.mzML --out-prefix study
python scripts/consensus_to_matrix.py study.consensusXML --out quant.csv --normalize median
# Peptide chemistry
python scripts/mass_calculator.py --peptide "PEPTIDEM(Oxidation)K" --charges 1 2 3 --isotopes 5
python scripts/digest_protein.py proteins.fasta --enzyme Trypsin --missed 2 --out peptides.csv
# Identification post-processing
…
FAQ
What is mass spectrometry?
It's a lab technique that measures the mass of molecules in a sample to identify and quantify substances.
What are proteomics and metabolomics?
Proteomics studies proteins in an organism, while metabolomics studies small molecules (metabolites).
What data file types does this tool support?
It supports various common formats like mzML, mzXML, MGF, and others.
Details
Original description by the author
Processes mass spectrometry data with pyOpenMS. Supports proteomics and metabolomics workflows—feature detection, peptide/protein identification, label-free quantification, adduct/accurate-mass annotation, and complex LC-MS/MS pipelines. Supports extensive file formats and algorithms. For simple spectral comparison and small-molecule library matching use matchms.
Popularity
- GitHub stars
- 51k
- Ranking position
- #1953
- License
- MIT
- Updated
- 10/15/2026
Comments
- …
More skills from this repository
13c-metabolic-flux
Estimates metabolic fluxes using carbon-13 isotope tracing data. It is useful for analyzing cellular metabolism and biochemical pathways.
K-Dense-AI/scientific-agent-skills
adaptyv
Designs protein characterization experiments using the Adaptyv API. It helps estimate costs, submit sequences, and monitor lab results.
K-Dense-AI/scientific-agent-skills
aeon
Performs machine learning tasks on time series data. It is useful for classifying, forecasting, detecting anomalies, and finding patterns in sequential data.
K-Dense-AI/scientific-agent-skills
alphagenome
Looks up precomputed genomic effects for genetic variants. It provides scores and explanations to understand the impact of variants on the genome.
K-Dense-AI/scientific-agent-skills
Similar skills
data-throughput-accelerator
Makes your agent speed up the movement of large data volumes. It finds bottlenecks and ensures data is transferred quickly and correctly.
affaan-m/ECC
inventory-demand-planning
Helps your agent predict product demand in stores. It optimizes stock and plans when to run promotions to sell more.
affaan-m/ECC
market-research
Helps your agent conduct market research and competitive analysis. Provides summaries with source attribution.
affaan-m/ECC