mcpField
T
tooluniverse-drug-mechanism-research

tooluniverse-drug-mechanism-research

github.com/mims-harvard生产力1.8k245 次安装3 天前更新
代码仓库

关于 tooluniverse-drug-mechanism-research

面向药物机制研究的 ToolUniverse 技能,指导研究者从药物靶点追踪到通路、器官效应和临床结果。它整合药物数据库、通路资源、药品标签、药物基因组学和文献的调查步骤。

主要功能

  1. 01解析药物主要靶点与作用
  2. 02检查脱靶效应和结合数据
  3. 03映射相关生物通路
  4. 04查询药品标签与药物基因组学
  5. 05汇总文献证据

适用场景

  1. 01调查某种药物的作用机制
  2. 02比较两种药物的靶点和通路
  3. 03核查药物的药物基因组学关联

安装

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

$npx skills add https://github.com/mims-harvard/tooluniverse --skill tooluniverse-drug-mechanism-research

安装后在 Claude Code 中输入/tooluniverse-drug-mechanism-research确认已加载。

详细介绍

药物作用机制调查

调查理念

药物机制研究遵循一个核心问题链:

靶点 -> 下游效应 -> 通路 -> 器官效应 -> 临床结局

从药物的主要靶点入手。它结合了什么受体、酶或转运体?然后顺着链条追踪:抑制/激活该靶点会立即产生什么作用?会扰乱什么通路?会导致什么器官层面的变化?患者会有什么感受?

大模型已经了解药物药理学。这项技能教你如何使用现有工具开展调查,而不是介绍有哪些作用机制。

适用场景

  • “[药物] 的作用机制是什么?”
  • “[药物] 的分子靶点有哪些?”
  • “[药物] 会影响哪些通路?”
  • “[药物] 存在哪些药物基因组学相互作用?”
  • “[药物] 有哪些脱靶效应?”
  • “比较 [药物 A] 与 [药物 B] 的作用机制”

不适用于以下场景(请使用其他技能)

  • 药物安全性/不良事件分析 -> tooluniverse-adverse-event-detection
  • 药物重定位/新适应症 -> tooluniverse-drug-repurposing
  • 靶点成药性评估 -> tooluniverse-drug-target-validation
  • 网络药理学/多靶点药理学 -> tooluniverse-network-pharmacology
  • 专门查询 CPIC 剂量指南 -> tooluniverse-pharmacogenomics

第 1 步:解析药物

调查作用机制之前,先将药物名称解析为规范标识符。大多数后续查询都需要 ChEMBL ID。

# Resolve drug name to ChEMBL ID
result = tu.tools.OpenTargets_get_drug_id_description_by_name(drugName="metformin")
# Alternative: OpenTargets_get_drug_chembId_by_generic_name(drugName="metformin")

# Get PharmGKB ID (needed for PGx queries)
result = tu.tools.PharmGKB_search_drugs(query="metformin")

备用方案:如果 OpenTargets 未返回结果,请尝试使用 PharmGKB_search_drugs,或使用已知 ChEMBL ID 调用 ChEMBL_get_drug。


第 2 步:确定主要靶点

首先要问:该药物与什么结合?它会对该靶点产生什么作用?

两个互补的数据源可以回答这些问题:

# OpenTargets: quick summary of MOA with target gene symbols
moa = tu.tools.OpenTargets_get_drug_mechanisms_of_action_by_chemblId(chemblId="CHEMBL1431")
for row in moa["data"]["drug"]["mechanismsOfAction"]["rows"]:
    print(f"{row['mechanismOfAction']} ({row['actionType']}) -> {row['targetName']}")
    for t in row.get("targets", []):
        print(f"  Target gene: {t['approvedSymbol']} ({t['id']})")

# ChEMBL: detailed MOA with literature references and direct_interaction flag
mechs = tu.tools.ChEMBL_get_drug_mechanisms(drug_chembl_id="CHEMBL1431")
for m in mechs["data"]["mechanisms"]:
    print(f"MOA: {m['mechanism_of_action']}, Direct: {m['direct_interaction']}")
    print(f"  Refs: {[r['ref_id'] for r in m.get('mechanism_refs', [])]}")

需提取的关键字段:action_type(INHIBITOR、AGONIST、ANTAGONIST 等)、靶点基因符号、direct_interaction(布尔值)以及文献参考资料。

已知问题:OpenTargets_get_associated_targets_by_drug_chemblId 可能会失败(GraphQL 架构发生变更)。请改为从 MOA 结果中提取靶点。


