Enrichr MCP Server について
Enrichr MCP Server は、生命科学研究者向けに Enrichr の遺伝子セット富化解析を利用可能にします。最新のライブラリを検索し、カスタム背景遺伝子セットに対応して、有意な結果をテキストと構造化形式で返します。
主な機能
- 01Enrichr ライブラリ横断の富化解析
- 02研究内容に基づくライブラリ提案
- 03カスタム背景補正
- 04テキストと構造化 JSON の返却
- 05TSV への結果出力
- 06詳細・簡潔・最小形式の選択
活用シーン
- 01遺伝子リストの富化項目を分析
- 02研究課題に合うライブラリを選択
- 03アッセイ対象遺伝子を背景にして補正
- 04後続処理向けに結果を保存
MCP 対応
MCP クライアントに解析とライブラリ検索のツール、ライブラリカタログのリソース、ガイド付き解析プロンプトを提供します。Enrichr API を利用し、統計的に有意な結果を返します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
2掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| genes | array | はい | 解析する遺伝子シンボルのリスト(例:['TP53', 'BRCA1', 'EGFR']) |
| libraries | array | いいえ | クエリ対象の Enrichr ライブラリ。デフォルトは設定済みのライブラリです。有効な名前を調べるには suggest_libraries を使用してください。 |
| background | array | いいえ | 全ゲノムの代わりに検定に使用するカスタム背景遺伝子セット(例:実験で検出されたすべての遺伝子)。遺伝子リストが限定された母集団(発現遺伝子、ターゲットパネル)に由来する場合は、全ゲノムのデフォルトが有意性を過大評価するため、強く推奨されます。遺伝子リスト自体だけでなく、そのリストが抽出された母集団全体を含める必要があります。 |
| description | string | いいえ | 遺伝子リストの任意の説明 |
| maxTerms | integer | いいえ | ライブラリごとに表示する用語の最大数 |
| format | enum | いいえ | 出力形式detailed | compact | minimal |
| outputFile | string | いいえ | 完全な結果を TSV ファイルとして保存するパス |
詳細
Enrichr MCP サーバー
Enrichr API を使用して、遺伝子セット濃縮解析を提供する Model Context Protocol(MCP)サーバーです。このサーバーは Enrichr で利用可能なすべての遺伝子セットライブラリに対応しており、LLM ツールが解釈できるよう、統計的に有意な結果(corrected-$p$ < 0.05)のみを返します。
インストール
Claude Desktop
最新の MCPB バンドル(.mcpb ファイル)をダウンロードし、☰ (top left) -> File -> Settings からインストールします。その後、Settings ウィンドウにファイルをドラッグ&ドロップします。
Cursor / VS Code
以下のボタンを使用すると、デフォルト設定でインストールできます。
Claude Code
claude mcp add enrichr-mcp-server -- npx -y enrichr-mcp-server
または、Claude Code プラグインとしてインストールします。
/plugin install enrichr-mcp-server
Smithery
npx -y @smithery/cli install enrichr-mcp-server --client claude
手動設定
MCP クライアントの設定ファイル(例:.cursor/mcp.json)に追加します。
{
"mcpServers": {
"enrichr-server": {
"command": "npx",
"args": ["-y", "enrichr-mcp-server"]
}
}
}
機能
- 2 つのツール:濃縮解析を実行する
enrichr_analysisと、関連ライブラリを見つけるsuggest_libraries - カスタム背景補正:全ゲノムではなく、独自の背景遺伝子セット(例:アッセイで発現した遺伝子のみ)を使って検定できます
- 最新のライブラリカタログ:ライブラリ一覧は実行時に Enrichr から取得されるため、新しいリリースは自動的に反映され、提供終了したライブラリが候補に表示されることはありません
- ガイド付きワークフロー:解釈まで含むエンドツーエンド解析のための
enrichment_analysisプロンプト - 22 のライブラリカテゴリ:すべてのライブラリをプログラムでカテゴリに分類します(パスウェイ、がん、キナーゼなど)
- 並列ライブラリクエリ:すべてのライブラリを並列にクエリし、複数データベースを高速に解析します
- 構造化出力:人が読みやすいテキストと、プログラムで利用できる構造化 JSON の両方を返します
- 設定可能な出力形式:詳細、コンパクト、または最小限の形式を選び、トークン使用量を管理できます
- TSV エクスポート:すべての結果を TSV ファイルに保存します
ツール
suggest_libraries
研究課題に最も関連性の高いEnrichrライブラリを見つけます。enrichr_analysisを実行する前に使用し、特定のトピックに最適なライブラリを選んでください。Enrichrの最新のライブラリカタログを検索するため、Enrichrが廃止したライブラリを推奨することはありません。関連性が同程度のライブラリが複数ある場合は、新しいバージョンのものが上位に表示されます(GO_Biological_Process_2026が..._2021より上位)。
パラメーター:
query(必須):研究の背景(例:「DNA修復」、「乳がんの薬剤耐性」)category(任意):カテゴリで絞り込みます(例:cancer、pathways、kinases)maxResults(任意):返す結果の最大数(既定値:10、最大:50)
戻り値:
- 関連性スコア、カテゴリ、説明を含む、ライブラリのランキング一覧
- 提案の配列を含む構造化JSON
enrichr_analysis
複数のEnrichrライブラリでエンリッチメント解析を並列に実行します。
パラメーター:
genes(必須):遺伝子シンボルの配列(例:["TP53", "BRCA1", "EGFR"]) — 最低2個libraries(任意):照会するEnrichrライブラリ名の配列(既定では設定済みのライブラリを使用)background(任意):カスタム背景遺伝子セット — 最低20個。以下を参照してください。description(任意):遺伝子リストの説明maxTerms(任意):ライブラリごとの用語の最大数(既定値:50)format(任意):出力形式:detailed、compact、minimaloutputFile(任意):完全な結果をTSVファイルとして保存するパス
戻り値:
- 有意な用語(名前、p値、オッズ比、統合スコア、重複する遺伝子)を整形したテキストコンテンツ
- 各ライブラリの
backgroundCorrectedを含む、全結果データの構造化JSON出力
背景補正
既定では、Enrichrは遺伝子リストを全ゲノムと照合して検定します。遺伝子が限定された対象群(組織で発現している遺伝子のみ、またはターゲットパネルなど)から選ばれている場合、全ゲノムを使う既定の設定では有意性が過大評価され、何桁もずれることがよくあります。リストの抽出元となった対象群をbackgroundに指定してください。
{
"genes": ["TP53", "BRCA1", "ATM", "CHEK2"],
"background": ["TP53", "BRCA1", "ATM", "CHEK2", "ACTB", "GAPDH", "..."],
"libraries": ["GO_Biological_Process_2026"]
}
この違いは単なる見かけ上のものではありません。DNA損傷関連の16遺伝子リストでは、最上位のGO用語の調整済みp値が、全ゲノムを使った場合の1.2e-16から、48遺伝子の背景を使った場合の1.8e-5に変わります。また、「有意」とされる用語の数は359から10に減少します。
背景補正はEnrichrの別サービスであるspeedrichrを使って実行されます。このサービスは断続的に利用できなくなります。失敗時には再試行されますが、解消しない場合はライブラリが補正なしの全ゲノムp値にフォールバックし、結果にはbackgroundCorrected: falseが設定され、テキスト出力に大きくWARNINGが表示されます。フォールバックした結果が背景補正済みとして提示されることはありません。
リソース
| URI | 説明 |
|---|---|
enrichr://libraries | カテゴリ別に整理されたライブラリの完全なカタログ |
enrichr://libraries/{category} | 指定したカテゴリのライブラリ(例:enrichr://libraries/cancer) |
プロンプト
enrichment_analysis
遺伝子セットエンリッチメント解析のガイド付きワークフローです。遺伝子リストと任意の研究背景を受け取り、ライブラリの選定、解析、解釈の手順を案内します。
引数:
genes(必須):遺伝子シンボル。カンマまたは改行で区切ります。context(任意):ライブラリ選定のための研究背景(指定するとsuggest_librariesステップを実行します)
ライブラリのカテゴリー
200 以上のライブラリは、22 のカテゴリーに分類されています。
| カテゴリー | 例 |
|---|---|
transcription | ChEA_2022, ENCODE_TF_ChIP-seq_2015, TRANSFAC_and_JASPAR_PWMs |
pathways | KEGG_2021_Human, Reactome_2022, WikiPathways_2023_Human, MSigDB_Hallmark_2020 |
ontologies | GO_Biological_Process_2025, GO_Molecular_Function_2025, Human_Phenotype_Ontology |
diseases_drugs | GWAS_Catalog_2023, DrugBank_2022, OMIM_Disease, DisGeNET |
cell_types | GTEx_Tissue_Expression_Up, CellMarker_2024, Tabula_Sapiens |
microRNAs | TargetScan_microRNA_2017, miRTarBase_2022, MiRDB_2019 |
epigenetics | Epigenomics_Roadmap_HM_ChIP-seq, JASPAR_2022, Cistrome_2023 |
kinases | KEA_2015, PhosphoSitePlus_2023, PTMsigDB_2023 |
gene_perturbations | LINCS_L1000_CRISPR_KO_Consensus_Sigs, CRISPR_GenomeWide_2023 |
metabolomics | HMDB_Metabolites, Metabolomics_Workbench_2023, SMPDB_2023 |
aging | Aging_Perturbations_from_GEO_down, GenAge_2023, Longevity_Map_2023 |
protein_families | InterPro_Domains_2019, Pfam_Domains_2019, UniProt_Keywords_2023 |
computational | Enrichr_Submissions_TF-Gene_Coocurrence, ARCHS4_TF_Coexp |
literature | Rummagene_signatures, AutoRIF, GeneRIF |
cancer | COSMIC_Cancer_Gene_Census, TCGA_Mutations_2023, OncoKB_2023, GDSC_2023 |
single_cell | Human_Cell_Landscape, scRNAseq_Datasets_2023, SingleCellSignatures_2023 |
chromosome | Chromosome_Location, Chromosome_Location_hg19 |
protein_interactions | STRING_Interactions_2023, BioGRID_2023, IntAct_2023, MINT_2023 |
structural | PDB_Structural_Annotations, AlphaFold_2023 |
immunology | ImmuneSigDB, ImmPort_2023, Immunological_Signatures_MSigDB |
development | ESCAPE, Developmental_Signatures_2023 |
other | MSigDB_Computational, HGNC_Gene_Families, Open_Targets_2023 |
すべてのカテゴリーを対象に検索するには suggest_libraries を使用するか、任意のカテゴリーの全リストを確認するには enrichr://libraries/{category} を読み取ってください。
設定
コマンドラインオプション
| オプション | 短縮形 | 説明 | デフォルト |
|---|---|---|---|
--libraries <libs> | -l | クエリ対象の Enrichr ライブラリをカンマ区切りで指定します | pop |
--max-terms <num> | -m | ライブラリごとに表示する用語の最大数です | 50 |
--format <format> | -f | 出力形式:detailed、compact、minimal | detailed |
--output <file> | -o | 完全な結果を TSV ファイルに保存します | (none) |
--compact | -c | コンパクト形式を使用します(--format compact と同じ) | (flag) |
--minimal | 最小形式を使用します(--format minimal と同じ) | (flag) | |
--help | -h | ヘルプメッセージを表示します | (flag) |
形式オプション
detailed:p 値、オッズ比、遺伝子リストを含む詳細情報(デフォルト)compact:用語名 + p 値 + 遺伝子数(トークンを約 50% 節約)minimal:用語名 + p 値のみ(トークンを約 80% 節約)
環境変数
| 変数 | 説明 | 例 |
|---|---|---|
ENRICHR_LIBRARIES | ライブラリをカンマ区切りで指定します | GO_Biological_Process_2025,KEGG_2021_Human |
ENRICHR_MAX_TERMS | ライブラリごとの用語の最大数です | 20 |
ENRICHR_FORMAT | 出力形式です | compact |
ENRICHR_OUTPUT_FILE | TSV 出力ファイルのパスです | /tmp/enrichr_results.tsv |
注:CLI 引数は環境変数より優先されます。
複数のサーバーインスタンス
研究のコンテキストに応じて、異なるインスタンスを設定します。
{
"mcpServers": {
"enrichr-pathways": {
"command": "npx",
"args": ["-y", "enrichr-mcp-server", "-l", "GO_Biological_Process_2025,KEGG_2021_Human,Reactome_2022"]
},
"enrichr-disease": {
"command": "npx",
"args": ["-y", "enrichr-mcp-server", "-l", "Human_Phenotype_Ontology,OMIM_Disease,ClinVar_2019"]
}
}
}
人気のライブラリ(デフォルト)
デフォルトの -l pop 設定を使用する場合:
| ライブラリ | 説明 |
|---|---|
GO_Biological_Process_2026 | 最新の Gene Ontology 生物学的プロセス用語です。 |
KEGG_2026 | 最新の KEGG 代謝経路およびシグナル伝達経路です。 |
Reactome_Pathways_2024 | Reactome の最新リリースです。専門家がキュレーションし、査読を経た経路を収録しています。 |
MSigDB_Hallmark_2020 | 明確に定義された生物学的状態およびプロセスを表す Hallmark 遺伝子セットです。 |
ChEA_2022 | 転写因子と遺伝子の相互作用を特定する ChIP-seq 実験です。 |
GWAS_Catalog_2025 | 遺伝子と形質を関連付ける、ゲノムワイド関連解析の結果です。 |
Human_Phenotype_Ontology | ヒトの疾患に関連する表現型異常を標準化した語彙です。 |
PPI_Hub_Proteins | タンパク質間相互作用ネットワーク内で高度に接続されたハブタンパク質です。 |
DGIdb_Drug_Targets_2024 | Drug Gene Interaction Database の薬物と遺伝子の相互作用です。 |
CellMarker_2024 | ヒトおよびマウスの細胞型マーカーを手動でキュレーションしたものです。 |
API の詳細
このサーバーは Enrichr API を使用します。
- リストの追加:
https://maayanlab.cloud/Enrichr/addList - エンリッチメント:
https://maayanlab.cloud/Enrichr/enrich - ライブラリカタログ:
https://maayanlab.cloud/Enrichr/datasetStatistics— 実行時に取得して24時間キャッシュするため、ライブラリ一覧が古くなることはありません。 - バックグラウンド補正済みエンリッチメント:
https://maayanlab.cloud/speedrichr/api/{addList,addbackground,backgroundenrich} - 対応ライブラリ:Enrichr が現在提供しているすべてのライブラリ(執筆時点で228件)
注:ある用語とバックグラウンドの重複が完全な場合、Enrichr はオッズ比に裸の Infinity リテラルを出力します。これは有効な JSON ではありません。このサーバーはそのようなレスポンスを正しく解析しますが、生のレスポンスに対して単純に JSON.parse を実行するとエラーが発生します。
開発
npm run build # Build TypeScript
npm test # Run tests (unit + integration + MCP protocol)
npm run test:watch # Run tests in watch mode
npm run watch # Auto-rebuild on file changes
npm run inspector # Debug with MCP inspector
要件
- Node.js 18+
- Enrichr API にアクセスするためのインターネット接続
ライセンス
MIT
参考文献
-
Chen EY, Tan CM, Kou Y, Duan Q, Wang Z, Meirelles GV, Clark NR, Ma'ayan A. Enrichr: interactive and collaborative HTML5 gene list enrichment analysis tool. BMC Bioinformatics. 2013; 128(14).
-
Kuleshov MV, Jones MR, Rouillard AD, Fernandez NF, Duan Q, Wang Z, Koplev S, Jenkins SL, Jagodnik KM, Lachmann A, McDermott MG, Monteiro CD, Gundersen GW, Ma'ayan A. Enrichr: a comprehensive gene set enrichment analysis web server 2016 update. Nucleic Acids Research. 2016; gkw377.
-
Xie Z, Bailey A, Kuleshov MV, Clarke DJB., Evangelista JE, Jenkins SL, Lachmann A, Wojciechowicz ML, Kropiwnicki E, Jagodnik KM, Jeon M, & Ma'ayan A. Gene set knowledge discovery with Enrichr. Current Protocols, 1, e90. 2021. doi: 10.1002/cpz1.90
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。