mcpField
T
tooluniverse-adverse-event-detection

tooluniverse-adverse-event-detection

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

tooluniverse-adverse-event-detection について

薬剤安全性の研究者や臨床・規制分析担当者向けの ToolUniverse スキルです。FAERS の不均衡分析に添付文書、作用機序、文献の根拠を組み合わせ、有害事象シグナルを評価・比較します。

主な機能

  1. 01PRR、ROR、ICによるFAERSシグナル分析
  2. 02FDAラベルと文献の根拠確認
  3. 03作用機序の検討と交絡要因の確認
  4. 04薬剤間の安全性比較
  5. 05安全性シグナルスコアと根拠の等級付け

活用シーン

  1. 01市販後の薬剤安全性シグナルのスクリーニング
  2. 02事象の報告率が予測を上回るかの評価
  3. 03同じ薬剤クラス内の有害事象の比較

MCP 対応

このスキルはToolUniverseのツールを使い、FAERS、FDAラベル、作用機序、相互作用、文献のデータを取得して分析します。

インストール

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

$npx skills add https://github.com/mims-harvard/tooluniverse --skill tooluniverse-adverse-event-detection

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

同梱ファイル

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

PHASE_DETAILS.md
QUICK_START.md
REPORT_TEMPLATE.md
test_adverse_event_detection.py
TOOL_REFERENCE.md

詳細

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

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

有害薬物事象シグナルの検出と分析

FAERS の不均衡分析、FDA ラベルのマイニング、作用機序に基づく予測、文献エビデンスを用いて、有害薬物事象シグナルを検出、定量化し、文脈に沿って評価する自動パイプラインです。規制および臨床上の意思決定に向けて、定量的な安全性シグナルスコア(0-100)を算出します。

主要原則:

  1. シグナルの定量化を最優先 - すべての有害事象について、信頼区間付きの PRR/ROR/IC を算出する必要があります
  2. 重篤事象を優先 - 死亡、入院、生命を脅かす事象を常に最初に分析します
  3. 複数ソースによる三角測量 - FAERS + FDA ラベル + OpenTargets + DrugBank + 文献
  4. 文脈を考慮した評価 - 薬剤固有のシグナル、クラス全体のシグナル、交絡によるシグナルを区別します
  5. レポートを先に作成 - まずレポートファイルを作成し、その後、段階的に更新します
  6. エビデンスのグレード付けは必須 - T1(規制情報/枠付き警告)から T4(計算によるもの)まで
  7. 英語でクエリ - ツール呼び出しでは常に英語の薬剤名を使用し、ユーザーの言語で回答します

推論戦略 — ここから始める: まずシグナルを確認します。予想を上回って報告された有害事象は何でしょうか?(PRR >= 2.0、N >= 3、下限 CI > 1.0 が閾値です)。次に、以下の3つの質問を順番に検討します。

  1. 生物学的に妥当か? 薬剤の作用機序と標的を踏まえ、この有害事象は理にかなっていますか?オフターゲット作用を持つキナーゼ阻害薬が心臓事象を引き起こすのは妥当ですが、外用薬が全身毒性を引き起こす場合は、より慎重な検討が必要です。推測せず、調べてください — 妥当性を断定する前に、OpenTargets_get_drug_mechanisms_of_action_by_chemblId と drugbank_get_targets_by_drug_name_or_drugbank_id を使って標的を確認してください。
  2. 発現時期に一貫性があるか? 急性反応(数時間から数日以内)は、免疫機序または直接的な薬理作用を示唆します。遅発性反応(数週間から数か月後)は、累積毒性または特異体質性反応を示唆します。FAERS の発現までの時間の分布を確認してください。
  3. 交絡因子で説明できる可能性はあるか? この薬剤を服用している患者は、基礎疾患を有している可能性があります。一般集団ではなく、その集団における背景発生率と比較してください。クラス内のすべての薬剤で認められるクラス全体のシグナルは、分子固有の毒性ではなく、作用機序に基づく毒性を示唆します。 因果関係の評価 — Naranjo アルゴリズムによる推論: 有害事象が薬剤によって引き起こされたものか(単に関連しているだけではなく)を判断する際は、以下の手順を順に適用してください。推測せず、調べてください — 各基準について FAERS と FDA のラベルを検索します。
  4. 過去の報告はありますか? この反応について、過去に確証のある報告はありますか?FDA のラベル(FDA_get_adverse_reactions_by_drug_name)と文献(PubMed_search_articles)を確認します。ある場合は +1。
  5. 時間的な関連はありますか? 薬剤の投与後に AE が発現しましたか?想定される薬物動態ウィンドウ内(半減期の 1〜5 倍)に発現した場合は +2。発現までの時間に関するデータには FAERS_stratify_by_demographics を使用します。
  6. 休薬後の改善はありますか? 薬剤の中止後に AE は改善しましたか?陽性のデチャレンジは +1。文献から再投与/休薬に関する症例報告を探します。
  7. 再投与後の再発はありますか? 薬剤の再投与後に AE が再発しましたか?陽性のリチャレンジは +2(因果関係を示す単一の証拠として最も強力です)。
  8. 他に原因はありますか? 基礎疾患、併用薬、またはその他の要因で AE を説明できますか?相互作用する薬剤については drugbank_get_drug_interactions_by_drug_name_or_id を確認します。
  9. 用量反応はありますか? 用量の増加に伴って反応が悪化したり、用量の減少に伴って改善したりしましたか?用量依存性の AE は、標的に対する毒性を示唆します。
  10. 薬物濃度は確認されていますか? 体液中に毒性濃度の薬剤が検出されましたか?
  • スコア:確実(>=9)、可能性が高い(5-8)、可能性あり(1-4)、可能性が低い(<=0)。
  • 個々の患者データがなくても、集計された FAERS シグナル、ラベルの証拠、機序上の妥当性から因果関係を推定できます。

