Token导航 LogoToken导航

Agent Skill · 研究检索

tooluniverse-small-molecule-discovery(工具宇宙小分子发现)

tooluniverse-small-molecule-discovery 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

tooluniverse-small-molecule-discovery 是研究检索类 Agent Skill,可用宿主为 Codex、Claude、Cursor、Gemini CLI,通过GitHub 仓库获取,权限为需要联网;许可证信息还不明确,第三方扫描有提醒项,按安装量在研究检索类的 73,675 个 Skill 里排第 40,226。

总安装 1,311周安装 49GitHub Stars 1,336下载 384核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
unknown

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:tooluniverse-small-molecule-discovery(工具宇宙小分子发现)
来源仓库:https://github.com/mims-harvard/tooluniverse
仓库路径:skills/tooluniverse-small-molecule-discovery
安装命令:
npx skills add https://github.com/mims-harvard/tooluniverse --skill tooluniverse-small-molecule-discovery
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/mims-harvard/tooluniverse --skill tooluniverse-small-molecule-discovery

这个 Skill 是做什么的

研究检索类 Skill 主要解决「找资料、核对事实、把来源整理清楚」的问题,通常会让助手先检索再总结。

用于查找、检索和筛选小分子发现相关信息。适合在 Codex、Claude、Cursor、Gemini CLI 中根据任务场景定位候选结果。通过 npx 命令从 GitHub 仓库安装并使用。安装前需确认权限范围和维护状态,注意可能触发联网或文件操作。

tooluniverse-small-molecule-discovery 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

来源仓库内路径:skills/tooluniverse-small-molecule-discovery

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 Codex、Claude、Cursor、Gemini CLI;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 npx skills add https://github.com/mims-harvard/tooluniverse --skill tooluniverse…;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要需要联网,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

tooluniverse-small-molecule-discovery 怎么安装?

在终端执行 npx skills add https://github.com/mims-harvard/tooluniverse --skill tooluniverse-small-mol…。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

tooluniverse-small-molecule-discovery 支持哪些 AI 工具?

公开资料标注支持 Codex、Claude、Cursor、Gemini CLI。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

tooluniverse-small-molecule-discovery 需要什么权限?

权限级别是需要联网。该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

tooluniverse-small-molecule-discovery 是免费的吗?

公开资料没有标注明确许可证,收费和商用限制都无法确认。正式使用前请到来源仓库核对授权说明。

tooluniverse-small-molecule-discovery 用的人多吗?

公开数据是累计安装 1,311 次,近一周安装 49 次,下载 384 次,GitHub 1,336 星。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

tooluniverse-small-molecule-discovery 安全吗?

第三方扫描有提醒项,说明存在需要人工确认的行为。安装前请打开源码看清它读了什么、联网到哪里。

值得选的地方和要先想清楚的地方

值得选的地方

  • 同时适配 4 种工具,换客户端不用重新找替代品。
  • 来源仓库有 1,336 星,维护活跃度相对可查。

先想清楚的地方

  • 许可证没有明确标注,能不能商用、能不能再分发都不确定。
  • 第三方扫描存在提醒项或未通过项,需要人工逐条确认。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 Codex,想直接扩展它能力的人。
  • 需要处理研究检索类任务、又不想每次都手写提示词的人。

不太适合

  • 需要明确授权才能用到公司项目里的场景。
  • 需要厂商级技术支持和 SLA 的生产系统。

研究检索类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
find-skills

寻找技能 · Codex、Claude

31,199,81316,486操作浏览器MIT有提醒
self-improving-agent

自我改进 Agent · OpenClaw

16,464,0023,396接触敏感数据MIT-0通过
soultrace

灵魂追踪 · Codex、Claude

7,588,94412需要联网未明确有提醒
self-improving

自我完善 · OpenClaw

6,829,2841,046需要联网MIT-0通过
microsoft-foundry

微软代工厂 · Codex、Claude

6,614,144764调用外部服务未明确有提醒
tooluniverse-small-molecule-discovery

工具宇宙小分子发现 · 本页

