mcpField
T
tooluniverse-rare-disease-genomics

tooluniverse-rare-disease-genomics

github.com/mims-harvardデータ・データベース1.8k225 回インストール2 日前に更新
リポジトリ

tooluniverse-rare-disease-genomics について

希少疾患ゲノミクス研究向けのToolUniverseスキルです。表現型から疾患、遺伝子、変異の順に検討し、遺伝形式や証拠の質を考慮して原因候補を絞ります。

主な機能

  1. 01希少疾患の表現型と遺伝形式を整理
  2. 02原因遺伝子と疾患関連を検索
  3. 03遺伝子と疾患の関連性を評価
  4. 04ClinVar変異と集団頻度を確認
  5. 05表現型との一致度で変異を優先

活用シーン

  1. 01患者の表現型から希少疾患の原因を調査
  2. 02遺伝子と疾患の関連性を確認
  3. 03病原性候補変異を絞り込む
  4. 04疾患の表現型、疫学、臨床試験を検索

MCP 対応

このToolUniverseスキルは、Orphanet、HPO、GenCC、ClinVarなどの希少疾患研究データをToolUniverseのツールで検索します。入力にはMCPインターフェースの説明はありません。

インストール

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

$npx skills add https://github.com/mims-harvard/tooluniverse --skill tooluniverse-rare-disease-genomics

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

詳細

説明するのではなく、計算する

解析に計算(統計、データ処理、スコアリング、情報の付加)が必要な場合は、Bash 経由で Python コードを書いて実行してください。何をするか説明するのではなく、実際に実行して結果を報告してください。ToolUniverse ツールでデータを取得し、その後 Python(pandas、scipy、statsmodels、matplotlib)で解析してください。

希少疾患ゲノミクス研究

希少疾患の調査戦略

調査の順序が重要です。表現型 -> 疾患 -> 遺伝子 -> バリアントの順で進め、逆順にはしないでください。遺伝子から調査を始める場合は、逆の流れで確認します。遺伝子 -> 疾患 -> 予想される表現型 -> 患者に当てはまるか?

すぐに ClinVar を調べたくなる気持ちを抑えてください。「病原性」と記載された ClinVar の登録情報も、適切な遺伝形式で、その遺伝子が対象の疾患の原因となる場合にのみ意味があります。

バリアントの優先順位付けの推論(重要)

推測せずに調べる――遺伝子、バリアント、疾患の関連性について不確かな場合は、データベースを検索してください。記憶に頼らないでください。