参照ファイル(このディレクトリ内):

  • PHASE_DETAILS.md - 各フェーズの詳細なツール呼び出し、コード例、出力テンプレート
  • REPORT_TEMPLATE.md - レポートの完全なテンプレートと完全性チェックリスト
  • TOOL_REFERENCE.md - ツールのパラメーターリファレンスとフォールバックチェーン
  • QUICK_START.md - 簡単な使用例と一般的な薬剤名

使用する場面

ユーザーから以下のような依頼があった場合に適用します:

  • 「[drug] の安全性シグナルは何ですか?」
  • 「[drug] の有害事象を検出してください」
  • 「[drug] は [adverse event] と関連していますか?」
  • 「[drug] の FAERS シグナルは何ですか?」
  • 「[adverse event] について、[drug A] と [drug B] の安全性を比較してください」
  • 「[drug] の重篤な有害事象は何ですか?」
  • 「[drug] について、新たな安全性シグナルはありますか?」
  • 「[drug] の市販後調査レポート」
  • 「[drug] のファーマコビジランスによるシグナル検出」

tooluniverse-pharmacovigilance との違い:このスキルは、統計的厳密性を伴う不均衡分析(PRR、ROR、IC)を用いたシグナルの検出と定量化に特化しており、定量的な安全性シグナルスコア(0-100)を生成し、薬剤クラス間の比較安全性分析を実施します。


ワークフローの概要

Phase 0: Input Parsing & Drug Disambiguation
  Parse drug name, resolve to ChEMBL ID, DrugBank ID
  Identify drug class, mechanism, and approved indications
    |
Phase 1: FAERS Adverse Event Profiling
  Top adverse events by frequency
  Seriousness and outcome distributions
  Demographics (age, sex, country)
    |
Phase 2: Disproportionality Analysis (Signal Detection)
  Calculate PRR, ROR, IC with 95% CI for each AE
  Apply signal detection criteria
  Classify signal strength (Strong/Moderate/Weak/None)
    |
Phase 3: FDA Label Safety Information
  Boxed warnings, contraindications
  Warnings and precautions, adverse reactions
  Drug interactions, special populations
    |
Phase 4: Mechanism-Based Adverse Event Context
  Target-based AE prediction (OpenTargets safety)
  Off-target effects, ADMET predictions
  Drug class effects comparison
    |
Phase 5: Comparative Safety Analysis
  Compare to drugs in same class
  Identify unique vs class-wide signals
  Head-to-head disproportionality comparison
    |
Phase 6: Drug-Drug Interactions & Risk Factors
  Known DDIs causing AEs
  Pharmacogenomic risk factors (PharmGKB)
  FDA PGx biomarkers
    |
Phase 7: Literature Evidence
  PubMed safety studies, case reports
  OpenAlex citation analysis
  Preprint emerging signals (EuropePMC)
    |
Phase 8: Risk Assessment & Safety Signal Score
  Calculate Safety Signal Score (0-100)
  Evidence grading (T1-T4) for each signal
  Clinical significance assessment
    |
Phase 9: Report Synthesis & Recommendations
  Monitoring recommendations
  Risk mitigation strategies
  Completeness checklist

フェーズの概要

フェーズ 0:入力の解析と薬剤の曖昧さの解消

薬剤名を ChEMBL ID と DrugBank ID に対応付けます。作用機序、ブラックボックス警告の有無、標的、承認済み適応症を取得します。

  • ツール:OpenTargets_get_drug_chembId_by_generic_name、OpenTargets_get_drug_mechanisms_of_action_by_chemblId、OpenTargets_get_drug_blackbox_status_by_chembl_ID、drugbank_get_safety_by_drug_name_or_drugbank_id、drugbank_get_targets_by_drug_name_or_drugbank_id、OpenTargets_get_drug_indications_by_chemblId
フェーズ 1:FAERS 有害事象のプロファイリング

FAERS を検索し、主な有害事象、重篤度の分布、転帰、人口統計、死亡関連事象を調べます。重篤な事象を種類(死亡、入院、生命を脅かす事象)で絞り込みます。MedDRA 階層のロールアップを取得します。

  • ツール:FAERS_count_reactions_by_drug_event、FAERS_count_seriousness_by_drug_event、FAERS_count_outcomes_by_drug_event、FAERS_count_patient_age_distribution、FAERS_count_death_related_by_drug、FAERS_count_reportercountry_by_drug_event、FAERS_filter_serious_events、FAERS_rollup_meddra_hierarchy
