mcpField
E
encode-ccres-database

encode-ccres-database

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

encode-ccres-database について

SCREEN と ENCODE の API を通じて、ENCODE cCRE や関連するゲノムデータを調べる研究向けスキルです。座標検索のほか、エレメントや遺伝子の情報、生体試料、関連データを扱います。

主な機能

  1. 01ゲノム座標やシグナルによる cCRE 検索
  2. 02cCRE の詳細と生体試料メタデータの取得
  3. 03近傍遺伝子と関連遺伝子の検索
  4. 04オルソログ、発現、ENTEx、GWAS の照会
  5. 05REST API による ENCODE 実験の検索

活用シーン

  1. 01ゲノム領域内の調節エレメントの確認
  2. 02cCRE の生体試料データとマーカー網羅性の確認
  3. 03候補調節エレメントに関連する遺伝子の特定

インストール

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

$npx skills add https://github.com/google-deepmind/science-skills --skill encode-ccres-database

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
citation.bib
graphql_schema.md
json_output_structure.md
scripts/
encode_portal_api.py
screen_api.py

詳細

ENCODE Database スキル

このスキルでは、SCREEN GraphQL API を介して ENCODE の cCRE(候補シス調節エレメント)レジストリを照会できます。生化学的シグネチャ(DNase、H3K4me3、H3K27ac、CTCF)を分析し、機能的な非コード DNA エレメント(プロモーター、エンハンサー、インシュレーターなど)の特定に役立ちます。

前提条件

  1. uv:uv スキルを読み、そのセットアップ手順に従って、uv がインストールされ、PATH に含まれていることを確認してください。
  2. ユーザーへの通知:.licenses/encode_ccres_database_LICENSE.txt がワークスペースのルートディレクトリにまだ存在しない場合は、(1)https://www.encodeproject.org/help/rest-api/ に記載の利用規約を確認するようユーザーに目立つ形で通知し、(2)通知文とタイムスタンプを記録したファイルを作成してください。

基本ルール

  • ラッパーを使用する:データベースに直接アクセスするのではなく、必ず付属のヘルパースクリプトを実行してデータベースを照会してください。スクリプトは必要なレート制限を自動的に適用します。
  • 出力の解析:JSON 出力ファイル全体をコンテキストに読み込むために cat を使用しないでください。ファイルが非常に大きい場合があります。jq を使用して関連フィールドを効率的に解析・抽出する必要があります。
  • 通知:このスキルを使用した場合は、そのことを出力に記載してください。
クイックスタート
# Search cCREs by coordinates
uv run scripts/screen_api.py search --chromosome chr11 \
  --start 5205263 --end 5207263 \
  --output /tmp/search.json

# Get details for a specific cCRE
uv run scripts/screen_api.py details EH38E2941922 \
  --output /tmp/details.json

すべてのサブコマンドは JSON をディスクに書き込みます。出力は常に /tmp/ などの一時的な場所に保存してください。

高信頼度(「Type A」)バイオサンプルの特定

ENCODE のバイオサンプルは、データの完全性に応じて分類されることがよくあります。「Type A」(高信頼度)バイオサンプルとは、4 つの主要なエピジェネティックマーカー(DNase、H3K4me3、H3K27ac、CTCF)すべてについて実験データがあるものです。

biosamples コマンドと details コマンドは、それぞれのバイオサンプルに is_type_a のブール値フラグを自動的に追加します。

高信頼度の細胞タイプを見つける例

uv run scripts/screen_api.py biosamples --output /tmp/biosamples.json
# Use jq to filter for Type A biosamples
jq '.data.ccREBiosampleQuery.biosamples[] | select(.is_type_a == true) | .displayname' /tmp/biosamples.json
出力の解析(重要)

JSON 出力ファイル全体をコンテキストに読み込むために cat を使用しないでください。 **ファイルが非常に大きい場合があります。**代わりに、スクリプトが保存した JSON ファイルから、jq を使用して関連フィールドを効率的に解析・抽出する必要があります。システムで jq を使用できない場合は、必要なデータを抽出する独自の Python フィルタリングコード(例:python3 -c "import json...")を記述してください。