1,3111,336需要联网未明确有提醒

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

Small Molecule Discovery Skill

Systematic small molecule identification, characterization, and sourcing using PubChem, ChEMBL, BindingDB, ADMET-AI, SwissADME, eMolecules, and Enamine. Covers the full pipeline from compound name to structure, activity, ADMET properties, and commercial procurement.

Domain Reasoning

Drug-likeness is not a binary property. Lipinski's Rule of 5 was derived from orally administered, passively absorbed drugs and has many well-known exceptions: natural products, macrocycles, PROTACs, and many approved drugs violate one or more rules. The relevant question is not "does this pass Ro5?" but "does this compound's physicochemical profile match the requirements of the target, the intended route of administration, and the therapeutic context?" Focus on the specific requirements, not rigid rules.

LOOK UP DON'T GUESS

  • Compound identity (CID, ChEMBL ID, SMILES): call PubChem_get_CID_by_compound_name and ChEMBL_search_molecules; do not assume IDs from memory.
  • ADMET properties: run SwissADME_calculate_adme or ADMETAI_predict_* on the actual SMILES; do not estimate logP, TPSA, or bioavailability.
  • Binding affinities against a target: query ChEMBL_search_activities or BindingDB_get_ligands_by_uniprot; never cite IC50 values from memory.
  • Commercial availability: check eMolecules_search or Enamine_search_catalog; do not assume availability.

KEY PRINCIPLES:

  1. Resolve identity first - Always get CID and ChEMBL ID before research
  2. SMILES required for property prediction - Extract canonical SMILES from PubChem early
  3. English names in tools - Use IUPAC or common English names; avoid abbreviations in tool calls
  4. BindingDB is often unavailable - Fall back to ChEMBL activities when BindingDB times out
  5. eMolecules/Enamine return URLs - These tools generate search URLs, not direct data; note this to user

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.

When to Use

  • "Find information about compound X"
  • "What is the drug-likeness of this SMILES?"
  • "Show binding affinities for EGFR inhibitors"
  • "Search for compounds similar to imatinib"
  • "Is this compound commercially available?"
  • "What are the ADMET properties of this molecule?"
  • "Find ChEMBL activities for target Y"
  • "Predict targets for this small molecule"

Key Tools

ToolPurposeKey Params
PubChem_get_CID_by_compound_nameName to CID lookupcompound_name
PubChem_get_CID_by_SMILESSMILES to CID lookupsmiles
PubChem_get_compound_properties_by_CIDMW, formula, SMILES, InChIKeycid, properties
PubChem_search_compounds_by_similarityFind structurally similar compoundssmiles, threshold (0-100)
PubChem_search_compounds_by_substructureSubstructure searchsmiles
PubChem_get_compound_synonyms_by_CIDAll names/synonymscid
ChEMBL_search_moleculesSearch ChEMBL by name or IDquery
ChEMBL_get_moleculeFull ChEMBL molecule recordchembl_id
ChEMBL_search_similar_moleculesSimilarity search in ChEMBLquery (SMILES or ChEMBL ID)
ChEMBL_search_activitiesBinding affinities and assay datamolecule_chembl_id, target_chembl_id, pchembl_value__gte
ChEMBL_get_drug_mechanismsMOA for approved drugsdrug_chembl_id or drug_name
ChEMBL_search_targetsFind targets by namequery, organism
ChEMBL_get_target_activitiesAll ligands for a targettarget_chembl_id
SwissADME_calculate_admePhysicochemical + ADMET propertiesoperation="calculate_adme", smiles
SwissADME_check_druglikenessLipinski, Veber, Egan rulesoperation="check_druglikeness", smiles
ADMETAI_predict_physicochemical_propertiesMW, logP, TPSA, HBD/HBAsmiles (list)
ADMETAI_predict_bioavailabilityOral bioavailability predictionsmiles (list)
ADMETAI_predict_BBB_penetranceBlood-brain barrier permeabilitysmiles (list)
ADMETAI_predict_toxicityhERG, DILI, mutagenicitysmiles (list)
ADMETAI_predict_CYP_interactionsCYP450 inhibition/substratesmiles (list)
SwissTargetPrediction_predictPredict protein targets for compoundoperation="predict", smiles
eMolecules_searchFind commercially available compoundsquery (name or keyword)
eMolecules_search_smilesStructure-based commercial searchsmiles
eMolecules_get_vendorsFind vendors for a specific compoundcompound_id
Enamine_search_catalogSearch Enamine screening libraryquery
Enamine_search_smilesSearch Enamine by structuresmiles
Enamine_get_librariesList Enamine compound libraries(none required)

