データソースと統合インターフェースを分ける

化学データエージェントに必要なのは、検索可能なデータベースだけではありません。ソースレコード、それを取得するインターフェース、そして生成される説明の間に、信頼できる境界を設ける必要があります。このコレクションでは、異なる層に属する4つの候補を比較します。これは計画のための参考資料であり、互換性マトリクスでも、各リソースを組み合わせて実行した証拠でもありません。

接続を提案するたびに、上流サービス、リポジトリのメンテナー、選択したソースリビジョン、デプロイ方法を記録してください。cyanheads のサーバーはコミュニティ統合であり、その名称だけでは PubChem または ChEMBL の所有物であることも、プロバイダーによるサービス保証があることも示されません。ソフトウェアライセンスと、基盤データベースへのアクセスおよび帰属表示の条件は分けて扱ってください。

まず、判断すべき問いを定めます。タスクで必要なのは、化合物の同定、実測生物活性、材料データへのアクセス、それとも手順に関するガイダンスですか? すべてを既定で接続するのではなく、その問いに答えられる最小限のインターフェースセットを選びます。

リソースを役割に合わせる

  • PubChem MCP (cyanheads) は PubChem の PUG REST API と PUG View API をラップします。文書で説明されている範囲には、識別子検索と構造検索、物理化学的性質、帰属情報付きの GHS レコード、生物活性、相互参照、3D コンフォマーが含まれます。レコードの取得には、主に化合物識別子である CID を使用します。取得したフィールドから導出する Lipinski 評価と Veber 評価は計算であり、学習済みモデルによる予測ではありません。
  • ChEMBL MCP (cyanheads) は、分子検索と標的検索を、実測活性レコード、アッセイの出典、薬物の作用機序、適応症につなぎます。生物活性クエリには、分子、標的、または化合物—標的の組み合わせを指定できます。オプションの DuckDB ベースの DataCanvas 機能は、より大規模な活性データセットの分析をサポートします。
  • Materials Project API client は mp-api として配布されるクライアントプロジェクトです。整理済みのリソース参照には、オプションの MCP 依存関係グループと mpmcp エントリーポイントが記載されています。これは統合の入口があることを示すだけであり、公開されるツールや、セットアップが検証済みであることを示すものではありません。出典の抜粋では、クエリフィールド、認証、レスポンスの契約が明らかになっていないため、パイプラインを設計する前に確認が必要です。
  • Scientific Agent Skills は手順の説明と補助アセットを提供するもので、独立したデータベースでも単体で動作する研究エージェントでもありません。Database Lookup のガイダンスでは、エンドポイントの選択、ページネーション、アクセス要件、出典と処理履歴を取り上げており、PubChem と ChEMBL も含まれます。個々の skill にはヘルパーやテンプレートが含まれる場合があります。依存関係と認証情報は別途準備します。

MCP サーバーの文書には、STDIO と Streamable HTTP のデプロイ方式が記載されています。共通のトランスポートに対応しているだけでは、特定のホストが各ツールやリソースを正しく公開できるとは限りません。

入出力の契約を定める

自律的な呼び出しを許可する前に、タスクごとに簡潔な契約を定めます。

  1. **入力:**許可する識別子の種類、構造表現、生物種または標的の制限、要求する性質、結果数の上限。
  2. **出力:**ソース識別子、選択したフィールド、該当する場合の単位、クエリフィルター、取得時刻、完全性を示す情報、出典の帰属表示。
  3. **継続処理:**ページネーションの進め方、取得を停止する条件、不完全なデータセットの表示方法。
  4. **復旧処理:**修正したクエリを許可する障害と、人による確認が必要な障害。

PubChem では、解決できない入力、存在しない CID、化合物は存在するものの要求した測定値がない場合を区別します。ChEMBL では、欠損した数値をゼロではなく null のまま保持します。ランキング表示と null_potency 表示は区別してください。

次の点を確認します。エージェントは、完全なデータセットを受け取ったのか、プレビューなのか、フィルター後に結果がなかったのかを判別できますか? ChEMBL のインラインプレビューとステージングテーブルには、それぞれ別の上限があります。PubChem はページネーションと切り捨てに関する情報を提供し、一部のエンリッチメントフィールドにはバッチ制限があります。最終回答でもこうした注記を保持するよう、エージェントに求めてください。