数千のバリアントから原因バリアントを1つに絞り込む方法
  1. まず遺伝形式を確認する――遺伝形式は Orphanet_get_natural_history で確認してください。これによって絞り込み方が決まります。

    • 常染色体優性:片方のコピーにヘテロ接合性バリアントがあるか確認します。両親が非罹患者の場合は新生突然変異を確認します。
    • 常染色体劣性:2つの変異が必要です(ホモ接合性または複合ヘテロ接合性)。保因者の両親も確認してください。
    • X連鎖劣性:半接合の男性が発症し、保因者の女性は通常発症しません。
    • ミトコンドリア遺伝:母系遺伝のみです。ヘテロプラスミーにより浸透率が複雑になります。
  2. アレル頻度で絞り込む――希少疾患のバリアントは、集団中でまれである必要があります。

    • 優性疾患:gnomAD におけるアレル頻度 < 0.001(1,000人に1人)
    • 劣性疾患:保因者のアレル頻度 < 0.01(100人に1人)
    • Ensembl VEP のアノテーションまたは OpenTargets のバリアント情報を介して gnomAD を利用し、頻度を確認します。
    • 実際の頻度を調べてください――バリアントがまれだと決めつけないでください。
  3. 影響度の優先順位――予測される影響に基づいて優先順位を付けます。

    • 機能喪失(フレームシフト、ナンセンス、スプライス部位):最も有力な候補です。
    • 保存されたドメイン内のミスセンス:既知の機能ドメイン内にある場合、有力な候補です。
    • 同義置換/イントロン:通常は良性です。ただし、スプライスジャンクションにある場合は別です――この「通常は」は重要です。深部イントロンバリアントでも、標準的な境界から遠く離れた場所に潜在的なスプライス部位を作り、病原性を示す可能性がありますが、影響の注釈だけでは検出されません。深部イントロンまたはその他の未注釈バリアントが、影響の注釈が目立たないにもかかわらず、ステップ1~2(まれで、遺伝形式が合致し、表現型も一致)を通過した場合は、まだ除外しないでください。スプライシング、発現、またはその他の制御関連の指標を実際に破壊するかどうかを、配列に基づいて直接確認するには tooluniverse-regulatory-variant-analysis を参照してください。
  4. ClinVar、OMIM、gnomAD――それぞれを確認するタイミング:

    • ClinVar:「この特定のバリアントに病原性があると判明しているか?」レビューの星の数を確認します(星2つ以上 = 信頼できる)。
    • OMIM(Orphanet/GenCC 経由):「この遺伝子がこの疾患の原因となることは知られているか?」ClinVar より先に確認してください。
    • gnomAD(VEP/OpenTargets 経由):「このバリアントの頻度は、希少疾患の原因となるには高すぎないか?」アレル頻度を確認します。
  5. 表現型と遺伝子型の相関――候補遺伝子を特定した後:

    • 関連疾患の HPO 表現型を取得します(Orphanet_get_phenotypes)。
    • 患者の特徴が「非常に高頻度」の表現型と一致するか確認します。
    • 主要な特徴の不一致は、その遺伝子が原因であることを否定する根拠になります。
    • GenCC の妥当性レベルから、遺伝子と疾患の関連性全体の強さがわかります。

使用例

  • 「マルファン症候群の遺伝的原因は何ですか?」
  • 「嚢胞性線維症に関連する HPO 表現型を探す」
  • 「エーラス・ダンロス症候群の有病率はどのくらいですか?」
  • 「この希少疾患に関連する遺伝子はどれですか?」
  • 「FBN1 はマルファン症候群と確実に関連していますか?」
  • 「CFTR の病原性バリアントを探す」
  • 「ゴーシェ病の臨床試験はありますか?」
  • 「遺伝子 FBN1 に関連する疾患は何ですか?」

NOT(代わりにほかのスキルを使用してください)

  • 一般的な疾患のゲノミクス(2 型糖尿病、高血圧) -> tooluniverse-disease-research を使用
  • がんのバリアント解釈 -> tooluniverse-cancer-variant-interpretation を使用
  • GWAS に基づくバリアント解釈 -> tooluniverse-gwas-snp-interpretation を使用
  • 薬理ゲノミクス/薬物と遺伝子の相互作用 -> tooluniverse-pharmacogenomics を使用
  • 症状に基づく鑑別診断 -> tooluniverse-rare-disease-diagnosis を使用

ワークフローの概要

フェーズ 0:曖昧さの解消(ORPHA コード/HGNC シンボルに解決) -> フェーズ 1:疾患の特性評価 -> フェーズ 2:表現型のマッピング(HPO) -> フェーズ 3:原因遺伝子 -> フェーズ 4:遺伝子と疾患の関連性の妥当性(GenCC) -> フェーズ 5:病原性バリアント(ClinVar) -> フェーズ 6:疫学 -> フェーズ 7:臨床試験 -> フェーズ 8:文献 -> フェーズ 9:レポート


フェーズ 0:曖昧さの解消

ほかの作業を始める前に、ユーザーの入力を正式な Orphanet 識別子に解決してください。多くの疾患名にはサブタイプや包括的な症候群があり、誤って選ぶと誤解を招く結果になります。