Workflow

Phase 1: Compound Identification

# Step 1: Name -> CID (PubChem canonical identity)
PubChem_get_CID_by_compound_name(compound_name="imatinib")
# -> CID: 5291

# Step 2: Get SMILES and properties (needed for all downstream tools)
PubChem_get_compound_properties_by_CID(
    cid="5291",
    properties="MolecularFormula,MolecularWeight,CanonicalSMILES,InChIKey,IUPACName"
)
# -> canonical SMILES, InChIKey (global identifier)

# Step 3: Get ChEMBL ID (for activity data)
ChEMBL_search_molecules(query="imatinib")
# -> ChEMBL ID (e.g., "CHEMBL941")

# Step 4: Get all synonyms (brand names, INN, etc.)
PubChem_get_compound_synonyms_by_CID(cid="5291")

ID resolution priority:

  1. Start with PubChem CID (most universal)
  2. Get ChEMBL ID (for bioactivity data)
  3. Use canonical SMILES for structure-based searches and ADMET

Phase 2: Structure-Based Search

Similarity search (find analogs):

PubChem_search_compounds_by_similarity(
    smiles="CANONICAL_SMILES",
    threshold=85   # Tanimoto threshold 0-100; 85 = highly similar
)
# Returns: list of CIDs of similar compounds

ChEMBL_search_similar_molecules(query="CHEMBL941")  # Or SMILES
# Returns: ChEMBL entries sorted by similarity

Substructure search (find compounds containing a scaffold):

PubChem_search_compounds_by_substructure(smiles="SCAFFOLD_SMILES")
# Returns: CIDs of compounds containing the scaffold

Phase 3: Bioactivity and Binding Affinity

Get all activities for a compound (across all targets):

ChEMBL_search_activities(
    molecule_chembl_id="CHEMBL941",
    pchembl_value__gte=6,   # pIC50/Ki >= 6 = IC50/Ki <= 1 µM
    limit=50
)
# Returns: assay_type, target_name, pchembl_value, units

Get all ligands for a target:

# First find target ChEMBL ID
ChEMBL_search_targets(query="EGFR", organism="Homo sapiens")
# -> target_chembl_id, e.g., "CHEMBL203"

ChEMBL_get_target_activities(
    target_chembl_id="CHEMBL203"
)
# Returns: all compounds with binding data against this target

BindingDB (when available — often times out):

BindingDB_get_ligands_by_uniprot(uniprot_id="P00533")  # EGFR
# Returns: Ki, IC50, Kd data with literature references
# Note: BindingDB REST API is frequently unavailable; fall back to ChEMBL

pChEMBL Value interpretation:

pChEMBLIC50 / KiAffinity
>= 9<= 1 nMVery potent
>= 7<= 100 nMPotent
>= 6<= 1 µMModerate
>= 5<= 10 µMWeak
< 5> 10 µMInactive

Phase 4: Drug-likeness and ADMET

SwissADME (comprehensive, requires SMILES string — not list):

SwissADME_calculate_adme(
    operation="calculate_adme",
    smiles="CANONICAL_SMILES"
)
# Returns: physicochemical, lipophilicity, water solubility, pharmacokinetics,
#          drug-likeness scores (Lipinski, Veber, Egan, Muegge), PAINS alerts

SwissADME_check_druglikeness(
    operation="check_druglikeness",
    smiles="CANONICAL_SMILES"
)
# Returns: Lipinski/Veber/Egan pass/fail + lead-likeness