計画例:仮想の化合物—標的検索

研究者が、公開されている3つの化合物名と1つのタンパク質標的について、エビデンステーブルを作成したいと仮定します。これは仮想の計画であり、報告済みのテストや科学的結果ではありません。

**提案する入力:**3つの名称、研究者が指定する UniProt アクセッション、生物種の制限、IC50 など1種類の活性測定タイプ。

提案する手順:

  1. pubchem_search_compounds を使用して名称を解決します。候補レコードが複数残る場合は、処理を止めて確認を求めます。最初の結果を黙って選んではいけません。
  2. 選択した性質を取得し、CID と構造識別子を同一性の根拠として保持します。
  3. 対応する識別子または構造入力を使用して、ChEMBL の分子を独立に解決します。PubChem から ChEMBL への対応付けは、自動的な同等性ではなく、同一性確認が必要な統合境界の提案として扱います。
  4. アクセッションと生物種の制限を指定して chembl_search_targets を使用し、解決済みの各化合物—標的ペアについて chembl_get_bioactivities を照会します。
  5. 比較を提案する前に、chembl_get_assay で関連するアッセイを確認します。

**予定する出力:**元の入力と解決済みレコードを結び付ける表を1つ、活性タイプ、値、単位、アッセイと標的の識別子、フィルター、完全性の状態を保持する表をもう1つ作成します。未解決の対応付けや測定値がない場合も、明示的に示します。

検討すべき問いには、ソース間で構造が一致しているか、対象の生物種と標的タイプが意図したものか、アッセイを比較できるか、などがあります。ChEMBL の文書では、効力の比較は同一の standard_type に限定されています。ただし、このフィールドが一致するだけでは、すべてのアッセイをまとめて順位付けする科学的根拠として十分ではありません。

権限と障害対応を評価する

以下は評価の提案であり、すでに実施された確認ではありません。

選択した構成について、ネットワーク接続先、認証情報、ログ記録、ストレージ、ローカルへの書き込みを洗い出します。PubChem と ChEMBL の統合では上流へのアクセスにキーは不要と説明されていますが、デプロイ時の認証とホストの権限は別の問題です。読み取り専用で取得する場合でも、ログ記録やデータセットのステージングによってローカルに成果物が残らないとは限りません。

タスクに必要な Scientific Agent Skills の範囲だけを確認します。Skills は、パッケージのインストール、コード実行、ネットワークリクエスト、ファイル変更を指示する場合があります。これらの権限を付与する前に、指示とヘルパーを確認してください。

機微情報を含まない入力を使って、曖昧な名称、不正な構造、レコードの欠落、プロバイダーの障害、ページネーションを試します。ChEMBL canvas を使う場合は、ステージングの上限と、プロバイダーが無効なときの動作も評価します。後日テストを実施する場合は、正確な設定とソースリビジョンを保存してください。裏付けのない組み合わせについては、未知のままにします。

出典と処理履歴を保持し、限界を認識する

エージェントが作成した最終的な文章を、取得したレコードと照合します。流暢な要約であっても、GHS データの欠落を「危険性なし」という主張に、null の効力を不活性に、切り捨てられたプレビューを完全な検索に置き換えてはいけません。

網羅性は上流のレコードに依存します。PubChem には分類や計算された3D座標がない場合があり、ChEMBL の活性解釈はアッセイの文脈に左右されます。Materials Project の参照資料では、物性のカバレッジや認証の挙動は確認できません。Skill の説明から、科学的妥当性やライブサービスの信頼性が保証されるわけではありません。

このコレクションは、ソース確認と編集上の選定を待つ未公開の草稿です。

簡潔な実行チェックリスト

  • タスクと、必要最小限のリソースセットを選ぶ。
  • 上流プロバイダー、メンテナー、リビジョン、デプロイ方法を記録する。
  • 識別子、フィールド、単位、停止ルールを定める。
  • 欠損データ、エラー、切り捨ての違いを保持する。
  • 権限、ログ、ストレージ、skill のヘルパーを確認する。
  • 公開例を使って、同一性の対応付けとアッセイの比較可能性を評価する。
  • ソースレコードをエージェントの要約とともに保持し、実際に行った確認だけを記録する。