mcpField
T
tooluniverse-chemical-sourcing

tooluniverse-chemical-sourcing

github.com/mims-harvard其他1.8k238 次安装2 天前更新
代码仓库

关于 tooluniverse-chemical-sourcing

面向化学研究采购的 ToolUniverse 技能,指导用户确认化合物身份,并跨供应商查询价格、库存和纯度。若目标化合物无法采购,也可按结构寻找类似物。

主要功能

  1. 01解析化合物身份与结构
  2. 02搜索多个供应商目录
  3. 03比较价格、库存和纯度
  4. 04查找可采购的结构类似物
  5. 05补充生物活性信息

适用场景

  1. 01确认化合物是否可购买
  2. 02比较多个供应商的价格与库存
  3. 03为无货化合物寻找类似物
  4. 04为筛选化合物补充活性背景

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/mims-harvard/tooluniverse --skill tooluniverse-chemical-sourcing

安装后在 Claude Code 中输入/tooluniverse-chemical-sourcing确认已加载。

详细介绍

化合物寻源与采购

用于从商业供应商处识别、寻源和购买化合物的工作流。通过 PubChem/ChEMBL 确认化合物身份,搜索多个供应商数据库(ZINC、Enamine、eMolecules、Mcule),比较价格和供货情况,并在无法获取目标化合物时寻找可购买的类似物。

指导原则:

  1. 先确认身份——在搜索供应商之前确认化合物的结构(SMILES、InChI);名称可能存在歧义
  2. 比较多个供应商——务必检查多个来源;价格和库存差异可能很大
  3. 类似物备选——如果无法获取目标化合物,搜索相近的类似物
  4. 关注纯度和数量——记录目录中的纯度等级和最小订购量
  5. 结构优先于名称——供应商通过 SMILES/InChI 搜索比通过名称搜索更可靠
  6. 优先使用英文查询——在工具调用中使用英文化合物名称

查询数据库,不要猜测

对任何科学事实不确定时,先搜索数据库,而不是凭记忆推断。数据库验证的答案总是比猜测更可靠。


计算,而非描述

如果分析需要计算(统计、数据处理、评分、富集分析),请通过 Bash 编写并运行 Python 代码。不要描述将如何操作——实际执行并报告结果。使用 ToolUniverse 工具检索数据,然后用 Python(pandas、scipy、statsmodels、matplotlib)进行分析。

适用场景

典型需求:

  • “我可以在哪里购买[化合物]?”
  • “为[SMILES]查找商业来源”
  • “比较[化合物]在不同供应商处的价格”
  • “[化合物]是否有商业供应?”
  • “查找[化合物]可购买的类似物”
  • “我需要[数量]的[化合物]——哪些供应商有售?”
  • “在 ZINC/Enamine 中搜索[化合物]”

不适用于此技能:进行 ADMET/毒性评估,请使用 tooluniverse-admet-prediction。进行药物-靶点相互作用分析,请使用 tooluniverse-drug-target-validation。


核心数据库

数据库范围最适合
ZINC2.3 亿多种可购买化合物;汇总供应商数据覆盖最广;子结构/相似性搜索;免费
Enamine约 400 万种有库存化合物、300 亿多种 REAL(按需合成)大型现货库;交付快;构建砌块
eMolecules多供应商聚合平台;800 多万种化合物跨供应商比较;价格透明
Mcule4,000 多万种化合物;一站式采购集成订购;生成报价
PubChem1.1 亿多种化合物;身份解析权威的化合物识别;CID 查询
ChEMBL240 多万种生物活性分子为寻源化合物提供生物活性背景

工作流概览

Phase 0: Compound Identity Resolution
  Name/SMILES/CAS -> PubChem CID -> canonical SMILES
    |
Phase 1: Vendor Search
  Query ZINC, Enamine, eMolecules, Mcule
    |
Phase 2: Price & Availability Comparison
  Catalog numbers, pricing, stock status, purity
    |
Phase 3: Analog Search (if needed)
  Similarity search for purchasable alternatives
    |
Phase 4: Bioactivity Context (optional)
  ChEMBL activity data for sourced compounds
    |
Phase 5: Order Summary
  Consolidated vendor comparison table

阶段详情

阶段 0:化合物身份解析

目标:在搜索供应商之前,明确且无歧义地确认化合物身份。

