Agent skill

Chem Msms Predict

by learningmatter-mit in learningmatter-mit/AtomisticSkills

Predict LC-MS/MS (MS2, tandem mass spectra) from SMILES via ICEBERG, a two-stage deep neural network.

MITAuto-check passedResearch & Science

Install Chem Msms Predict

skills CLI
$ npx skills add learningmatter-mit/AtomisticSkills --skill chem-msms-predict -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install learningmatter-mit/AtomisticSkills chem-msms-predict --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/learningmatter-mit/AtomisticSkills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/chem-msms-predict .claude/skills/chem-msms-predict && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
chem-msms-predict
GitHub stars
176
Token cost
~1.6k tokens
SKILL.md length
609 words
Files
5 (incl. scripts)
Skills in repo
129
Repo updated
First seen
Licence
MIT

At a glance

Predict LC-MS/MS (MS2, tandem mass spectra) from SMILES via ICEBERG, a two-stage deep neural network.

  • Works in 3 steps: Run inference and generate spectrum → Inspect fragment assignments (optional) → Compare with experimental spectrum…
  • Tasks that involve Drug discovery and cheminformatics
  • SKILL.md covers Goal, When to Use This Skill, When NOT to Use This Skill and Prerequisites, plus 4 more sections
  • Runs Python scripts from its folder

What it does

Chem Msms Predict is an agent skill from learningmatter-mit/AtomisticSkills. Predict LC-MS/MS (MS2, tandem mass spectra) from SMILES via ICEBERG, a two-stage deep neural network. Outputs predicted m/z vs intensity spectrum, fragment ion SMILES, and a spectrum plot.

Its SKILL.md is about 1.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 6 other files, including scripts (for example `examples/README.md`, `examples/predict_smiles.py` and `scripts/download_weights.py`).

It sits in Research & Science, covering Drug discovery and cheminformatics and Deep learning. The repository describes itself as: Integrating AtomisticSkills into Agentic IDEs (Cursor, Claude Code, Codex, Google Antigravity, Hermes Agent, etc). The licence is MIT.

When your agent uses it

  • Tasks that involve Drug discovery and cheminformatics
  • Tasks that involve Deep learning

Example prompts

  • “/chem-msms-predict”

Requirements

  • Python 3

Workflow steps

3 steps, taken from the step headings in SKILL.md.

  1. Run inference and generate spectrum
  2. Inspect fragment assignments (optional)
  3. Compare with experimental spectrum (optional)

What it can do on your machine

Read from SKILL.md and the folder at commit 6257444. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 2 files in scripts/ (Python), which the agent can run.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • github.com
    • doi.org

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Chem Msms Predict loads about 1.6k tokens when it runs. Until then it costs about 52 tokens; SKILL.md has 609 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~52
When it runs · the whole SKILL.md, loaded when a task matches
~1.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from learningmatter-mit/AtomisticSkills at commit 6257444, republished under its MIT licence (© learningmatter-mit). 609 words, ~1,584 tokens.

Download SKILL.mdSave it as .claude/skills/chem-msms-predict/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.
name
chem-msms-predict
description
Predict LC-MS/MS (MS2, tandem mass spectra) from SMILES via ICEBERG, a two-stage deep neural network. Outputs predicted m/z vs intensity spectrum, fragment ion SMILES, and a spectrum plot.
metadata.category
chemistry, drug-discovery
metadata.venv
msms

LC-MS/MS Spectrum Prediction

Goal

Predict the LC-MS/MS (tandem mass) spectrum of a molecule given its SMILES string using ICEBERG — a two-stage GNN that first generates a fragmentation DAG (fragment ions) and then predicts their intensities. Output is a predicted spectrum (m/z, intensity) with optional fragment SMILES assignments per peak.

When to Use This Skill

  • A SMILES string is known and a predicted LC-MS/MS spectrum (m/z vs intensity) is needed.
  • Fragment ion assignments (SMILES per peak) are required.
  • No reference spectrum exists, or comparison to a predicted spectrum is desired.
  • Companion skill chem-spectrum-matcher can compare predicted vs experimental spectra.

