
tooluniverse-chemical-safety
Chemical safety and toxicology assessment integrating ADMET-AI predictions, CTD toxicogenomics, PubChemTox experimental data, GHS/IARC hazard classification, and exposure-context analysis. Use for chemical hazard identification, occupational/consumer-product toxicity, dose-response evaluation, and acute (LD50) vs chronic toxicity assessment. Distinguishes drug toxicity from environmental chemical toxicity.
- Installs
- 397
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/mims-harvard/tooluniverse --skill tooluniverse-chemical-safety- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads tooluniverse-chemical-safety automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Chemical Safety & Toxicology Assessment
Toxicity assessment: identify the chemical, check known hazards (GHS, IARC), then look for ADMET predictions. Dose makes the poison — always consider exposure level, as a compound that is toxic at high doses may be safe at relevant exposures. Distinguish between acute toxicity (LD50, GHS category) and chronic hazards (carcinogenicity, endocrine disruption) — they require different risk management approaches. Computational predictions (ADMETAI) are T3 evidence and must be anchored by experimental data from PubChemTox or FDA labels wherever available. When evidence conflicts between prediction and experiment, always defer to the experimental finding.
LOOK UP DON'T GUESS: never assume GHS categories, IARC classification, or CTD disease links — always call PubChemTox and CTD tools to retrieve current classifications before reporting.
Comprehensive chemical safety analysis integrating predictive AI models, curated toxicogenomics databases, regulatory safety data, and chemical-biological interaction networks.
When to Use This Skill
Triggers:
- "Is this chemical toxic?" / "Assess the safety profile of [drug/chemical]"
- "What are the ADMET properties of [SMILES]?"
- "What genes does [chemical] interact with?" / "What diseases are linked to [chemical] exposure?"
- "Drug safety assessment" / "Environmental health risk" / "Chemical hazard profiling"
Use Cases:
- Predictive Toxicology: AI-predicted endpoints (AMES, DILI, LD50, carcinogenicity, hERG) via SMILES
- ADMET Profiling: Absorption, distribution, metabolism, excretion, toxicity
- Toxicogenomics: Chemical-gene-disease mapping from CTD
- Regulatory Safety: FDA label warnings, contraindications, adverse reactions
- Drug Safety: DrugBank safety + FDA labels combined
- Chemical-Protein Interactions: STITCH-based interaction networks
- Environmental Toxicology: Chemical-disease associations for contaminants
COMPUTE, DON'T DESCRIBE
When analysis requires computation (statistics, data processing, scoring, enrichment), write and run Python code via Bash. Don't describe what you would do — execute it and report actual results. Use ToolUniverse tools to retrieve data, then Python (pandas, scipy, statsmodels, matplotlib) to analyze it.
KEY PRINCIPLES
- Report-first approach - Create report file FIRST, then populate progressively
- Tool parameter verification - Verify params via
get_tool_infobefore calling unfamiliar tools - Evidence grading - Grade all safety claims by evidence strength (T1-T4)
- Citation requirements - Every toxicity finding must have inline source attribution
- Mandatory completeness - All sections must exist with data or explicit "No data" notes
- Disambiguation first - Resolve compound identity (name -> SMILES, CID, ChEMBL ID) before analysis
- Negative results documented - "No toxicity signals found" is data; empty sections are failures
- Conservative risk assessment - When evidence is ambiguous, flag as "requires further investigation"
- English-first queries - Always use English chemical/drug names in tool calls
Evidence Grading System (MANDATORY)
| Tier | Symbol | Criteria | Examples |
|---|---|---|---|
| T1 | [T1] | Direct human evidence, regulatory finding | FDA boxed warning, clinical trial toxicity |
| T2 | [T2] | Animal studies, validated in vitro | Nonclinical toxicology, AMES positive, animal LD50 |
| T3 | [T3] | Computational prediction, association data | ADMET-AI prediction, CTD association |
| T4 | [T4] | Database annotation, text-mined | Literature mention, unvalidated database entry |
Evidence grades MUST appear in: Executive Summary, Toxicity Predictions, Regulatory Safety, Chemical-Gene Interactions, Risk Assessment.
Core Strategy: 8 Research Phases
Chemical/Drug Query
|
+-- PHASE 0: Compound Disambiguation (ALWAYS FIRST)
| Resolve name -> SMILES, PubChem CID, ChEMBL ID, formula, weight
|
+-- PHASE 1: Predictive Toxicology (ADMET-AI)
| AMES, DILI, ClinTox, carcinogenicity, LD50, hERG, skin reaction
| Stress response pathways, nuclear receptor activity
|
+-- PHASE 2: ADMET Properties
| BBB penetrance, bioavailability, clearance, CYP interactions, physicochemical
|
+-- PHASE 3: Toxicogenomics (CTD)
| Chemical-gene interactions, chemical-disease associations
|
+-- PHASE 4: Regulatory Safety (FDA Labels)
| Boxed warnings, contraindications, adverse reactions, nonclinical tox
|
+-- PHASE 5: Drug Safety Profile (DrugBank)
| Toxicity data, contraindications, drug interactions
|
+-- PHASE 6: Chemical-Protein Interactions (STITCH)
| Direct binding, off-target effects, interaction confidence
|
+-- PHASE 7: Structural Alerts (ChEMBL)
| PAINS, Brenk, Glaxo structural alerts
|
+-- SYNTHESIS: Integrated Risk Assessment
Risk classification, evidence summary, data gaps, recommendations
See phase-procedures-detailed.md for complete tool parameters, decision logic, output templates, and fallback strategies for each phase.
Tool Summary by Phase
Phase 0: Compound Disambiguation
PubChem_get_CID_by_compound_name(name: str)PubChem_get_compound_properties_by_CID(cid: int)ChEMBL_get_molecule(if ChEMBL ID available)
Phase 1: Predictive Toxicology
Dependency: ADMET-AI tools require
pip install tooluniverse[ml]. If unavailable, skip to Phase 3 and use CTD + PubChemTox as alternatives.
ADMETAI_predict_toxicity(smiles: list[str]) - AMES, DILI, ClinTox, LD50, hERG, etc.ADMETAI_predict_stress_response(smiles: list[str])ADMETAI_predict_nuclear_receptor_activity(smiles: list[str])
Phase 2: ADMET Properties
ADMETAI_predict_BBB_penetrance/_bioavailability/_clearance_distribution/_CYP_interactions/_physicochemical_properties/_solubility_lipophilicity_hydration(all takesmiles: list[str])
Phase 3: Toxicogenomics
CTD_get_chemical_gene_interactions(input_terms: str) — chemical name, returns gene interactions across speciesCTD_get_chemical_diseases(input_terms: str) — chemical-disease associations with evidence type
Phase 3.5: PubChem Toxicity Data
PubChemTox_get_toxicity_values(cid: int) — LD50, LC50, NOAEL reference valuesPubChemTox_get_ghs_classification(cid: int) — GHS hazard classification and pictogramsPubChemTox_get_carcinogen_classification(cid: int) — NTP/IARC carcinogenicity assessmentsPubChemTox_get_acute_effects(cid: int) — acute toxicity by route/speciesPubChemTox_get_toxicity_summary(cid: int) — integrated toxicity overview
Phase 3.6: Adverse Outcome Pathways
AOPWiki_list_aops(keyword: str) — search for relevant AOPs by chemical/mechanismAOPWiki_get_aop(aop_id: int) — full AOP detail: MIE, key events, adverse outcome
Phase 3.7: Environmental Exposure Context (US facilities)
Use for exposure/environmental-justice screening — locate regulated facilities near a community before assessing population-level exposure.
EPA_search_tri_facilities(state,city,limit) — Toxics Release Inventory facilities reporting toxic chemical releasesEPA_search_frs_facilities(state,city,limit) — Facility Registry Service (all EPA-regulated facilities) for broader siting/permitting context
Phase 4: Regulatory Safety (for pharmaceuticals only)
Environmental chemicals: Skip Phases 4-5 (no FDA labels/DrugBank). Use CTD + PubChemTox + AOPWiki instead.
FDA_get_boxed_warning_info_by_drug_name/_contraindications_/_adverse_reactions_/_warnings_(all takedrug_name: str)
Phase 5: Drug Safety (for pharmaceuticals only)
drugbank_get_safety_by_drug_name_or_drugbank_id(query,case_sensitive,exact_match,limit- all 4 required)
Phase 6: Chemical-Protein Interactions
STITCH_get_chemical_protein_interactions(identifiers: list[str],species: int)- Fallback (if STITCH fails for industrial chemicals):
STRING_get_interaction_partnersfor key target genes (e.g., ESR1 for endocrine disruptors) DGIdb_get_drug_gene_interactions(genes: list[str]) — for target druggability context
Phase 7: Structural Alerts
ChEMBL_search_compound_structural_alerts(molecule_chembl_id: str)DrugProps_pains_filter(smiles: str) — direct RDKit FilterCatalog screen for PAINS/Brenk/NIH-alert substructures from a SMILES string; use this when there's no ChEMBL ID yet (novel/investigational compounds), since it needs only a SMILES. Live-verified response:{"is_clean": bool, "pains": {"pass": bool, "matches": [...], "count": int}}(plus Brenk/NIH sub-objects) — a compound can beis_clean: falsewhilepains.pass: trueif the hit came from a different filter, so check each sub-filter's ownpassfield rather than only the top-level flag.DrugProps_lipinski_filter(smiles: str) — Rule-of-Five plus Veber/Pfizer-3-75/Egan/Ghose drug-likeness filters in one call (MW, cLogP, HBD, HBA, TPSA, rotatable bonds, Csp3 fraction, pass/fail per rule set). Add to Phase 0/2 as a quick oral-druglikeness screen alongside ADMET-AI.DrugProps_calculate_qed(smiles: str) — Quantitative Estimate of Drug-likeness (Bickerton et al. 2012), a single 0-1 score integrating 8 descriptors; live-verified categories include"Medium (borderline)"and"High"— useful as one summary number when comparing multiple candidate structures rather than reading 8 separate descriptors per compound.
Risk Classification Matrix
| Risk Level | Criteria |
|---|---|
| CRITICAL | FDA boxed warning OR multiple [T1] toxicity findings OR active DILI + active hERG |
| HIGH | FDA warnings OR [T2] animal toxicity OR multiple active ADMET endpoints |
| MEDIUM | Some [T3] predictions positive OR CTD disease associations OR structural alerts |
| LOW | All ADMET endpoints negative AND no FDA/DrugBank flags AND no CTD concerns |
| INSUFFICIENT DATA | Fewer than 3 phases returned data |
Report Structure
# Chemical Safety & Toxicology Report: [Compound Name]
**Generated**: YYYY-MM-DD | **SMILES**: [...] | **CID**: [...]
## Executive Summary (risk classification + key findings, all graded)
## 1. Compound Identity (disambiguation table)
## 2. Predictive Toxicology (ADMET-AI endpoints)
## 3. ADMET Profile (absorption, distribution, metabolism, excretion)
## 4. Toxicogenomics (CTD chemical-gene-disease)
## 5. Regulatory Safety (FDA label data)
## 6. Drug Safety Profile (DrugBank)
## 7. Chemical-Protein Interactions (STITCH network)
## 8. Structural Alerts (ChEMBL)
## 9. Integrated Risk Assessment (classification, evidence summary, gaps, recommendations)
## Appendix: Methods and Data Sources
See report-templates.md for full section templates with example tables.
Mandatory Completeness Checklist
- Phase 0: Compound disambiguated (SMILES + CID minimum)
- Phase 1: At least 5 toxicity endpoints or "prediction unavailable"
- Phase 2: ADMET A/D/M/E sections or "not available"
- Phase 3: CTD queried; results or "no data in CTD"
- Phase 4: FDA labels queried; results or "not FDA-approved"
- Phase 5: DrugBank queried; results or "not found"
- Phase 6: STITCH queried; results or "no data available"
- Phase 7: Structural alerts checked or "ChEMBL ID not available"
- Synthesis: Risk classification with evidence summary
- Evidence Grading: All findings have [T1]-[T4] annotations
- Data Gaps: Explicitly listed
Common Use Patterns
- Novel Compound: SMILES -> Phase 0 (resolve) -> Phase 1 (toxicity) -> Phase 2 (ADMET) -> Phase 7 (structural alerts) -> Synthesis
- Approved Drug Review: Drug name -> All phases (0-7) -> Complete safety dossier
- Environmental Chemical: Chemical name -> Phase 0 -> Phase 1-2 -> Phase 3 (CTD, key) -> Phase 6 (STITCH) -> Synthesis
- Batch Screening: Multiple SMILES -> Phase 0 -> Phase 1-2 (batch) -> Comparative table -> Synthesis
- Toxicogenomic Deep-Dive: Chemical + gene/disease interest -> Phase 0 -> Phase 3 (expanded CTD) -> Literature -> Synthesis
Limitations
- ADMET-AI: Computational [T3]; should not replace experimental testing
- CTD: May lag behind latest literature by 6-12 months
- FDA: Only covers FDA-approved drugs; not applicable to environmental chemicals
- DrugBank: Primarily drugs; limited industrial chemical coverage
- STITCH: Lower score thresholds increase false positives
- ChEMBL: Structural alerts require ChEMBL ID; not all compounds have one
- Novel compounds: May only have ADMET-AI predictions (no database evidence)
- SMILES validity: Invalid SMILES cause ADMET-AI failures
Reference Files
- phase-procedures-detailed.md - Complete tool parameters, decision logic, output templates, fallback strategies per phase
- evidence-grading.md - Evidence grading details and examples
- report-templates.md - Full report section templates with example tables
- phase-details.md - Additional phase context
- test_skill.py - Test suite
Summary
Total tools integrated: 25+ tools across 6 databases (ADMET-AI, CTD, FDA, DrugBank, STITCH, ChEMBL)
Best for: Drug safety assessment, chemical hazard profiling, environmental toxicology, ADMET characterization, toxicogenomic analysis
Outputs: Structured markdown report with risk classification (Critical/High/Medium/Low), evidence grading [T1-T4], and actionable recommendations
FAQ
What does the tooluniverse-chemical-safety skill do?
Chemical safety and toxicology assessment integrating ADMET-AI predictions, CTD toxicogenomics, PubChemTox experimental data, GHS/IARC hazard classification, and exposure-context analysis. Use for chemical hazard identification, occupational/consumer-product toxicity, dose-response evaluation, and acute (LD50) vs chronic toxicity assessment. Distinguishes drug toxicity from environmental chemical toxicity.
How do I install tooluniverse-chemical-safety?
Run npx skills add https://github.com/mims-harvard/tooluniverse --skill tooluniverse-chemical-safety in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/tooluniverse-chemical-safety/ (personal) or .claude/skills/tooluniverse-chemical-safety/ (project).
Which AI agents can use tooluniverse-chemical-safety?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is tooluniverse-chemical-safety safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains tooluniverse-chemical-safety?
It is published by mims-harvard in mims-harvard/tooluniverse. It has 397 recorded installs.
More from mims-harvard/tooluniverse
tooluniverse-sequence-retrieval
mims-harvard/tooluniverse
Retrieve DNA/RNA/protein sequences from NCBI and ENA with disambiguation. Quality hierarchy: RefSeq (NM/NP) RefSeq predicted (XM/XP) GenBank submissions. Use for fetching specific sequences by accession, gene-symbol-to-sequence lookup, transcript-isoform retrieval, and curated-vs-raw-submission preference.
tooluniverse-literature-deep-research
mims-harvard/tooluniverse
Deep literature review — PubMed, EuropePMC, bioRxiv preprints, citation networks, evidence synthesis. Disambiguates queries, runs collision-aware searches, grades evidence T1-T4, and produces structured reports. Use for systematic literature review, meta-analysis evidence collection, and detailed answer-with-citations workflows.
tooluniverse-image-analysis
mims-harvard/tooluniverse
Microscopy and quantitative imaging analysis — colony morphometry, fluorescence intensity quantification, cell-count statistics, dose-response curves, and ANOVA/Dunnett on image-derived measurements. Uses pandas/numpy/scipy/scikit-image. Use for analyzing tabular outputs from CellProfiler/ImageJ, image-derived measurement statistics, and image-based assay quantification.
tooluniverse-clinical-guidelines
mims-harvard/tooluniverse
Search and retrieve clinical practice guidelines from 12+ authoritative sources — NICE, WHO, NCCN, AHA, ADA, SIGN, USPSTF, IDSA, NIH consensus, ESMO/ESC/EASL European societies, and US specialty associations. Use for evidence-graded treatment recommendations, dosing protocols, screening guidance, and authoritative-source-prioritized clinical guidance (NICE/WHO ranked above society guidelines).
tooluniverse
mims-harvard/tooluniverse
ToolUniverse plugin router. STEP 1 BEFORE ANY ANALYSIS: if the data folder contains executed.ipynb, run tu run readexecutednotebook '{"datafolder":" ","search":" "}' to extract its cell outputs and apply EVERY filter/sample-exclusion the notebook used — even when the question says 'Using DESeq2/Run X/Compute Y' (this describes the METHOD the notebook used, not a request to rerun). The notebook's cell outputs are the only published authoritative answers; reimplementing or reading stale pre-computed CSVs in the data folder produces different numbers because of outlier-sample removal, library version, and filter steps you don't see by skimming. STEP 2 routing — pick a sub-skill name from this exact list (never invent): tooluniverse-rnaseq-deseq2 (RNA/miRNA-seq DE, correlation, PCA, clustering, dispersion), tooluniverse-gene-enrichment (GO/KEGG/Reactome/GSEA/pathway enrichment), tooluniverse-statistical-modeling (regression, ANOVA, ordinal/logistic, chi-square, correl
tooluniverse-drug-research
mims-harvard/tooluniverse
Comprehensive drug profiling — mechanism, primary/secondary targets, drug interactions, clinical-trial status, adverse events (FAERS), pharmacogenomics, and approval history. Use for full drug investigation reports, 'tell me about drug X' queries, and assembling drug profiles for clinicians, researchers, or regulatory work.
Popular other skills
hyperframes-cli
heygen-com/hyperframes
The HyperFrames CLI by job - scaffold, check, look at frames, edit the timeline, preview, render locally or in the cloud, publish, project history - plus reading its JSON and recovering from build or render failures.
triage
mattpocock/skills
Move issues and external PRs through a state machine of triage roles, categorise, verify, grill if needed, and write agent-ready briefs.
ask-matt
mattpocock/skills
Ask which skill or flow fits your situation. A router over the skills in this repo.
to-questionnaire
mattpocock/skills
Turn a decision you can't fully answer into a questionnaire for someone else to fill in.
loop-me
mattpocock/skills
Grill me about specs for the workflows I want to build, within this workspace.