Orphanet_search_diseases:name(文字列、必須。例:「Marfan syndrome」)、exact(ブール値、デフォルトは False)、lang(文字列、デフォルトは "en")。名前から ORPHA コードを解決するための主要ツールです。パラメーターは name(query ではありません)です。複数の一致候補が返されるため、サブタイプや包括的な症候群ではなく、該当する疾患を選択してください。「Marfan syndrome」は ORPHAcode 558 に解決する必要があり、284993(「Marfan syndrome and Marfan-related disorders」)ではありません。

Orphanet_search_diseases:query(文字列、必須)。主要ツールで結果が返されない場合のフォールバックです。

Orphanet_get_gene_diseases:gene_symbol(文字列、必須。例:「FBN1」)。遺伝子を起点に調査する場合に使用します。関連の種類を含め、その遺伝子に関連するすべての疾患が返されます。

主な識別子の形式:疾患コードは ORPHAcode の整数(例:Marfan syndrome の場合は 558)、遺伝子識別子は HGNC シンボル(例:FBN1)、表現型は HPO CURIE 形式(例:HP:0001519)です。


フェーズ 1:疾患の特性評価

Orphanet_get_disease:orpha_code(文字列、必須。例:「558」)。Orphanet の公式な定義と同義語の一覧が返されます。

Orphanet_get_classification:orpha_code(文字列、必須)。この疾患が属する疾患階層(例:「rare genetic diseases」、「rare ophthalmic disorders」)が示されます。対象の希少疾患がどのような種類の疾患かを把握するのに役立ちます。

Orphanet_get_natural_history:orpha_code(文字列、必須)。average_age_of_onset と type_of_inheritance が返されます。遺伝形式(常染色体顕性、X 連鎖劣性など)は、バリアントの病原性や家族のリスクを解釈するうえで重要な情報です。

Orphanet_get_icd_mapping:orpha_code(文字列、必須)。臨床コーディングに用いる ICD-10/ICD-11 のコードにマッピングします。

Orphadata_* ツールに関する注意:別の小規模なツール群(Orphadata_get_disorder/_search_by_name/_get_epidemiology/_get_phenotypes)が、同じ基盤の Orphanet データを扱っており、上記の Orphanet_* ツール群とかなり重複しています。Orphanet_* のほうが網羅的(4 つではなく 10 個のツールがあり、Orphadata にはない遺伝子関連、分類、自然歴も含む)なので、デフォルトではこちらを使用してください。Orphadata_get_disorder は、Orphanet_get_icd_mapping が対象としていない MeSH/UMLS/MedDRA へのクロスリファレンスが必要な場合に限り、選択肢として検討してください(Orphanet_get_icd_mapping は ICD-10/ICD-11/OMIM/SNOMED-CT にマッピングします)。


フェーズ 2:表現型のマッピング(HPO)

Orphanet_get_phenotypes:orpha_code(文字列、必須)。頻度ラベルと、それぞれが正式な診断基準かどうかを含むHPO表現型を返します。

頻度は解釈の指針として用いてください。「Very frequent (99-80%)」とマークされた表現型は、ほぼすべての患者に見られる中核的な特徴であり、鑑別診断では大きく重み付けしてください。「Frequent (79-30%)」は診断を裏付ける特徴です。「Occasional (29-5%)」は多様な症状の現れ方を反映しています。「Excluded (0%)」は積極的な除外基準です。これに該当する所見があれば、その診断に反する根拠となります。

表現型が diagnostic_criteria: "Diagnostic criterion" とマークされている場合、単なる統計的関連ではなく、その疾患の正式な診断の枠組みに含まれています。

オントロジーの検索に使うOLS

説明からHPO用語を検索する場合や、CURIEをラベルに解決する場合は、OLSツールを使用してください。HPOに範囲を絞るには ontology="hp"、Orphanet用語には ontology="ordo"、MONDO疾患用語には ontology="mondo" を渡します。

ols_search_terms:query(文字列、必須)、ontology(文字列、任意)、rows(整数、別名 size、デフォルト 10)、exact_match(ブール値、デフォルト False)。