When NOT to Use This Skill

  • Experimental spectrum already available — use it directly; no prediction needed.
  • Only compound name known — first resolve to SMILES via drug-db-pubchem, then call this skill.
  • GC-MS or other MS types — ICEBERG is trained on LC-MS/MS only; flag a warning before proceeding.
  • Organometallics or MW > 1000 — predictions may be unreliable or fail due to unsupported element types.

Prerequisites

Scripts run in the msms environment, created on first use by venv/run. It installs ICEBERG 2.1 (ms-pred, pinned to a commit) on a CPU torch build, and is x86_64 Linux only: DGL publishes no aarch64 wheels.

Download the ICEBERG 2.1 checkpoints
bash
${CLAUDE_SKILL_DIR}/../../venv/run msms python ${CLAUDE_SKILL_DIR}/scripts/download_weights.py

This fetches the public weights trained on MassSpecGym (msg_all, ~80 MB) from the ms-pred authors:

downloads/iceberg_msg_all/
├── gen/best.ckpt           # generator (stage 1)
└── inten_contr/best.ckpt   # intensity predictor (stage 2)

Weights trained on NIST are available from the ms-pred authors on proof of a NIST license. ICEBERG 2.0 checkpoints do not load: 2.1 adds instrument types. Flag error and stop if either checkpoint is missing.

Instructions

Step 1 — Run inference and generate spectrum
bash
${CLAUDE_SKILL_DIR}/../../venv/run msms python ${CLAUDE_SKILL_DIR}/scripts/predict_msms.py \
    --smiles "c1ccccc1C(=O)OCCN" \
    --gen_ckpt downloads/iceberg_msg_all/gen/best.ckpt \
    --inten_ckpt downloads/iceberg_msg_all/inten_contr/best.ckpt \
    --collision_energies 20 40 \
    --adduct "[M+H]+" \
    --instrument "Orbitrap" \
    --output_dir results/msms_prediction

Key parameters:

  • --smiles — input molecule as SMILES string
  • --gen_ckpt / --inten_ckpt — paths to ICEBERG checkpoints
  • --collision_energies — one or more collision energies in eV (e.g. 20 40 60); model was trained on absolute eV values
  • --adduct — supported adducts: [M+H]+, [M-H]-, [M+Na]+, [M+NH4]+, and others from ms_pred.common.ion2mass
  • --instrument — instrument type for intensity prediction (e.g. "Orbitrap", "QTOF")
  • --threshold — confidence cutoff for DAG fragment generator (default 0.1; lower = more fragments)
  • --sparse_k — maximum number of peaks returned (default 100)
  • --num_workers — parallel CPU workers (default 0: serial); inference runs on the CPU

Outputs written to --output_dir:

FileDescription
spectrum.pngStem plot of predicted spectrum, one panel per collision energy
fragments.jsonJSON list per CE: {mz, intensity, fragment_smiles} sorted by intensity
input_configs.yamlAll run parameters for reproducibility
Show full SKILL.md (231 more words)Show less
Step 2 — Inspect fragment assignments (optional)

fragments.json maps each predicted peak to the fragment ICEBERG assigns it, as the Kekulé SMILES of the heavy-atom substructure (hydrogen shifts are not shown). There is one entry per fragment, so fragments with the same formula repeat an m/z; spectrum.png sums them. For 2-aminoethyl benzoate at 20 eV:

json
{
  "20": [
    {"mz": 149.0597, "intensity": 1.0, "fragment_smiles": "CCOC(=O)C1=CC=CC=C1"},
    {"mz": 105.0335, "intensity": 0.944, "fragment_smiles": "O=CC1=CC=CC=C1"},
    ...
  ]
}

Use this to rationalize which bonds fragment at which energy.

Step 3 — Compare with experimental spectrum (optional)

If an experimental spectrum is available, use the companion skill:

→ chem-spectrum-matcher

Examples

2-Aminoethyl benzoate (c1ccccc1C(=O)OCCN)
bash
${CLAUDE_SKILL_DIR}/../../venv/run msms python ${CLAUDE_SKILL_DIR}/examples/predict_smiles.py \
    --gen_ckpt downloads/iceberg_msg_all/gen/best.ckpt \
    --inten_ckpt downloads/iceberg_msg_all/inten_contr/best.ckpt \
    --output_dir .agents/test/msms_example

