tooluniverse-binder-discovery について
tooluniverse-binder-discoveryは、小分子結合剤を探索するToolUniverseスキルで、標的研究やリード探索を支援します。標的の創薬可能性、既知リガンド、構造解析、化合物展開、ADMET評価を段階的に行い、候補を順位付けします。
主な機能
- 01標的の創薬可能性と結合部位の評価
- 02既知リガンドの探索とSAR解析
- 03構造・類似性に基づく化合物展開
- 04候補分子の生成と選別
- 05ドッキング、ADMET、根拠による順位付け
活用シーン
- 01タンパク質標的の小分子候補探索
- 02標的ポケットの小分子適性の評価
- 03既知活性化合物から類縁体を展開
- 04ADMETとドッキング根拠による候補の優先順位付け
MCP 対応
このスキルはToolUniverseのツールを使って、標的、リガンド、構造、化合物、ADMET情報の取得と分析を行います。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ mims-harvard/ tooluniverse --skill tooluniverse-binder-discoveryインストール後、Claude Code で/tooluniverse-binder-discoveryを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
CHECKLIST.mdEXAMPLES.mdREPORT_TEMPLATE.mdTOOLS_REFERENCE.mdWORKFLOW_DETAILS.md詳細
低分子バインダー探索戦略
創薬可能性の評価、既知リガンドの探索、類似化合物の拡張、ADMET フィルタリング、合成可能性の評価にわたる 60 種類以上の ToolUniverse ツールを使用して、新規低分子バインダーを体系的に探索します。
推測せず、必ず調べてください — 結論を導く前に、必ずツールから実際のデータを取得してください。標的のクラスだけに基づいて、創薬可能性、結合部位、化合物の特性を推測しないでください。
主要な原則:
- レポート優先のアプローチ — まずレポートファイルを作成し、その後、段階的に内容を追加します
- 標的の検証を最優先 — 化合物を検索する前に、創薬可能性を確認します
- 複数の戦略を組み合わせる — 構造ベースとリガンドベースの手法を組み合わせます
- ADMET を考慮したフィルタリング — 問題のある化合物を早い段階で除外します
- エビデンスの評価 — 根拠の強さに基づいて候補を評価します
- 実行可能な結果を提示 — 優先順位を付けた候補と、その根拠を提示します
- 英語を優先したクエリ — ツール呼び出しでは必ず英語の用語を使用します。ユーザーの言語で応答します
結合部位の検討(ここから開始)
ツールを呼び出す前に、標的の構造生物学について検討します。
結合部位は明確に定義されたポケット(低分子が結合可能)ですか、それとも平坦なタンパク質間相互作用界面(ペプチド/マクロサイクルが必要)ですか? これはスクリーニング戦略を決定します。
- 活性部位を持つ酵素(プロテアーゼ、キナーゼ、ATPase):深く明確に定義されたポケットがあります。低分子創薬の典型的な標的です。共結晶構造の検索と既知の阻害剤の骨格分析を優先します。
- GPCR とイオンチャネル:膜貫通領域にポケットがあります。構造が得られることも多いため、既知の薬理情報について GPCRdb と GtoPdb から調べます。
- 核内受容体:深い疎水性ポケットがあります。低分子での創薬可能性が非常に高く、リガンドベースの手法も有効です。
- タンパク質間相互作用界面:平坦で、接触面積が広い領域です。「ホットスポット」ポケットがない限り、低分子が効果的に競合できることはまれです。低分子の戦略を進める前に、アロステリックポケットが存在するかどうかを確認します。ポケットが見つからない場合はユーザーに警告します。標的が既知の分子グルーデグレーダーのネオサブストレートである場合(または、既存のポケットをふさぐのではなく、新たな PPI の誘導が目的の場合)は、低分子では創薬不可能と判断する前に、既知のグルー化学型について
MolGlueDB_search_compounds/MolGlueDB_get_compoundを確認します。 - 天然変性領域:直接的な低分子アプローチは実質的にありません。ペプチド戦略に切り替えるか、既知の分子グルーのネオサブストレートかどうかを
MolGlueDB_search_compoundsで確認します。 - 足場タンパク質/アダプタータンパク質:創薬不可能と判断する前に、共結晶構造で予想外のポケットがないか評価します。
この検討に基づいて実施するフェーズを選択し、ワークフロー全体を実行する前に、課題についてユーザーに警告します。
ワークフローの必須要件
1. レポート優先のアプローチ(必須)
ユーザーに検索プロセスやツールの出力を表示しないでください。代わりに、次の手順に従います。
-
まずレポートファイルを作成 — データを収集する前に:
- ファイル名:
[TARGET]_binder_discovery_report.md - テンプレート(REPORT_TEMPLATE.md を参照)のすべてのセクション見出しを追加して初期化します
- 各セクションにプレースホルダーテキスト
[Researching...]を追加します
- ファイル名:
-
レポートを段階的に更新 — データを収集したら、各セクションをすぐに更新します。
-
データファイルを別途出力:
[TARGET]_candidate_compounds.csv— SMILES とスコアを含む、優先順位を付けた化合物[TARGET]_bibliography.json— 文献の参考情報(任意)
2. 引用の要件(必須)
すべての情報に必ず出典を付けてください。
例:*Source: ChEMBL via ChEMBL_get_target_activities (CHEMBL203)*
ワークフローの概要
フェーズの順序:
- フェーズ 0:ツールの検証(
get_tool_infoでパラメーター名を確認) - フェーズ 1:標的の検証 — ID の解決、創薬可能性の評価、結合部位の特定、必要に応じた構造予測
- フェーズ 2:既知リガンドの探索 — ChEMBL、BindingDB、GtoPdb、PubChem BioAssay、化学プローブ;SAR 分析
- フェーズ 3:構造解析 — PDB 共結晶、EMDB(膜標的)、結合ポケットの特性評価
- フェーズ 3.5:ドッキング検証 — 参照阻害剤をドッキングしてポケット形状を検証
- フェーズ 4:化合物の拡張 — 類似性/部分構造検索(シード:多様な活性化合物 3~5 個)+ de novo 生成
- フェーズ 5:ADMET フィルタリング — 物理化学的特性、バイオアベイラビリティ、毒性、CYP、構造アラート
- フェーズ 6:候補化合物のドッキングと優先順位付け — 上位 20 件をスコアリングして順位付け
- フェーズ 6.5:文献エビデンス — PubMed、EuropePMC、OpenAlex
- フェーズ 7:レポートの作成と提供
フェーズ 0:ツールの検証
重要:使い慣れていないツールを呼び出す前に、ツールのパラメーターを確認してください。
tool_info = tu.tools.get_tool_info(tool_names="ChEMBL_get_target_activities")
よくあるパラメーターの修正(不確かな場合は get_tool_info で確認してください):
OpenTargets_*:ensemblId(キャメルケース);ADMETAI_*:smilesはリストで指定する必要がありますNvidiaNIM_alphafold2(NVIDIA_API_KEY env var が必要です;無料キーは build.nvidia.com で取得できます):seqではなくsequence;NvidiaNIM_genmol(NVIDIA_API_KEY env var が必要です;無料キーは build.nvidia.com で取得できます):SMILES に[*{min-max}]を含める必要がありますNvidiaNIM_boltz2(NVIDIA_API_KEY env var が必要です;無料キーは build.nvidia.com で取得できます):polymers=[{"molecule_type": "protein", "sequence": "..."}]
フェーズ 1:標的の検証
1.1 識別子の解決
すべての ID を最初に解決し、後続のクエリ用に保存します:
1. UniProt_search(query=target_name, organism="human") -> UniProt accession
2. MyGene_query_genes(query=gene_symbol, species="human") -> Ensembl gene ID
3. ChEMBL_search_targets(pref_name__contains=target_name, organism="Homo sapiens") -> ChEMBL target ID
4. GtoPdb_search_targets(query=target_name) -> GtoPdb ID (if GPCR/channel/enzyme)
1.2 創薬可能性の評価
複数の情報源を用いて総合的に評価します:
OpenTargets_get_target_tractability_by_ensemblID(ensemblId)- tractability の区分DGIdb_get_gene_druggability(genes=[gene_symbol])- 創薬可能性のカテゴリOpenTargets_get_target_classes_by_ensemblID(ensemblId)- 標的クラス- GPCR の場合:
GPCRdb_get_protein+GPCRdb_get_ligands+GPCRdb_get_structures - 抗体の状況を調べる場合:
TheraSAbDab_search_by_target(target=target_name)
判断ポイント:tractability のデータがなく、結合部位の推定から PPI または天然変性領域が示唆される場合は、作業を進める前にユーザーへ明示的に警告してください。
1.3 結合部位の分析
ChEMBL_search_binding_sites(site_name__contains=...)(部位名のみでフィルタリング;標的によるフィルタリングはできません)- 共結晶化されたリガンドについては
get_binding_affinity_by_pdb_id(pdb_id) - ドメイン構成については
InterPro_get_protein_domains(protein_id=uniprot_accession)
1.4 構造予測(NVIDIA NIM)
NVIDIA_API_KEY が必要です。次の 2 つの方法があります:
- AlphaFold2:
NvidiaNIM_alphafold2(sequence, algorithm="mmseqs2")- 高精度、5~15 分 - ESMFold:
ESMFold_predict_structure(sequence)- 高速(約 30 秒)、最大 1024 AA
pLDDT の目安:90 以上は非常に高い信頼度、70~90 は信頼度が高く、70 未満は注意して使用してください。推定結合領域の pLDDT が低い場合、ドッキングの信頼性が損なわれます。
フェーズ 2:既知リガンドの探索
生物活性データの優先順位:
ChEMBL_get_target_activities- キュレーション済みで、SAR解析に適していますBindingDB_get_ligands_by_uniprot- 論文へのリンク付きの直接的な Ki/KdGtoPdb_search_ligands- 薬理学に特化(GPCR、チャネル)。GTOPDB_API_KEYが必要です(設定されていない場合は HTTP 401 が返されるため、未設定の場合はスキップしてください)PubChem_search_assays_by_target_gene- HTS スクリーニング、新規骨格OpenTargets_get_chemical_probes_by_target_ensemblID- 検証済みプローブMolGlueDB_search_compounds- 分子グルー分解誘導剤に特化(従来型のポケットを占有するのではなく、新規のタンパク質間相互作用を誘導する低分子)。標的に創薬可能なポケットがないものの、既知または候補のネオサブストレートである場合に確認してください
主な手順:
- IC50/Ki/Kd < 10 uM に絞り込み、上位の活性化合物の分子詳細を取得します
- ケミカルプローブと承認薬を特定します
- SAR を分析します:共通の骨格、重要な修飾
- オフターゲット選択性を確認します:
BindingDB_get_targets_by_compound
フェーズ 3:構造解析
ツール:
PDB_search_similar_structures(query=uniprot, type="sequence")- PDB エントリーを検索しますget_protein_metadata_by_pdb_id(pdb_id)- 分解能、手法get_binding_affinity_by_pdb_id(pdb_id)- 共結晶リガンドの親和性get_ligand_smiles_by_chem_comp_id(chem_comp_id)- PDB からリガンド SMILES を取得しますEMDB_search_structures(query)- クライオ電子顕微鏡構造(GPCR やイオンチャネルでは優先してください)alphafold_get_prediction(qualifier)- AlphaFold DB によるフォールバック
フェーズ 3.5:ドッキング検証(NVIDIA NIM)
PDB と SDF が利用できる場合:NvidiaNIM_diffdock を使用します(パラメーターは TOOLS_REFERENCE.md を参照。NVIDIA_API_KEY が必要です)。get_diffdock_info(info_type="overview") が返すのは DiffDock に関するドキュメントのみで、ドッキングは実行しません。
配列と SMILES のみ利用できる場合:NvidiaNIM_boltz2(polymers=[...], ligands=[...]) を使用します。
候補化合物を実行する前に、既知の参照阻害剤をドッキングして結合ポケットの形状を検証してください。
フェーズ 4:化合物の拡張
4.1-4.3 検索ベースの拡張
多様な活性化合物を 3~5 個シードとして使用し、類似性のしきい値を 70~85% に設定します:
ChEMBL_search_similar_molecules(query=SMILES, similarity_threshold=70)PubChem_search_compounds_by_similarity(smiles, threshold=0.7)ChEMBL_search_substructure(smiles=core_scaffold)STITCH_get_chemical_protein_interactions(identifiers=[gene], species=9606)
4.4 De Novo 生成(NVIDIA NIM)
GenMol - マスク領域を用いたスキャフォールドホッピング:
NvidiaNIM_genmol(smiles="...core...[*{3-8}]...tail...[*{1-3}]...", num_molecules=100, temperature=2.0, scoring="QED")
MolMIM - 制御された類縁体の生成:
NvidiaNIM_molmim(smi=reference_smiles, num_molecules=50, algorithm="CMA-ES")
フェーズ 5:ADMET フィルタリング
以下を順番に適用します(すべてのツールで smiles=[list] を受け付けます):
- 物理化学的性質:
ADMETAI_predict_physicochemical_properties- リピンスキー則の違反 <= 1、QED > 0.3、MW 200-600 - バイオアベイラビリティ:
ADMETAI_predict_bioavailability- 経口バイオアベイラビリティ > 0.3 - 毒性:
ADMETAI_predict_toxicity- AMES < 0.5、hERG < 0.5、DILI < 0.5 - CYP:
ADMETAI_predict_CYP_interactions- CYP3A4 阻害剤にフラグを設定します - アラート:
ChEMBL_search_compound_structural_alerts- PAINS を含まないこと
各段階の合格数/不合格数を示すフィルタリングファネルの概要をレポートに含めてください。
フェーズ 6:候補化合物のドッキングと優先順位付け
複合スコア:ドッキング信頼度(40%)+ ADMET スコア(30%)+ 既知活性化合物との類似性(20%)+ 新規性(10%、ChEMBL に未登録 + 新規骨格ボーナス)。
候補化合物のエビデンスレベル:
- T1(星 3 つ):実験的 IC50/Ki < 100 nM
- T2(星 2 つ):参照化合物から 5% 以内のドッキングスコア、または IC50 100-1000 nM
- T3(星 1 つ):T1 化合物との類似性が >80%
- T4(星なし):類似性が 70-80%、骨格の一致のみ
- T5(星なし):生成分子、ADMET 合格、ドッキングなし
上位 20 件の候補化合物について、順位、ID、SMILES、ドッキングスコア、ADMET スコア、総合スコア、出典、エビデンスレベルを提示してください。
フェーズ 6.5:文献エビデンス
PubMed_search_articles(query="[TARGET] inhibitor SAR")- 査読済みEuropePMC_search_articles(query="SRC:PPR AND ...")- プレプリント(査読なし)openalex_search_works(query)- 引用分析
フォールバックチェーン
Target ID: ChEMBL_search_targets -> GtoPdb_search_targets -> "Not in databases"
Druggability: OpenTargets tractability -> DGIdb druggability -> target class proxy
Bioactivity: ChEMBL -> BindingDB -> GtoPdb -> PubChem BioAssay -> "No data"
Structure: PDB -> EMDB (membrane) -> alphafold_get_prediction -> NvidiaNIM_esmfold -> AlphaFold DB -> "None"
Similarity: ChEMBL similar -> PubChem similar -> "Search failed"
Docking: get_diffdock_info -> NvidiaNIM_boltz2 -> similarity-based scoring
Generation: NvidiaNIM_genmol -> NvidiaNIM_molmim -> similarity search only
Literature: PubMed -> EuropePMC (preprints) -> OpenAlex
GPCR data: GPCRdb_get_protein -> GtoPdb_search_targets
プログラムによるアクセス(ツール以外)
ToolUniverse のツールから返される化合物セットが限られている場合は、化学データベースに直接アクセスします。
import requests, pandas as pd
# PubChem batch property retrieval (up to 100 CIDs per call)
cids = "2244,5988,3672"
url = f"https://pubchem.ncbi.nlm.nih.gov/rest/pug/compound/cid/{cids}/property/MolecularWeight,XLogP,TPSA,HBondDonorCount,HBondAcceptorCount/JSON"
props = pd.DataFrame(requests.get(url).json()["PropertyTable"]["Properties"])
# ChEMBL bioactivity bulk download for a target
target_id = "CHEMBL203" # EGFR
url = f"https://www.ebi.ac.uk/chembl/api/data/activity.json?target_chembl_id={target_id}&pchembl_value__gte=5&limit=1000"
activities = requests.get(url).json()["activities"]
df = pd.DataFrame(activities)[["molecule_chembl_id", "canonical_smiles", "pchembl_value", "standard_type"]]
# Lipinski Rule of 5 filtering (no RDKit needed)
lipinski = props[(props["MolecularWeight"] <= 500) & (props["XLogP"] <= 5) &
(props["HBondDonorCount"] <= 5) & (props["HBondAcceptorCount"] <= 10)]
# SDF download from PubChem (for docking input)
sdf_url = f"https://pubchem.ncbi.nlm.nih.gov/rest/pug/compound/cid/{cids}/SDF"
sdf_content = requests.get(sdf_url).text
形式のレシピ集とページネーションのパターンについては、tooluniverse-data-wrangling スキルを参照してください。
NVIDIA NIM ランタイムに関する注意事項
AlphaFold2:5~15 分(非同期、最大約 2000 AA)。ESMFold:約 30 秒(最大 1024 AA)。DiffDock:リガンドあたり約 1~2 分。Boltz2:約 2~5 分。GenMol/MolMIM:約 1~3 分。
必ず確認してください:import os; nvidia_available = bool(os.environ.get("NVIDIA_API_KEY"))
大規模な拡張(500 化合物超)の場合は、100 件ずつのバッチに分け、ドッキングでは有望度の高い候補を優先します。
参考ファイル
- WORKFLOW_DETAILS.md - フェーズごとの手順、コードパターン、スクリーニングプロトコル
- TOOLS_REFERENCE.md - パラメーターとフォールバックチェーンを含むツールの完全なリファレンス
- REPORT_TEMPLATE.md - レポートファイルのテンプレートとエビデンスの評価システム
- EXAMPLES.md - ワークフローのエンドツーエンドの例(EGFR、新規ターゲット、リード最適化)
- CHECKLIST.md - 提出前の検証チェックリスト