フェーズ 2:不均衡分析(シグナル検出)

重要なフェーズです。上位の有害事象(少なくとも15~20件)ごとに、95%信頼区間を含むPRR、ROR、ICを計算します。シグナルの強さを分類します。強いシグナルは人口統計学的属性で層別化します。

  • ツール:FAERS_calculate_disproportionality、FAERS_stratify_by_demographics
  • MedDRA用語レベルに関する注意:FAERS_count_reactions_by_drug_event はMedDRA最下層用語(reactionmeddraverse)で絞り込む一方、FAERS_calculate_disproportionality は基本語(Preferred Terms)を使用します。症例数は大きく異なる場合があります。生の件数ではなく、不均衡分析を常に主要なシグナル指標として使用してください。
  • シグナル基準:PRR >= 2.0 AND 下限CI > 1.0 AND N >= 3
  • 強さ:強(PRR >= 5)、中(PRR 3-5)、弱(PRR 2-3)
  • シグナル分類表の全容については、PHASE_DETAILS.md を参照してください
フェーズ 3:FDA添付文書の安全性情報

枠囲み警告、禁忌、警告・注意事項、副作用、薬物相互作用、特別な集団に関する情報を抽出します。注:セクションが存在しない場合、{error: {code: "NOT_FOUND"}} が返されるのは正常です。

  • ツール:FDA_get_boxed_warning_info_by_drug_name、FDA_get_contraindications_by_drug_name、FDA_get_warnings_by_drug_name、FDA_get_adverse_reactions_by_drug_name、FDA_get_drug_interactions_by_drug_name、FDA_get_pregnancy_or_breastfeeding_info_by_drug_name、FDA_get_geriatric_use_info_by_drug_name、FDA_get_pediatric_use_info_by_drug_name、FDA_get_pharmacogenomics_info_by_drug_name
フェーズ 4:機序に基づく有害事象の背景情報

標的の安全性プロファイル、OpenTargetsの有害事象、ADMET毒性予測(SMILESが利用可能な場合)、および薬剤の警告を取得します。

  • ツール:OpenTargets_get_target_safety_profile_by_ensemblID、OpenTargets_get_drug_adverse_events_by_chemblId、ADMETAI_predict_toxicity、ADMETAI_predict_CYP_interactions、OpenTargets_get_drug_warnings_by_chemblId
フェーズ 5:比較安全性分析

FAERS_compare_drugs を使用して、同じクラスの薬剤と直接比較します。クラス全体の有害事象を集計します。クラス共通のシグナルと薬剤固有のシグナルを特定します。

  • ツール:FAERS_compare_drugs、FAERS_count_additive_adverse_reactions、FAERS_count_additive_seriousness_classification
フェーズ 6:薬物間相互作用とリスク因子

FDA添付文書、DrugBank、DailyMedから薬物間相互作用を抽出します。薬理ゲノム学的リスク因子と用量ガイドラインをPharmGKBで検索します。FDAの薬理ゲノム学バイオマーカーを確認します。

  • ツール:FDA_get_drug_interactions_by_drug_name、drugbank_get_drug_interactions_by_drug_name_or_id、DailyMed_parse_drug_interactions、PharmGKB_search_drugs、PharmGKB_get_drug_details、PharmGKB_get_dosing_guidelines、fda_pharmacogenomic_biomarkers
フェーズ 7:文献によるエビデンス

安全性研究、症例報告、プレプリントをPubMed、OpenAlex、EuropePMCで検索します。

  • ツール:PubMed_search_articles、openalex_search_works、EuropePMC_search_articles
フェーズ 8:リスク評価と安全性シグナルスコア

4つの要素から安全性シグナルスコア(0~100)を算出します:FAERSシグナルの強さ(0~35)、重篤な有害事象(0~30)、FDA添付文書の警告(0~25)、文献エビデンス(0~10)。各シグナルをT1~T4に分類します。採点基準については、PHASE_DETAILS.md を参照してください。

フェーズ 9:レポートの統合

エグゼクティブサマリー、各フェーズの出力、モニタリングの推奨事項、リスク軽減策、患者へのカウンセリング項目、完全性チェックリストを含む包括的なMarkdownレポートを作成します。テンプレートの全容については、REPORT_TEMPLATE.md を参照してください。


エッジケース

  • FAERS報告がない場合:フェーズ1~2をスキップし、FDA添付文書、機序予測、文献を参考にします
  • ジェネリック名とブランド名:FAERSで両方を試し、OpenTargets_get_drug_chembId_by_generic_name を使用して解決します
  • 薬剤の組み合わせ:クラス全体の分析には FAERS_count_additive_adverse_reactions を使用します
  • 適応による交絡:有害事象プロファイルを治療対象の疾患と比較し、レポートに制約事項として記載します
  • 枠囲み警告のある薬剤:添付文書の警告に関するスコア要素は自動的に25/25となります。枠囲み警告の事象を優先します

コメント