CtrlK
BlogDocsLog inGet started
Tessl Logo

molecular-rag

Retrieve structurally similar compounds with known properties from ChEMBL/ZINC to ground predictions and inform optimization. Based on MolRAG (Xian 2025, ACL).

56

Quality

65%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./backend/cli/skills/chemistry/molecular-rag/SKILL.md
SKILL.md
Quality
Evals
Security

Molecular RAG (Retrieval-Augmented Generation)

Overview

LLMs hallucinate molecular properties. This skill grounds predictions by retrieving structurally similar compounds with experimentally measured properties from ChEMBL and ZINC. When the agent says "this compound should have good hERG safety," it can now check what happened with similar compounds in real assays.

Based on:

  • MolRAG (Xian et al., 2025, ACL): RAG for molecular property prediction — retrieves similar compounds to ground LLM predictions

When to Use This Skill

  • Before property prediction: Retrieve analogs with known properties for context
  • Lead optimization: Find what modifications worked for similar scaffolds
  • Novelty assessment: Check if your generated molecule is truly novel or already known
  • SAR grounding: Ground structure-activity reasoning in experimental data

Do NOT use this skill for:

  • Bulk database queries (use chembl-database or pubchem-database directly)
  • De novo generation (use denovo-design)

Related Skills

  • chembl-database: Direct ChEMBL API access
  • pubchem-database: PubChem compound lookup
  • zinc-database: ZINC compound search
  • admet-reasoning: Interpret properties of retrieved analogs

Installation

pip install rdkit-pypi requests pandas

Core Workflows

1. Find Similar Compounds with Known Properties

python scripts/retrieve_analogs.py \
    --smiles "c1ccc(NC(=O)c2ccccc2Cl)cc1" \
    --similarity-threshold 0.6 \
    --max-results 20 \
    --output analogs.json

2. Target-Specific Analog Search

python scripts/retrieve_analogs.py \
    --smiles "c1ccc(NC(=O)c2ccccc2Cl)cc1" \
    --target CHEMBL25 \
    --output target_analogs.json

3. SAR Context for Optimization

python scripts/retrieve_analogs.py \
    --smiles "c1ccc(NC(=O)c2ccccc2Cl)cc1" \
    --include-activities \
    --output sar_context.json

Script Reference

ScriptPurposeKey Outputs
retrieve_analogs.pyFind similar compounds with experimental dataJSON with analogs, similarities, bioactivities
Repository
synthetic-sciences/openscience
Last updated
First committed

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.