ols_get_term_info:term_id(例:「HP:0001519」のようなCURIE)または term_iri。接頭辞に基づくオントロジーの推定は自動的に機能します。「HP:」は hp、「MONDO:」は mondo、「ORDO:」は ordo に振り分けられます。

ols_get_term_children / ols_get_term_ancestors:term_id または term_iri、ontology(任意)。親となるHPOカテゴリを見つけたり、表現型の検索範囲を広げたり絞り込んだりするのに役立ちます。


フェーズ 3:原因遺伝子の特定

Orphanet_get_genes:orpha_code(文字列、必須、別名:disease_id)。関連の種類と遺伝子座を含む遺伝子を返します。

関連の種類は非常に重要です。「Disease-causing germline mutation(s) in」は、その遺伝子が原因であると確認されていることを意味し、第一に診断の対象とすべきものです。「Major susceptibility factor in」は、不完全浸透を伴うリスク因子を意味します。「Candidate gene tested in」は、予備的で未確認であることを意味します。GenCCまたは文献による追加の検証なしに、これを原因遺伝子として報告しないでください。「Modifying germline mutation in」は、その遺伝子が重症度を修飾するものの、単独では疾患を引き起こさないことを意味します。

Orphanetの遺伝子関連をすべて同等に扱わないでください。報告する際は、必ず関連の種類を明記してください。


フェーズ 4:遺伝子と疾患の関連の妥当性評価

GenCCは、複数の臨床検査機関やキュレーショングループによる独立した評価を集約しています。重要なのは、単一の分類よりも投稿者間の合意が重視されることです。「Definitive」とする投稿者が1人だけの場合よりも、独立した3人の投稿者が「Strong」で一致している場合のほうが、根拠は強くなります。

GenCC_search_gene:gene_symbol(文字列、必須。例:「FBN1」)。分類と投稿者を含む、すべての疾患関連を返します。

GenCC_search_disease:disease(文字列、必須。例:「Marfan syndrome」)。注:パラメーターは disease(disease_title ではありません)です。妥当性レベルを含む、その疾患のすべての遺伝子関連を返します。

分類レベルは、根拠の強い順に次のとおりです:Definitive > Strong > Moderate > Limited > No Known Disease Relationship > Disputed > Refuted > Animal Model Only。「Disputed」は根拠が一致していないことを意味します。有効な関連として報告しないでください。「Refuted」は、以前に主張された関連が否定されたことを意味します。

GenCCの結果を報告する際は、必ず次の点を明記してください:(1)最も高い分類、(2)合意している投稿者の人数、(3)異議を唱える投稿者がいるかどうか。「Definitive」とする投稿者が3人以上いる場合、信頼度は非常に高いといえます。投稿者が1人だけの場合は、必ず独立した検証が必要であることを明記してください。


フェーズ 5:病原性バリアントの検索

ClinVar_search_variants:gene(文字列、遺伝子記号)、condition(文字列、疾患名)、variant_id(文字列)、clinical_significance(文字列)、max_results(整数、デフォルトは20、別名はlimit)。gene、condition、variant_idのいずれかが必須です。主要なパラメーターはgeneです(queryではありません)。

疾患に特異的なバリアントを検索するには、geneとconditionを組み合わせます。これにより、特定の疾患との関連で分類されたバリアントに絞り込めます。これは、複数の疾患に関連する遺伝子を調べる際に重要です。

レビュー状況は、分類の信頼度を示します。「Practice guideline」(4つ星)と「reviewed by expert panel」(3つ星)は、最も信頼度の高い評価を表します。「Criteria provided, multiple submitters, no conflicts」(2つ星)は良好です。「Criteria provided, single submitter」(1つ星)は中程度です。「No assertion criteria provided」(0つ星)は慎重に扱ってください。

VUS(意義不明のバリアント)を疾患の原因として報告しないでください。VUSは分類に十分なエビデンスがないことを意味し、「おそらく病原性」という意味ではありません。デフォルトでは20件のバリアントが返されます。遺伝子内の病原性バリアントの全体像を把握するには、total_countを確認してください。