工具:

  • PubChem_get_CID_by_compound_name——将名称解析为 CID
    • 输入:name(化合物名称)
    • 输出:{IdentifierList: {CID: [...]}}
  • PubChem_get_compound_properties_by_CID——获取 SMILES、分子量和分子式
    • 输入:cid(PubChem CID)、properties(以逗号分隔的列表)
    • 输出:{CID, MolecularWeight, ConnectivitySMILES, IUPACName}
  • ChEMBL_get_molecule——获取 ChEMBL 化合物详情
    • 输入:molecule_chembl_id(ChEMBL ID)或按名称搜索
    • 输出:SMILES、分子属性、同义词

工作流:

  1. 如果用户提供名称:解析为 PubChem CID,然后获取 SMILES
  2. 如果用户提供 SMILES:直接使用(可选择通过 PubChem 验证)
  3. 如果用户提供 CAS 号:按名称在 PubChem 中搜索(CAS 号可用作搜索词)
  4. 记录:规范 SMILES、分子量、分子式、IUPAC 名称

重要提示:PubChem 的正确属性名称是 ConnectivitySMILES(不是 CanonicalSMILES)。继续操作前务必确认 SMILES 与目标化合物相符。

阶段 1:供应商搜索

目标:在所有可用的供应商数据库中搜索目标化合物。

工具:

  • ZINC_search_compounds -- 按名称或 SMILES 搜索 ZINC
    • 输入:query(名称或 SMILES)、可选的 catalog、limit
    • 输出:ZINC ID、供应商信息、是否可购买
  • ZINC_get_compound -- 获取 ZINC 中化合物的详细信息
    • 输入:zinc_id(ZINC 标识符)
    • 输出:供应商、目录、价格、SMILES
  • Enamine_search_catalog -- 搜索 Enamine 目录
    • 输入:query(名称或 SMILES)、可选的 catalog_type、limit
    • 输出:目录编号、库存情况、价格
  • Enamine_get_compound -- 获取 Enamine 化合物的详细信息
    • 输入:compound_id(Enamine 目录编号)
    • 输出:结构、价格、库存状态、交付时间
  • eMolecules_search -- 跨多个供应商搜索
    • 输入:query(名称或 SMILES)、可选的 limit
    • 输出:供应商列表、目录编号、价格
  • eMolecules_get_compound -- 获取 eMolecules 化合物的详细信息
    • 输入:compound_id(eMolecules ID)
    • 输出:供应商、阶梯价格、纯度
  • Mcule_get_compound -- 搜索 Mcule 数据库
    • 输入:query(名称或 SMILES)、可选的 limit
    • 输出:Mcule ID、库存情况、价格
  • Mcule_get_compound -- 获取 Mcule 化合物的详细信息
    • 输入:compound_id(Mcule ID)
    • 输出:价格、交付、纯度、目录编号

工作流:

  1. 使用 SMILES(优先)或名称并行搜索所有四个供应商数据库
  2. 对每个匹配结果,获取化合物详细信息(价格、库存、纯度)
  3. 根据各供应商提供的 SMILES 匹配结果并去重
  4. 标记任何结构不匹配的情况(供应商提供的化合物与目标化合物不同)

提示:基于 SMILES 的搜索比按名称搜索更精准。如果按名称搜索返回的结果过多,请改用 SMILES。

阶段 2:价格与库存比较

目标:创建跨供应商的比较表。

根据阶段 1 的结果汇总:

字段说明
供应商公司名称
目录编号供应商特定的标识符
数量可购买的包装规格
价格按单位或每 mg 计价
纯度标注的纯度等级(>95%、>98% 等)
库存现货或按需生产
交付预计交付时间

按以下顺序对供应商进行排序:(1)现货情况;(2)每 mg 价格;(3)纯度等级;(4)交付时间。

阶段 3:类似物搜索

目标:当目标化合物无法购买时,寻找可购买的结构类似物。

在以下情况下触发:

  • 没有供应商提供目标化合物
  • 化合物价格过高
  • 用户明确要求寻找类似物

方法:

  1. 使用 ZINC 或 Enamine 相似性搜索(如果工具的搜索模式支持)
  2. 使用化合物核心骨架的 SMILES 进行子结构搜索
  3. 按以下条件筛选类似物:Tanimoto 相似度 >= 0.7、可商业购买、价格合理
  4. 展示类似物并突出其结构差异
阶段 4:生物活性背景(可选)

目标:在为研究采购化合物时,提供生物活性数据作为参考。

工具:

  • ChEMBL_get_molecule -- 获取生物活性摘要
    • 输入:化合物标识符
    • 输出:已知靶点、活性数值、测定数据

适用于以下情况:

  • 用户为特定生物测定采购化合物
  • 比较活性特征可能不同的类似物
  • 验证该化合物是否有已发表的生物活性数据