Expected output:

  • spectrum.png — two-panel spectrum (20 eV + 40 eV)
  • fragments.json — fragment assignments for both energies
  • Precursor [M+H]+ ≈ 166.086 Da

Constraints

  • Environment: All scripts run in the msms environment (venv/run msms, x86_64 Linux only), on the CPU.
  • Checkpoints required: Script raises FileNotFoundError if --gen_ckpt or --inten_ckpt are missing.
  • Collision energy units: Use absolute eV values. To convert NCE → eV, set nce=True in iceberg_prediction() directly.
  • Non-binned output only: This skill uses binned_out=False (high-precision m/z). Binned output disables fragment assignment.
  • Single-compound inference: Provide one SMILES per call. For batch prediction, loop over SMILES and use separate output dirs.
  • Unsupported elements: Molecules containing metals, lanthanides, or rare main-group elements may fail or produce low-quality predictions.
  • MW limit: ICEBERG is unreliable for MW > 1000 Da.

References


Author: Magdalena Lederbauer Contact: GitHub @mlederbauer

© learningmatter-mit, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 4 other files (scripts) in skills/chem-msms-predict of learningmatter-mit/AtomisticSkills.

  • SKILL.md
  • examples/README.md
  • examples/predict_smiles.py
  • scripts/download_weights.py
  • scripts/predict_msms.py

Open the folder on GitHubat commit 6257444

Compare with similar skills

Chem Msms Predict next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Chem Msms Predict compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Chem Msms Predict this skilllearningmatter-mit/AtomisticSkills176—~1.6kAutomated safety check: PassMIT
Torchdrugdavila7/claude-code-templates32k12 repos~3.5kAutomated safety check: PassMIT
Torchdrug Englishaipoch/medical-research-skills2k—~2.6kAutomated safety check: PassMIT
Rowanlamm-mit/scienceclaw2444 repos~3.1kAutomated safety check: WarnProprietary
Deepchemdavila7/claude-code-templates32k11 repos~4.4kAutomated safety check: PassMIT
tangermeme Genomic Model Analysisjmschrei/tangermeme311—~1.6kAutomated safety check: PassMIT

Similar skills

  • Torchdrug

    davila7/claude-code-templates

    Graph-based drug discovery toolkit. An agent skill from davila7/claude-code-templates.

    32k GitHub starsUsed in 12 repos~3.5k tokens
    Research & ScienceAuto-check passed
  • Torchdrug English

    aipoch/medical-research-skills

    PyTorch-native Graph Neural Network framework for molecules and proteins.

    2k GitHub stars~2.6k tokensUpdated 21 days ago
    Research & ScienceAuto-check passed
  • Rowan

    lamm-mit/scienceclaw

    Cloud-based quantum chemistry platform with Python API. An agent skill from lamm-mit/scienceclaw.

    244 GitHub starsUsed in 4 repos~3.1k tokens
    Research & ScienceAuto-check: warnings
  • Deepchem

    davila7/claude-code-templates

    Molecular machine learning toolkit. An agent skill from davila7/claude-code-templates.

    32k GitHub starsUsed in 11 repos~4.4k tokens
    Research & ScienceAuto-check passed
  • Routes agents to the right tangermeme reference for analyzing trained genomic deep learning models, from attributions and motif experiments to variant effects and design.

    311 GitHub stars~1.6k tokensUpdated today
    Research & ScienceAuto-check passed
  • Hcls Build Agent

    aws-samples/amazon-bedrock-agents-healthcare-lifesciences

    Official

    A skill your agent uses when a developer wants to build a new healthcare or life sciences agent, structure tools and system prompts for an HCLS workflow, or create a Strands agent with…

    274 GitHub stars~885 tokensUpdated 6 days ago
    Research & ScienceAuto-check passed

More from learningmatter-mit/AtomisticSkills

