Rdkit molecule standardization
Skill ma-compbio-lab/SkillFoundry/skills/drug-discovery-and-cheminformatics/rdkit-molecule-standardization
Use this skill to standardize one small-molecule SMILES string with RDKit MolStandardize. It is for local cleanup, salt stripping, uncharging, and tautomer canonicalization, not docking or batch-library processing.From its SKILL.md
npx -y skills add ma-compbio-lab/SkillFoundry --skill rdkit-molecule-standardizationAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
SKILL.md
2.4 KB, 539 tokens by cl100k_base, as published. Nobody here has run it
Purpose
Turn a single SMILES string into a deterministic standardization summary using RDKit MolStandardize.
When to use
- You need a local starter for the taxonomy leaf
molecule-standardization. - You want to strip salts or counterions before downstream featurization.
- You want a compact JSON summary with fragment-parent, uncharged, and canonical-tautomer SMILES.
When not to use
- You need conformers, docking, or quantum chemistry.
- You need bulk normalization across large compound libraries.
Inputs
- One SMILES string passed by
--smilesor a single-line file passed by--smiles-file - Optional molecule name
- Optional JSON output path
Outputs
- JSON summary with cleaned, fragment-parent, uncharged, and canonical-tautomer SMILES
- Charge before and after standardization
- Formula and heavy-atom count for the standardized molecule
Requirements
slurm/envs/chem-toolswithRDKitandMolStandardize
Procedure
- Run
slurm/envs/chem-tools/bin/python skills/drug-discovery-and-cheminformatics/rdkit-molecule-standardization/scripts/standardize_rdkit_molecule.py --smiles-file skills/drug-discovery-and-cheminformatics/rdkit-molecule-standardization/examples/sodium_acetate.smiles --name sodium-acetate. - Inspect
fragment_parent_smilesto confirm salt stripping. - Inspect
uncharged_smilesandcanonical_tautomer_smilesbefore reusing the molecule downstream.
Validation
- The script exits successfully with the
chem-toolsprefix. - The sodium acetate example standardizes to
CC(=O)O. - The runtime output matches
assets/sodium_acetate_standardized.json.
Failure modes and fixes
- Invalid SMILES: verify the input string or the first non-empty line in the SMILES file.
- Missing RDKit environment: run the script with
slurm/envs/chem-tools/bin/python.
Safety and limits
- This is a molecule-cleanup helper only.
- It does not imply medicinal-chemistry, ADMET, or synthesis interpretation.
Provenance
- RDKit documentation: https://www.rdkit.org/docs/
- RDKit MolStandardize API: https://www.rdkit.org/docs/source/rdkit.Chem.MolStandardize.rdMolStandardize.html
Related skills
rdkit-molecular-descriptorschembl-molecule-search
What ships with it: 8 files
8.9 KB alongside SKILL.md, 2 of them executable
assets/
examples/
- README.md498 B
- sodium_acetate.smiles17 B
scripts/
- standardize_rdkit_molecule.pyruns3.4 KB
tests/
- test_standardize_rdkit_molecule.pyruns3.0 KB
- metadata.yaml1.3 KB
- refs.md233 B