ClinVar_get_variant_details:variant_id(必須)。特定のClinVarバリアントの詳細情報を取得します。

ClinVar_get_clinical_significance:variant_id(必須)。提出者数を含む臨床的意義の概要を返します。


フェーズ 6:疫学

Orphanet_get_epidemiology:orpha_code(文字列、必須)。有病率の推定値を種類(有病率、年間発生率、出生有病率)、地域、情報源別に返します。

有病率が2,000人に1人未満の場合、EU/米国の規制上の「希少疾患」の基準に該当します。10万人に1人未満はまれな疾患、100万人に1人未満は超希少疾患です。こうした違いは、臨床試験の実施可能性、自然歴研究の設計、規制上の経路に関する検討において重要です。

有病率データは、地域によって大きく異なる場合があり(創始者効果、近親婚の割合、把握状況など)、古くなっていることもあります。有病率の数値を引用する際は、必ず対象地域と情報源の年を示してください。

Orphanet_get_natural_history:(フェーズ1でも有用です)発症年齢と遺伝形式を返します。患者へのカウンセリングや家族のリスク評価に不可欠な情報です。


フェーズ 6b:代謝物と疾患の関連(IEM)

先天性代謝異常症(IEM)では、HMDBを使用して代謝物の蓄積と疾患を関連付けます。

HMDB_search:query(文字列、必須。化合物名または化学式)。代謝物のHMDB IDを検索します。

HMDB_get_metabolite:hmdb_id(文字列)またはcompound_name(文字列)。下流の経路解析に使用する、データベース間のID(KEGG、ChEBI、PubChem)を返します。

HMDB_get_diseases:hmdb_id(文字列)またはcompound_name(文字列)。CTDに基づく疾患との関連を返します。どの疾患が代謝物の蓄積に関連しているかを確認する際に使用します。


フェーズ 7:臨床試験

search_clinical_trials:query_term(文字列、必須)、condition(文字列、任意)、intervention(文字列、任意)、pageSize(整数、任意。デフォルトは10)。

希少疾患では、観察的な自然歴研究であっても有用です。疾患の進行を特徴づけ、バイオマーカーを特定できます。まず参加者を募集している試験、次に参加者募集を行っていない試験、最後に最近完了した試験を優先してください。臨床的に最も関連性が高いのは第2~3相の試験です。total_countは研究が存在していてもNoneになる場合があるため、len(studies) > 0を確認してください。


フェーズ 8:文献

EuropePMC_search_articles:query(文字列、必須。例:「Marfan syndrome genetics」)、limit(整数、任意。デフォルトは10)。

遺伝学に関する文献を検索するには、疾患名に「genetics」または「gene」を加えてください。特定のバリアントに関するエビデンスを調べるには、遺伝子記号とバリアントを加えてください。遺伝子型と表現型の相関を調べるには、「genotype phenotype」を加えてください。記事は新しいものから順に返されます。タイトルにHTMLエンティティが含まれている場合は、表示前に取り除いてください。


エビデンスの評価

各フェーズの情報を統合する際は、確信度を評価してください。

ティア 1(確定的):複数の提出者による GenCC の「Definitive」、専門家レビュー済みの ClinVar 病原性バリアント、ならびに「Disease-causing germline mutation(s) in」と評価された Orphanet の関連付け。例:FBN1 がマルファン症候群の原因であること。

ティア 2(強い):GenCC の「Strong」、単一提出者による ClinVar 病原性バリアント、ならびに Orphanet の疾患原因データ。エビデンスは強いものの、再現性はやや低くなります。

ティア 3(中程度):GenCC の「Limited」または「Moderate」、ClinVar の VUS、ならびに Orphanet の候補遺伝子。さらなる検証が必要な、新たに見出された関連付けです。