第 3 步:评估脱靶效应

大多数药物在临床浓度下会结合多个靶点。确定主要靶点后,接着要问:该药物还会与哪些蛋白质相互作用?脱靶结合可以解释许多副作用和药物相互作用。

# ChEMBL bioactivity data shows binding affinity across targets
activities = tu.tools.ChEMBL_get_target_activities(target_chembl_id__exact="CHEMBL2364")

# STRING interaction partners reveal the target's protein network
partners = tu.tools.STRING_get_interaction_partners(identifiers="PRKAA1", species=9606)

推理策略:如果 ChEMBL MOA 列出多个靶点,请比较它们的作用类型。相关靶点具有相同的作用类型,表明可能存在通路内多靶点药理作用。作用类型不同,则可能是真正的脱靶效应。生物活性数据中的结合亲和力(IC50/Ki)能说明哪些靶点在临床剂量下有影响——纳摩尔级亲和力通常对应主要靶点,微摩尔级亲和力则可能对应脱靶。


第 4 步:关联通路背景

药物靶点并非孤立发挥作用。将其关联到相应通路,以了解作用范围。

关键问题:该靶点位于上游(影响许多下游基因,作用范围更广、副作用更多),还是位于下游(作用较窄、更具特异性)?

# KEGG: find gene ID, then get pathways
genes = tu.tools.kegg_find_genes(keyword="PRKAA1", organism="hsa")
pathways = tu.tools.KEGG_get_gene_pathways(gene_id="hsa:5562")

# Reactome: map protein to pathways (needs UniProt ID)
reactome = tu.tools.Reactome_map_uniprot_to_pathways(uniprot_id="Q13131")

# WikiPathways: search by gene symbol
wp = tu.tools.WikiPathways_find_pathways_by_gene(gene="PRKAA1")

# STRING: functional annotations (GO terms, pathway memberships)
annot = tu.tools.STRING_get_functional_annotations(identifiers="PRKAA1", species=9606)

对于多靶点药物,运行通路富集分析,找出汇聚的通路:

# Reactome enrichment (space-separated gene list, NOT array)
enrichment = tu.tools.ReactomeAnalysis_pathway_enrichment(identifiers="PRKAA1 PRKAA2 PRKAB1")

# STRING enrichment
enrichment = tu.tools.STRING_functional_enrichment(protein_ids=["PRKAA1", "PRKAA2"], species=9606)

推理策略:如果多个药物靶点汇聚到同一通路,那么该通路就是真正的药物作用机制。如果靶点分属不同通路,则说明该药物确实会影响多条通路——请分别报告。


第 5 步:获取监管视角(DailyMed)

药品说明书描述药物的作用。这是 FDA 批准的作用机制说明。

DailyMed 需要分两步操作:先搜索药物以获取 setid,然后解析特定的说明书章节。

# Step 1: Get setid
spls = tu.tools.DailyMed_search_spls(drug_name="metformin")
setid = spls["data"][0]["setid"]

# Step 2: Parse the clinical pharmacology section (MOA, PK/PD, metabolism)
pharmacology = tu.tools.DailyMed_parse_clinical_pharmacology(
    operation="parse_clinical_pharmacology", setid=setid)

# Drug interactions from the label
interactions = tu.tools.DailyMed_parse_drug_interactions(
    operation="parse_drug_interactions", setid=setid)

# Contraindications
contra = tu.tools.DailyMed_parse_contraindications(
    operation="parse_contraindications", setid=setid)

其他 DailyMed 解析工具:DailyMed_parse_adverse_reactions、DailyMed_parse_dosing。

推理策略:说明书中的临床药理学章节对作用机制的描述,往往与数据库条目不同。说明书强调临床相关效应;数据库则侧重分子层面的细节。两种视角都不可或缺。


第 6 步:检查药物基因组学

药物基因组学变异会影响患者对药物的反应。这与作用机制相关,因为 PGx 基因通常是药物的代谢酶或靶点。

# CPIC gene-drug pairs (gold standard for PGx)
pairs = tu.tools.CPIC_search_gene_drug_pairs(gene_symbol="CYP2C19", cpiclevel="A", limit=20)
# Or search by drug
drug_info = tu.tools.CPIC_get_drug_info(name="clopidogrel")

# FDA PGx biomarkers (what's on the label)
fda_pgx = tu.tools.fda_pharmacogenomic_biomarkers(drug_name="clopidogrel", limit=100)
# Or find all drugs affected by a gene
fda_pgx = tu.tools.fda_pharmacogenomic_biomarkers(biomarker="CYP2D6", limit=100)

