概要
ChEMBL MCP (cyanheads) は @cyanheads/chembl-mcp-server としてパッケージ化されたコミュニティ製インテグレーションで、MCP クライアント経由で ChEMBL データを取得します。独立した科学データベースや予測モデルを提供するのではなく、上流の ChEMBL REST API をラップしています。ワークフローでは、クライアントが組み合わせるツールチェーン内で、化合物探索、タンパク質標的の特定、実測生物活性の取得をつなぐ役割を担います。README には、ローカル STDIO、Streamable HTTP、および公開ホスト型エンドポイントが記載されています。
化合物の入力には、名称、ChEMBL ID、InChIKey、SMILES が含まれ、完全一致、類似性、部分構造検索に使用できます。標的検索では UniProt アクセッション、遺伝子シンボル、自由記述を受け付け、種や標的タイプによるフィルターを利用できます。返された分子および標的の識別子は、化合物、標的、または特定の化合物–標的ペアに対する生物活性クエリに利用できます。出力には、分子特性、活性測定値、医薬品の作用機序と適応症、およびアッセイの出典情報が含まれます。分子と標的のレコードは JSON MCP リソースとしても公開されており、同じデータにはツールからも引き続きアクセスできます。
生物活性の結果は pchembl_value でフィルタリングおよび順位付けできますが、効力の比較は単一の standard_type に限定するよう文書に記載されています。効力値が欠けている場合は null のままとなり、null_potency で別途取得できます。このプロバイダーを有効にすると、大規模な活性データセットを DuckDB 対応の DataCanvas テーブルに一時格納し、読み取り専用 SQL で分析できます。インラインプレビューと一時格納データセットにはそれぞれ別の上限があり、切り詰めと行数が開示されます。医薬品の作用機序と適応症の検索では、部分的な結果であることが明示された結果が返される場合があります。こうした制御は、呼び出し側が完全性と出典情報を評価する助けになりますが、基礎となるアッセイを調べずに科学的な比較可能性を確立するものではありません。
主な機能
- 名称、ChEMBL ID、InChIKey で分子を検索するか、SMILES を使用して完全一致、Tanimoto 類似性、部分構造検索を実行します。結果には分子特性と最高臨床段階が含まれます。
- UniProt アクセッション、遺伝子シンボル、テキストから標的を解決し、後続の生物活性クエリに使用できる標的タイプ、種、構成要素の識別子を返します。
- 分子、標的、または化合物–標的ペアごとに生物活性を取得できます。測定タイプ、効力、アッセイタイプ、種のフィルターに加え、順位付き表示と効力値欠損の表示を個別に利用できます。
- 医薬品の作用機序、分子標的、作用タイプ、初回承認年、臨床適応症を取得し、作用機序と適応症の一覧に関する完全性ステータスを確認できます。
- 個々の生物活性レコードの根拠となるアッセイの説明、タイプ、種、標的、ChEMBL 信頼度スコアを確認できます。
- 大規模な生物活性データセットを、オプションの DuckDB 対応 DataCanvas テーブルに一時格納し、スキーマを調べ、結果上限を開示したうえで読み取り専用 SQL SELECT クエリを実行できます。
用途
- 評価手順の提案:UniProt アクセッションでタンパク質を解決し、その IC50 測定値を取得して、候補化合物を比較する前にアッセイの出典情報を確認します。
- 評価手順の提案:SMILES ベースの類縁体を検索し、返された分子識別子を標的特異的な生物活性クエリに引き継ぎます。
- 評価手順の提案:記録された作用機序と適応症を実測活性に関連付けた医薬品の背景レポートを作成し、部分結果のステータスを保持します。
- 評価手順の提案:一時格納した活性データセットを読み取り専用 SQL でグループ化または重複排除し、集計を完全なものとして扱う前にスピル上限を確認します。
使い方
- プロジェクト READMEを読み、記載されているホスト型、ローカル STDIO、自前ホストの HTTP のいずれかを選びます。ローカルで使用する場合は、実行環境の前提条件とクライアント設定例を確認します。
- 例に従って MCP クライアントを設定するか、Streamable HTTP で公開エンドポイントに接続します。README には、上流の ChEMBL へのアクセスに API キーやアカウントは不要と記載されています。
chembl_search_moleculesまたはchembl_search_targetsを使って、代表的な評価を開始します。サポート対象の識別子または構造を入力し、後続の呼び出しに備えて返された ChEMBL ID を保持します。- 分子 ID、標的 ID、またはその両方を指定して
chembl_get_bioactivitiesを呼び出します。効力を比較する場合は単一のstandard_typeを選び、フィルターと件数を確認し、必要に応じて効力値が欠けている行を別途調べます。 - アッセイ ID を
chembl_get_assayに、または分子 ID をchembl_get_drug_infoに渡して情報を確認します。結果を解釈する前に、アッセイのコンテキストと作用機序/適応症の完全性ステータスを確認します。 - 大規模なローカルデータセットでは、文書に従って
CANVAS_PROVIDER_TYPE=duckdbを有効にします。chembl_dataframe_describeで一時格納した列を確認し、その後chembl_dataframe_queryを使用します。切り詰めに関する開示事項を保持し、README の ChEMBL 帰属表示のガイダンスに従います。