ティア 4(暫定的):文献のみ、動物モデル、または GenCC/ClinVar のデータがない場合。独立した再現性の確認がない症例研究由来の遺伝子が該当します。


フォールバック戦略

主要なツールが失敗するか、結果が返されない場合:

  • 疾患検索:Orphanet_search_diseases が失敗した場合は、Orphanet_search_diseases を試してください
  • 遺伝子 → 疾患:GenCC_search_gene は Orphanet_get_gene_diseases より幅広い範囲をカバーします
  • 疾患 → 遺伝子:Orphanet_get_genes を補完するものとして GenCC_search_disease を使用してください
  • 遺伝子と疾患の関連の妥当性:GenCC に登録がない場合は、Orphanet の AssociationType と SourceOfValidation PMIDs を使用してください
  • 病原性バリアント:ClinVar に登録がない場合は、EuropePMC で文献を検索してください
  • 疫学:Orphanet にデータがない場合は、有病率の研究論文を検索してください

ワークフローの例

希少疾患の総合的な調査(疾患名から開始)
1. Orphanet_search_diseases(name="Marfan syndrome") -> ORPHAcode 558
2. Orphanet_get_disease(orpha_code="558") -> definition, synonyms
3. Orphanet_get_phenotypes(orpha_code="558") -> HPO phenotypes with frequencies
4. Orphanet_get_genes(orpha_code="558") -> FBN1 (disease-causing), TGFBR1, TGFBR2
5. GenCC_search_gene(gene_symbol="FBN1") -> Definitive from ClinGen, Ambry, Invitae
6. ClinVar_search_variants(gene="FBN1", clinical_significance="Pathogenic", max_results=50)
7. Orphanet_get_epidemiology(orpha_code="558") -> 1-5/10,000 worldwide
8. search_clinical_trials(query_term="Marfan syndrome", pageSize=10)
9. EuropePMC_search_articles(query="Marfan syndrome genetics", limit=5)
遺伝子優先の調査(遺伝子から開始)
1. Orphanet_get_gene_diseases(gene_symbol="FBN1") -> all associated diseases
2. GenCC_search_gene(gene_symbol="FBN1") -> validity classifications per disease
3. For top disease: Orphanet_get_phenotypes + Orphanet_get_epidemiology
4. ClinVar_search_variants(gene="FBN1", clinical_significance="Pathogenic")

避けるべきよくある間違い

  • GenCC_search_disease で disease_title を使う:代わりに disease を使用してください
  • Orphanet_search_diseases で query を使う:代わりに name を使用してください
  • ClinVar_search_variants で query を使う:代わりに gene、condition、または variant_id を使用してください
  • Orphanet の検索結果の最初の項目が正しい疾患だと思い込む:必ずサブタイプを確認してください
  • ClinVar の VUS を病原性のエビデンスとして扱う
  • Orphanet の「Candidate gene tested in」を、確定した原因遺伝子として扱う
  • GenCC の提出者数を無視する:単一提出者による「Definitive」は、複数提出者の合意よりエビデンスが弱いです

制限事項

  • Orphanet が対象とするのは希少疾患のみです。一般的な疾患の登録は最小限の場合があります
  • ClinVar は既定で最大 20 件のバリアントを返します。ページ分割による取得には制限があります
  • GenCC の登録は最新の文献に追いついていない場合があります
  • 超希少疾患の中には、GenCC の登録、ClinVar のバリアント、臨床試験がいずれもないものがあります

完全性チェックリスト

  • 疾患を正しい ORPHA コードに特定した(サブタイプや包括的な疾患ではない)
  • 関連付けの種類とともに原因遺伝子を特定し、GenCC による妥当性を評価した
  • ClinVar のバリアントをレビュー状況とともに確認した。VUS を病原性として報告していない
  • バリアントを解釈する前に、遺伝形式を確認した
  • 疫学、臨床試験、文献を含めた
  • ティア(T1~T4)でエビデンスを評価した

コメント