各コマンドから返される JSON 構造の完全なリファレンス(jq で照会するフィールドを確認できます)は、references/json_output_structure.md を読んでください。

使用可能なコマンド
  • search:座標、アクセッション、またはエピジェネティックシグナルで cCRE を検索します。

    uv run scripts/screen_api.py search \
        --chromosome chr11 --start 5205263 --end 5207263 \
        --output /tmp/search.json
    
  • nearby-genes:指定した cCRE アクセッションの近くにある遺伝子を検索します。

    uv run scripts/screen_api.py nearby-genes \
        EH38E1516972 --output /tmp/nearby.json
    
  • details:特定の cCRE の詳細情報と、バイオサンプルごとの最大 Z スコアを取得します。

    uv run scripts/screen_api.py details EH38E2941922 \
        --output /tmp/details.json
    
  • biosamples:アセンブリのバイオサンプルメタデータを取得します。

    uv run scripts/screen_api.py biosamples \
        --output /tmp/biosamples.json
    
  • orthologs:別のアセンブリにあるオーソログ cCRE を取得します。

    uv run scripts/screen_api.py orthologs EH38E2941922 \
        --output /tmp/orthologs.json
    
  • linked-genes:HiC や eQTL などの手法で関連する遺伝子を検索します。

    uv run scripts/screen_api.py linked-genes \
        EH38E1516972 --output /tmp/linked.json
    
  • gene-expression:名前で指定した遺伝子について、すべてのバイオサンプルにおける遺伝子発現(TPM)を取得します。内部では、遺伝子シンボルを Ensembl 遺伝子 ID に解決してから、バイオサンプルごとの RNA-seq 定量値を照会します。

    uv run scripts/screen_api.py gene-expression GAPDH \
        --output /tmp/gene_expr.json
    
  • entex:cCRE またはゲノム領域の ENTEx データを取得します。

    uv run scripts/screen_api.py entex \
        --accession EH38E1310345 \
        --output /tmp/entex.json
    
    uv run scripts/screen_api.py entex \
        --region chr1:1000068:1000409 \
        --output /tmp/entex.json
    
  • gwas:ゲノムワイド関連解析、SNP、またはエンリッチメントデータを照会します。

    uv run scripts/screen_api.py gwas studies \
        --output /tmp/gwas.json
    
    uv run scripts/screen_api.py gwas snps --study \
        Ahola-Olli_AV-27989323-Eotaxin_levels \
        --output /tmp/gwas_snps.json
    

ほとんどのコマンドでは、--assembly mm10 または --assembly grch38 フラグを指定して、特定のアセンブリを明示的に要求できます。デフォルトでは、スクリプトは grch38 を対象にしますが、結果が見つからない場合やクエリが失敗した場合は、自動的に mm10 に切り替えます。

ENCODE Portal REST API(直接アクセス)

SCREEN で cCRE として表現されていない生の実験、ChIP-seq ピーク、その他のデータセットにアクセスするには、scripts/encode_portal_api.py スクリプトを使用します。このスクリプトでは、ENCODE Portal REST API に対してカスタムクエリを実行できます。

使用方法
uv run scripts/encode_portal_api.py search "type=Experiment&target.label=ZNF549" --output /tmp/znf549_experiments.json
データ解析のヒント

ENCODE からダウンロードした .bed または .bigBed ファイルを解析する際は、重複領域(遺伝子プロモーターとピークの間など)を検索するために、標準的なバイオインフォマティクスツールの使用を強くおすすめします。

  • bedtools:ゲノム上の領域に対する高速な数学的操作に使用します。
  • bigBedToBed:バイナリ BigBed ファイルを読み取り可能な BED 形式に変換します。
  • pybedtools:bedtools 用の Python ラッパーです。

これらのツールが事前にインストールされていない場合は、独自のロジックを記述してください。

カスタムクエリ(SCREEN GraphQL)

スクリプトが対応していない複雑な GraphQL クエリを実行する必要がある場合は、SCREEN GraphQL API で利用可能なクエリ、引数、戻り値フィールドのリファレンスとして references/graphql_schema.md を参照してください。

コメント