ADMET-AI (ML-based, requires SMILES as list — install tooluniverse[ml]):

ADMETAI_predict_physicochemical_properties(smiles=["CANONICAL_SMILES"])
ADMETAI_predict_bioavailability(smiles=["CANONICAL_SMILES"])
ADMETAI_predict_BBB_penetrance(smiles=["CANONICAL_SMILES"])
ADMETAI_predict_toxicity(smiles=["CANONICAL_SMILES"])
ADMETAI_predict_CYP_interactions(smiles=["CANONICAL_SMILES"])

Note: ADMET-AI requires pip install tooluniverse[ml]. If unavailable, use SwissADME as fallback.

Key drug-likeness rules:

  • Lipinski Ro5: MW <= 500, logP <= 5, HBD <= 5, HBA <= 10 (oral drugs)
  • Veber: TPSA <= 140 Ų, rotatable bonds <= 10 (oral bioavailability)
  • Lead-like: MW <= 350, logP <= 3, HBD <= 3, HBA <= 6 (fragment/lead)

Phase 5: Target Prediction

When you have a novel compound and want to predict targets:

SwissTargetPrediction_predict(
    operation="predict",
    smiles="CANONICAL_SMILES"
)
# Returns: predicted protein targets with probability scores
# Note: SwissTargetPrediction uses structure-similarity to known drug-target pairs
# May time out for complex molecules

Phase 6: Commercial Availability

eMolecules (aggregates 200+ suppliers — returns search URL, not direct data):

eMolecules_search(query="compound_name")
# -> Returns search_url to visit on eMolecules.com

eMolecules_search_smiles(smiles="CANONICAL_SMILES")
# -> Returns URL for exact/similar structure search

Enamine (37B+ make-on-demand compounds — returns URL when API unavailable):

Enamine_search_catalog(query="compound_name")
# -> If API available: returns catalog entries with catalog_id, price
# -> If API unavailable: returns search_url for manual search

Enamine_search_smiles(smiles="CANONICAL_SMILES")
# -> Exact or similarity structure search

Enamine_get_libraries()
# -> Lists available Enamine screening collections

Note: eMolecules and Enamine APIs frequently return search URLs rather than live data. Present these to the user as "search here" links.


Tool Parameter Reference

ToolRequired ParamsNotes
PubChem_get_CID_by_compound_namecompound_nameReturns list of CIDs; take first or most relevant
PubChem_get_CID_by_SMILESsmilesUse canonical SMILES
PubChem_get_compound_properties_by_CIDcid, propertiescid as string; properties comma-separated
PubChem_search_compounds_by_similaritysmilesthreshold (int 0-100, default 90)
PubChem_search_compounds_by_substructuresmilesReturns CIDs matching scaffold
ChEMBL_search_moleculesqueryName, ChEMBL ID, or InChIKey
ChEMBL_get_moleculechembl_idFull format: "CHEMBL941" not "941"
ChEMBL_search_similar_moleculesquerySMILES or ChEMBL ID
ChEMBL_search_activitiesmolecule_chembl_id OR target_chembl_idUse pchembl_value__gte=6 to filter potent
ChEMBL_get_drug_mechanismsdrug_chembl_id or drug_nameFor approved drugs only
ChEMBL_search_targetsqueryAdd organism="Homo sapiens" to filter human
ChEMBL_get_target_activitiestarget_chembl_idReturns all ligands for target
SwissADME_calculate_admeoperation="calculate_adme", smilesSMILES as string (not list)
SwissADME_check_druglikenessoperation="check_druglikeness", smilesSMILES as string
ADMETAI_predict_*smilesMust be a list: ["SMILES"] not "SMILES"
SwissTargetPrediction_predictoperation="predict", smilesMay time out
eMolecules_searchqueryReturns search URL (no live data)
eMolecules_search_smilessmilesCanonical SMILES
eMolecules_get_vendorscompound_ideMolecules internal ID
Enamine_search_catalogqueryReturns URL when API unavailable
Enamine_search_smilessmilessearch_type: "exact", "similarity", "substructure"
Enamine_get_compoundenamine_idEnamine-specific catalog ID
BindingDB_get_ligands_by_uniprotuniprot_idFrequently unavailable — use ChEMBL as fallback
BindingDB_get_targets_by_compoundsmilesSMILES-based target lookup

