Meeko: Molecule Parametrization and Software Interoperability for Docking and Beyond
J. Chem. Inf. Model. | 2025年12月 | DOI: 10.1021/acs.jcim.5c02271
RDKit を基盤に AutoDock 一族 (AD4 / Vina / AD-GPU) の入力ファイルを統一 API で生成。MGLTools を置き換え、水和・マクロサイクル・Zn²⁺・共有結合ドッキングを 1 ライブラリで処理。
① 背景と課題:MGLTools 時代の負債

AutoDock4 時代から PDBQT 生成のデファクトとして使われてきた MGLTools は、Python 2 ベースで化学検証が緩く、不正な原子価や欠損原子を含む構造でもそのまま PDBQT を吐き出してしまう。水和ドッキング・マクロサイクル柔軟化・共有結合ドッキング等の拡張は個別の bash / Python ハックで対応されてきた結果、再現性とメンテナンス性が破綻していた。

化学妥当性チェックなし → 不正な valence や欠損原子をそのまま PDBQT に通してしまう
高度ドッキング手法ごとに別スクリプト → CLI 引数・原子タイプが揃わずバッチ化が困難
Python 2 / MGL 由来のレガシーで現代の依存環境に追随できない

→ RDKit を核に据え、AutoDock 一族の前処理を 1 ライブラリで統一する設計が求められた。

② 手法の概要:RDKit 中心の前処理スタック
  • 小分子は RDKit Mol、受容体は残基ごとの RDKit Mol で保持し検証
  • meeko.MoleculePreparation で水素付加 / 電荷 / 原子タイプ / PDBQT を一括処理
  • 水和・マクロサイクル・Zn²⁺・共有結合をフラグで切替可能なプラグイン群
  • AD4 / Vina / AutoDock-GPU 向け PDBQT を同一 API から出力
  • CLI と Python API を両提供しバッチ・ノートブック双方に統合
Meeko 前処理パイプライン SMILES / SDF / PDB RDKit Mol valence 検証 MoleculePreparation H+ / charge / type 水和 マクロサイクル Zn²⁺ 配位 共有結合 dock プラグイン (フラグ切替) AutoDock4 PDBQT Vina PDBQT AutoDock-GPU PDBQT 統一 API → 3 エンジン同時対応
③ 本研究で示したこと
  • RDKit ベース化で MGLTools が見落とす不正 valence / 欠損原子を検出
  • 水和ドッキング (W 疑似原子) を統一フラグで適用可能
  • マクロサイクル柔軟化を選択的に解除する原子タイピング
  • Zn²⁺ 配位用カスタム原子タイプを内蔵
  • 共有結合ドッキングのための反応性残基マーキングを自動化
  • AutoDock4 / Vina / AutoDock-GPU 3 エンジンに同 API で出力
  • CLI + Python API + pip 配布で HTS パイプラインへ即時統合
(a) MGLTools vs Meeko 機能比較
項目MGLToolsMeeko
化学コア独自 / 簡易RDKit
不正 valence 検出なしあり
欠損原子チェックなし残基ごとに検証
水和ドッキング外部スクリプトフラグ 1 つ
マクロサイクル個別ハック内蔵
Zn²⁺ 配位未対応カスタム原子型
共有結合 dock手作業残基マーキング
APIPython 2 のみPython 3 + CLI
対応エンジンAD4 中心AD4 / Vina / AD-GPU
(b) 拡張ドッキングモードの守備範囲
Meeko が単一 API で扱う 4 ドッキングモード Meeko unified 水和 W 疑似原子 マクロサイクル 柔軟化解除 Zn²⁺ 配位 custom type 共有結合 反応性残基 どのモードも AD4 / Vina / AutoDock-GPU の PDBQT に出力
(c) 出力 PDBQT を消費する 3 エンジン
対応 AutoDock 系エンジンと機能カバー AD4 Vina AD-GPU PDBQT PDBQT PDBQT 水和 ◯ macrocyc ◯ cov ◯ Zn ◯ 水和 ◯ macrocyc ◯ cov ◯ Zn ◯ GPU 加速 水和 ◯ macrocyc ◯ cov ◯ Zn ◯ 機能カバー数
(d) 開発者向け主要 API
小分子前処理
meeko.MoleculePreparation
受容体側エントリ
PDBQTReceptor / PolymerTopology
CLI 配布
mk_prepare_ligand.py / mk_prepare_receptor.py
出力フォーマット
PDBQT (AD4 / Vina / AD-GPU)
配布
pip install meeko / OSS
⑤ テイクホームメッセージ
RDKit が前処理の標準に
AutoDock 系前処理が「RDKit Mol を入口にする」ことに統一され、化学検証付き PDBQT 生成が標準化した。
ハックスクリプト撤廃
水和・マクロサイクル・Zn²⁺・共有結合ドッキングが個別の bash 連結ではなく単一 Python API のフラグに収斂。
3 エンジン横断スイッチング
AD4 / Vina / AutoDock-GPU の選択がコード側 1 行で済むため、エンジン比較ベンチマークが現実的に。
HTS 設計に直結
CLI と Python API の両提供、pip 配布、オブジェクト指向構造によって SLURM / Snakemake / Airflow への組込みが容易。
応用補足:自社 lib/docking への移植
  • UniDockRunner の前段に MeekoLigandPreparer ラッパーを差し込み valence 検証 → PDBQT 化を統一
  • ProLIFCalculator へ供給する複合体構造の整合性チェックに RDKit 検証経路を再利用
  • 水和ドッキング・Zn²⁺ 配位のフラグ群をそのまま UniDockRunner の YAML 設定として露出
  • 共有結合ドッキング対応で KRAS G12C 等の covalent inhibitor 評価ラインを構築可能
インパクト
  • AutoDock 一族の前処理標準が MGLTools → Meeko へ移行する基盤を提示
  • 水和・マクロサイクル・Zn²⁺・共有結合の 4 拡張モードを 1 ライブラリで再現可能に
  • pip 配布 + OSS 公開で大規模 VS / GPU ドッキングへの導入障壁が大幅低下