mcpField
F
foldseek-structural-search

foldseek-structural-search

github.com/google-deepmindデータ・データベース3.4k2.2k 回インストール5 日前に更新
リポジトリ

foldseek-structural-search について

foldseek-structural-searchは、タンパク質構造ファイルをFoldseekのWeb APIで検索し、構造ヒットを整理するスキルです。注釈付きの結果要約やファイルを必要とするタンパク質研究者向けです。

主な機能

  1. 01PDB、CIF、mmCIF構造の検索
  2. 02Foldseekデータベースへの照会
  3. 03アライメント指標によるヒット順位付け
  4. 04構造ヒットの機能要約
  5. 05MarkdownとJSONで結果を保存

活用シーン

  1. 01タンパク質モデルの構造ホモログ検索
  2. 02一致確度とクエリカバレッジの確認
  3. 03ヒットに含まれる機能群の把握

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/google-deepmind/science-skills --skill foldseek-structural-search

インストール後、Claude Code で/foldseek-structural-searchを入力して読み込まれたか確認します。

同梱ファイルreferences/citation.bibscripts/search.py

詳細

前提条件

  1. uv:uv スキルを読み、セットアップ手順に従って、uv がインストールされ、PATH に含まれていることを確認してください。
  2. ユーザーへの通知:ワークスペースのルートディレクトリに .licenses/foldseek_structural_search_LICENSE.txt がまだ存在しない場合は、(1)https://search.foldseek.com/search および https://github.com/steineggerlab/foldseek の利用条件を確認するようユーザーにはっきりと通知し、(2)通知文とタイムスタンプを記録したファイルを作成してください。

目標

ユーザーから提供された3Dタンパク質構造ファイル(.cif、.mmcif、または .pdb)を Foldseek Web サーバー API に送信して、構造的に類似したタンパク質を検索します。上位の構造的ヒットを報告し、主要なアラインメント指標を解釈し、推定されるタンパク質の機能を要約して、Markdown 形式の表を .md ファイルに保存し、詳細な全結果をローカルの JSON ファイルに保存します。

基本ルール

  • ファイル要件:このツールでは、配列、名前、またはアクセッション ID による検索はできません。.pdb、.cif、または .mmcif ファイルのパスが必須です。
  • 厳格な検証:入力検証やデータベースの許可リストチェックを決して回避しないでください。
  • JSON を解析しない:直近の要約には、生成された .md ファイルのみを使用してください。JSON は後続の専門的なツールで使用するためだけに保存されます。
  • 生データを解析しない:生の3D座標を自分で解析または読み取ろうとしないでください。必ずファイルをスクリプトに渡してください。
  • 通知:このスキルを使用した場合は、その旨を出力に記載してください。

手順

  1. 入力の厳格な検証: ユーザーがワークスペース内の .cif、.mmcif、または .pdb ファイルへの有効なパスを明示的に指定していることを確認します。
    • ユーザーがタンパク質名、アミノ酸配列、またはアクセッション ID(例:UniProt ID)を指定していて、ダウンロード済みの構造ファイルがない場合は、直ちに停止します。スクリプトを実行してはいけません。
    • Foldseek では物理的な 3D 座標ファイルが必要であることをユーザーに伝え、まず構造をダウンロードするよう提案します(例:AlphaFold fetch ツールを使用)。
  2. データベースの検証: ユーザーが検索対象のデータベースを指定しているか確認します。
    • 使用可能なリスト: afdb50、afdb-swissprot、pdb100、BFVD、mgnify_esm30、cath50、gmgcl_id、bfmd、afdb-proteome。
    • ユーザーがこのリストにないデータベースを指定した場合は、直ちに停止します。スクリプトを実行してはいけません。データベースはサポートされていないことを伝え、使用可能なリストを提示します。
  3. ファイル名の生成: 入力ファイルに基づいて、JSON データと Markdown テーブルの両方について説明的な出力ファイル名を生成します(例:proteinA_foldseek_results.json と proteinA_foldseek_results.md)。
  4. ユーザーの要求に基づいて Python スクリプトを実行し、標準出力を生成した .md ファイルにリダイレクトします。
    • デフォルト(データベースの指定なし): uv run scripts/search.py <path-to-file> -o <generated-filename.json> > <generated-filename.md>
    • カスタム(有効なデータベースを指定): uv run scripts/search.py <path-to-file> -o <generated-filename.json> --databases <db1,db2,db3> > <generated-filename.md>
  5. スクリプトはデータベースを検索し、JSON ペイロード全体を保存して、指定された .md ファイルに Markdown 形式のテーブルを書き込みます。
  6. 結果の読み取り: 新たに生成された .md ファイルを開いて注意深く読み、Markdown テーブルを確認します。
  7. 指標の解釈: ユーザーにとって意味のある注釈が付いた構造類似候補の上位 3~5 件を要約します。結果を報告する際は、次の特定のフィールドを使って類似度を評価します。
    • Prob(確率): 1.0(100%)に近い値は、そのフォールドが真の構造ホモログである可能性が非常に高いことを示します。
    • Q-Cov(クエリカバレッジ): 高い割合は、小さな局所モチーフだけでなく、クエリタンパク質全体の形状の大部分を類似候補がカバーしていることを示します。
    • E-value と Seq Identity: 進化的背景を補足するために使用します。
  8. 機能解析の実施: 報告する類似候補について、Target ID 列に含まれるテキストの説明を分析します。
    • 構造ホモログ上位の具体的なタンパク質名と機能を明示します。
    • ホモログの全リストに見られる、さまざまな機能、ドメイン、またはタンパク質ファミリー全体をまとめて概説します(例:「ヒットの大半はポータルタンパク質ですが、ウイルスカプシドに一致する明確なクラスターもあります……」)。
  9. 新たに作成された両方のファイル(.json と .md)とその保存場所をユーザーに明確に伝え、後続の解析でスムーズに利用できるようにします。

* API がエラーを返した場合、またはファイルが見つからない場合は、ユーザーに明確に伝え、

ファイルパスを確認するよう依頼します。

コメント