阶段 5:决策与订购摘要

供应商选择决策矩阵——不要只列出供应商,还要推荐一家:

场景最佳供应商策略原因
本周就需要选择现货且发货最快的供应商按需合成至少需要 2-4 周
预算有限选择每毫克价格最低的供应商,并接受较低纯度(>95%)学术预算紧张;>95% 的纯度足以用于筛选
高通量筛选大型化合物库选择 ZINC/Enamine;采购毫克级数量单个化合物的价格比纯度更重要
测定验证从信誉良好的供应商处选择纯度最高(>98%)的产品杂质导致的假阳性会浪费数月时间
合成用构件Enamine(构件目录最大)专为药物化学设计
无法获得确切化合物搜索类似物 → 检查生物活性(ChEMBL)→ 选择最佳类似物来源Tanimoto > 0.85 通常能保留活性;0.7-0.85 可能具有不同的 SAR

采购时的危险信号:

  • 供应商未公布纯度数据 → 下单前索取 CoA
  • 价格比其他供应商低 10 倍 → 可能是不同的盐形式或纯度不高
  • 标注“有现货”,但预计交付时间为 4 周以上 → 可能实际上没有现货
  • 供应商目录中的 SMILES 与目标 SMILES 不同 → 化合物错误

生成最终采购报告:

  1. 化合物身份 -- 名称、SMILES、MW、CAS(如已知)、PubChem CID
  2. 供应商比较表 -- 所有供应商的价格、库存、纯度和交付时间
  3. 推荐来源 -- 说明推荐理由的具体供应商(不只是最便宜的供应商)
  4. 类似物(如已搜索)-- 备选化合物、相似度评分和生物活性比较
  5. 备注 -- 特殊处理方式、储存条件、盐形式和立体化学注意事项

常见分析模式

模式描述关键阶段
快速查询可购性该化合物是否可以买到?0, 1
全面比较供应商比较所有来源及价格0, 1, 2, 5
发现类似物化合物无法获得;寻找替代品0, 1, 3, 5
采购构件寻找合成所需的试剂0, 1, 2
命中化合物转先导化合物采购结合生物活性背景采购筛选命中化合物0, 1, 2, 4, 5

边缘情况与回退方案

  • 名称歧义:多个化合物可能共用一个名称(例如,“aspirin”和“acetylsalicylic acid”)。始终先解析为 SMILES
  • 立体化学:供应商可能销售外消旋混合物,也可能销售特定对映异构体。仔细检查 SMILES 中的立体化学信息
  • 盐形式:同一种药物可能以不同盐形式(HCl、马来酸盐等)销售。注明具体形式
  • 未找到供应商:可能可以通过定制合成获得该化合物。请在报告中注明
  • 按需合成:Enamine REAL 化合物需要合成(2-4 周)。请与现货区分开来

判读框架

证据等级标准操作
A -- 高置信度至少 2 家供应商有现货,纯度 >=98%,提供 CoA直接订购
B -- 中等置信度仅有一家供应商或按需合成,纯度 >=95%索取 CoA,核实结构
C -- 低置信度无现货、未注明纯度,或价格异常(>5x 中位数)定制合成或搜索类似物

解读供应商结果:

  • 同一化合物在不同供应商处的价格相差 10x,通常意味着盐型、纯度等级或包装规格不同,而非实际成本差异——务必按相同纯度比较每毫克价格。
  • 纯度 >=95% 足以用于初筛;剂量-反应和 SAR 研究建议使用 >=98% 纯度;参考标准品和药代动力学研究需要 >=99% 纯度。
  • 聚合数据库中的“有现货”状态可能已过时数周——在确定时间安排前,务必向供应商确认实时库存情况。

最终报告中需要回答的合成相关问题:

  1. 所有供应商提供的 SMILES 是否都解析为相同的规范结构(包括立体化学和盐型)?
  2. 每毫克价格是否与该化合物的合成复杂度相符,还是异常值表明目录信息有误?
  3. 对类似物而言,结构变化是否位于药效团之外,从而保留预期活性?

局限性

  • 价格准确性:数据库价格可能已过时;供应商的实际报价才是权威依据
  • 区域供应情况:部分供应商仅向特定地区发货;请查看运输政策
  • 数量限制:学术价格与商业价格可能不同;部分供应商要求使用机构账户
  • 受管制物质:部分化合物受到法规限制;此技能不会核查其法律状态
  • 无法直接订购:此技能只查找货源,不会下单;用户需要拥有供应商账户

评论

支持 Markdown