All 129 skills in this repo
  • Drug Binding Site Definition

    learningmatter-mit/AtomisticSkills

    Define a docking search box (center coordinates + box dimensions in Angstroms) from a co-crystal ligand, binding-site residues, or a saved JSON specification.

    176 GitHub stars~2.9k tokensUpdated today
    Auto-check passed
  • Drug Complex System Builder

    learningmatter-mit/AtomisticSkills

    Build a solvated, charge-neutralized protein-ligand complex for OpenMM molecular dynamics simulation.

    176 GitHub stars~2k tokensUpdated today
    Auto-check passed
  • Drug Pocket Detection

    learningmatter-mit/AtomisticSkills

    Identify and rank ligandable pockets on a protein structure or model using geometry (fpocket) or an ML predictor (P2Rank).

    176 GitHub stars~4k tokensUpdated today
    Auto-check passed
  • Chem Bond Dissociation

    learningmatter-mit/AtomisticSkills

    Calculate homolytic and heterolytic bond dissociation energies (BDEs) for all single bonds in a molecule using MLIPs with RDKit fragmentation.

    176 GitHub stars~2.5k tokensUpdated today
    Auto-check passed
  • Chem Conformer Search

    learningmatter-mit/AtomisticSkills

    Generate molecular conformers with RDKit ETKDG, relax with MLIPs, and rank by energy with Boltzmann weighting.

    176 GitHub stars~1.3k tokensUpdated today
    Auto-check passed
  • Chem DB Mof

    learningmatter-mit/AtomisticSkills

    Query multiple MOF databases (QMOF via MPContribs; ARC-MOF DB7/Majumdar et al.

    176 GitHub stars~1.9k tokensUpdated today
    Auto-check passed

Questions about Chem Msms Predict

What does Chem Msms Predict do?

Predict LC-MS/MS (MS2, tandem mass spectra) from SMILES via ICEBERG, a two-stage deep neural network. Chem Msms Predict is an agent skill from learningmatter-mit/AtomisticSkills. Predict LC-MS/MS (MS2, tandem mass spectra) from SMILES via ICEBERG, a two-stage deep neural network.

When should I use Chem Msms Predict?

Chem Msms Predict fits situations like: tasks that involve Drug discovery and cheminformatics; tasks that involve Deep learning.

How do I install Chem Msms Predict in Claude Code?

Run `npx skills add learningmatter-mit/AtomisticSkills --skill chem-msms-predict -a claude-code`. Or copy the skill folder (skills/chem-msms-predict in learningmatter-mit/AtomisticSkills) into .claude/skills/chem-msms-predict in your project. Claude Code loads it when a task matches its description.

How do I install Chem Msms Predict in Codex?

Run `npx skills add learningmatter-mit/AtomisticSkills --skill chem-msms-predict -a codex`. Or copy the skill folder (skills/chem-msms-predict in learningmatter-mit/AtomisticSkills) into .agents/skills/chem-msms-predict in your project. Codex loads it when a task matches its description.

Can I use Chem Msms Predict in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add learningmatter-mit/AtomisticSkills --skill chem-msms-predict -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/chem-msms-predict, .gemini/skills/chem-msms-predict, .github/skills/chem-msms-predict and .opencode/skills/chem-msms-predict in your project.

What does Chem Msms Predict need to run?

Going by SKILL.md and its folder, Chem Msms Predict needs Python for the scripts in its folder. Our summary lists: Python 3.

Does Chem Msms Predict access the network?

SKILL.md names 2 domains. As links in the text: github.com and doi.org. This is read from the text; nothing was executed.

Is Chem Msms Predict safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Chem Msms Predict use?

Chem Msms Predict is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Chem Msms Predict use?

About 1.6k tokens (SKILL.md is roughly 6.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Chem Msms Predict?

Skills that share tags, products or a category with Chem Msms Predict: Torchdrug (davila7/claude-code-templates, 32k stars), Torchdrug English (aipoch/medical-research-skills, 2k stars), Rowan (lamm-mit/scienceclaw, 244 stars) and Deepchem (davila7/claude-code-templates, 32k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Chem Msms Predict?

learningmatter-mit (a GitHub organization) maintains it in learningmatter-mit/AtomisticSkills, which has 176 GitHub stars. The repository holds 129 skills in this directory. The repository was last updated on October 7, 2026.

Source: learningmatter-mit/AtomisticSkills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.