# PharmGKB gene details
gene_info = tu.tools.PharmGKB_search_genes(query="CYP2C19")

推理策略:CPIC A/B 级配对具有有力证据和可执行的指南。如果某种药物存在 CPIC A 级相互作用,这些基因对其作用机制至关重要(通常是代谢酶或直接靶点)。FDA PGx 生物标志物可告诉你获批说明书中列出了哪些信息。


第 7 步:收集文献证据

文献说明作用机制为何有效。结合说明书(说明作用)才能全面了解。

# PubMed: returns a plain list of article dicts
articles = tu.tools.PubMed_search_articles(
    query="metformin mechanism of action AMPK mitochondrial", limit=10)

# EuropePMC: returns {status, data, metadata}
articles = tu.tools.EuropePMC_search_articles(
    query="metformin mechanism action mitochondrial", limit=10)

# Follow citation chains for seminal papers
citations = tu.tools.EuropePMC_get_citations(source="MED", article_id="12345678")

搜索策略:从「[药物] mechanism of action [主要靶点]」开始搜索。如果作用机制存在争议,将相互竞争的假设分别作为搜索词。近期综述(在搜索词中添加「review」)能反映当前共识。


第 8 步:整合并报告

证据层级
  • 第 1 级(监管):FDA 说明书(DailyMed)、CPIC A 级、FDA PGx 生物标志物
  • 第 2 级(实验):包含文献参考的 ChEMBL 机制、结合数据
  • 第 3 级(数据库):OpenTargets 作用机制、通路数据库(KEGG/Reactome/WikiPathways)
  • 第 4 级(文献):PubMed/EuropePMC 文章
报告结构
## Drug Mechanism Report: [Drug Name]

### Drug Identity
- ChEMBL ID, PharmGKB ID, approval status

### Primary Mechanism
- Target: [gene symbol], Action: [INHIBITOR/AGONIST/etc.]
- Mechanism narrative (from DailyMed + databases)
- Direct interaction: yes/no

### Off-Target Effects
- Additional targets with action types and binding affinities
- Which off-targets explain known side effects

### Pathway Context
- Key pathways (from KEGG/Reactome/WikiPathways)
- Upstream vs downstream position of target
- Convergent pathways for multi-target drugs

### Pharmacogenomics
- CPIC gene-drug pairs with levels
- FDA PGx biomarkers

### Drug Interactions
- Mechanism-based interactions (enzyme inhibition/induction)
- Key interactions from DailyMed

### Evidence Summary
| Finding | Source | Tier |
|---------|--------|------|
| Primary MOA | ChEMBL + DailyMed | T1/T2 |
| Off-targets | ChEMBL bioactivity | T2 |
| Pathways | KEGG/Reactome | T3 |
| PGx | CPIC/FDA | T1 |

比较两种药物

比较作用机制时,对两种药物都执行第 2 至第 4 步,然后进行对照:

  1. 靶点相同,作用不同?(例如,在同一受体上分别充当激动剂和拮抗剂)
  2. 靶点不同,通路相同?(例如,两者都会影响胰岛素信号传导,但作用于不同节点)
  3. 通路完全不同?(例如,二甲双胍作用于 AMPK,而吡格列酮作用于 PPAR-gamma)
for drug in [("metformin", "CHEMBL1431"), ("pioglitazone", "CHEMBL595")]:
    moa = tu.tools.OpenTargets_get_drug_mechanisms_of_action_by_chemblId(chemblId=drug[1])
    clin = tu.tools.DailyMed_parse_clinical_pharmacology(drug_name=drug[0])

备用策略

步骤主要工具备用方案
药物 IDOpenTargets_get_drug_id_description_by_namePharmGKB_search_drugs
作用机制OpenTargets_get_drug_mechanisms_of_action_by_chemblIdChEMBL_get_drug_mechanisms
通路KEGG_get_gene_pathwaysWikiPathways_find_pathways_by_gene、Reactome_map_uniprot_to_pathways
PGxCPIC_search_gene_drug_pairsfda_pharmacogenomic_biomarkers
临床信息DailyMed_parse_clinical_pharmacologyOpenTargets_get_drug_description_by_chemblId
药物相互作用DailyMed_parse_drug_interactionsPubMed_search_articles(DDI 查询)
文献PubMed_search_articlesEuropePMC_search_articles

MetaCyc 说明:MetaCyc 需要付费账户,目前不可用。请改用 KEGG、Reactome 或 WikiPathways。

评论

支持 Markdown