Common Patterns

Pattern 1: Full Compound Profile

Input: Compound name (e.g., "imatinib")
Flow:
  1. PubChem_get_CID_by_compound_name -> CID + SMILES
  2. ChEMBL_search_molecules -> ChEMBL ID
  3. PubChem_get_compound_properties_by_CID -> physicochemical props
  4. SwissADME_calculate_adme / ADMETAI_predict_* -> ADMET profile
  5. ChEMBL_search_activities(molecule_chembl_id) -> binding data
  6. ChEMBL_get_drug_mechanisms -> MOA (if approved drug)
Output: Complete compound profile with identity, ADMET, and activity data

Pattern 2: Analog Discovery

Input: Reference compound SMILES
Flow:
  1. PubChem_search_compounds_by_similarity(smiles, threshold=85) -> similar CIDs
  2. ChEMBL_search_similar_molecules(query=smiles) -> ChEMBL analogs
  3. For each hit: PubChem_get_compound_properties_by_CID -> properties
  4. SwissADME_check_druglikeness -> filter by drug-likeness
Output: Ranked list of analogs with activity data and drug-likeness scores

Pattern 3: Target-Based Compound Search

Input: Target name (e.g., "EGFR")
Flow:
  1. ChEMBL_search_targets(query="EGFR", organism="Homo sapiens") -> target_chembl_id
  2. ChEMBL_get_target_activities(target_chembl_id) -> all ligands with Ki/IC50
  3. Filter by pchembl_value >= 7 (potent compounds)
  4. For top hits: SwissADME_check_druglikeness -> assess drug-likeness
  5. eMolecules_search(query=compound_name) -> check commercial availability
Output: Prioritized list of potent, drug-like, commercially available compounds

Pattern 4: ADMET Risk Assessment

Input: Novel compound SMILES
Flow:
  1. SwissADME_calculate_adme(operation="calculate_adme", smiles) -> full ADMET
  2. ADMETAI_predict_toxicity(smiles=[smiles]) -> hERG, DILI, mutagenicity
  3. ADMETAI_predict_CYP_interactions(smiles=[smiles]) -> drug-drug interaction risk
  4. ADMETAI_predict_BBB_penetrance(smiles=[smiles]) -> CNS penetration
Output: ADMET risk profile with flagged liabilities

Fallback Chains

PrimaryFallbackWhen
BindingDB_get_ligands_by_uniprotChEMBL_get_target_activitiesBindingDB API unavailable
ADMETAI_predict_*SwissADME_calculate_admeml dependencies not installed
Enamine_search_catalogReturns URL onlyAPI returns HTTP 500 (common)
SwissTargetPrediction_predictChEMBL_search_similar_molecules + known targetsPrediction times out
PubChem_get_CID_by_compound_nameChEMBL_search_molecules(query=name)Name not in PubChem

Limitations

  • BindingDB: REST API frequently times out; ChEMBL is the reliable alternative for binding data
  • Enamine API: Returns HTTP 500 often; tool provides search URL as fallback
  • eMolecules: No public API; tool generates search URLs only
  • ADMET-AI: Requires pip install tooluniverse[ml]; not always available in base install
  • SwissTargetPrediction: Web scraping-based; may time out for complex molecules
  • SMILES format: ADMET-AI requires a list ["SMILES"]; SwissADME requires a string "SMILES"
  • ChEMBL IDs: Always use full format "CHEMBL941", never just "941"

平台分布

Codex

36.39%
按下载量换算140

Claude

30.44%
按下载量换算117

Cursor

18.79%
按下载量换算72

Gemini CLI

9.44%
按下载量换算36

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

可疑

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在提醒或未通过项,安装前请自行复核。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills