mcpField
G
Gprofiler

Gprofiler

リモート
pipeworx.io科学・教育02 日前に更新
リポジトリ公式サイト

Gprofiler について

Gprofilerは、タルトゥ大学のg:Profilerを使って遺伝子リストを解析する研究者向けのMCPサーバーです。機能エンリッチメント、ID変換、種間オルソログ対応に加え、変換時の曖昧さも示します。

主な機能

  1. 01遺伝子リストの機能エンリッチメント解析
  2. 02GO、KEGG、Reactomeなどのデータソース利用
  3. 03遺伝子、タンパク質、転写産物のID変換
  4. 04種をまたぐオルソログ対応付け
  5. 05曖昧なID一致の識別

活用シーン

  1. 01遺伝子リストで濃縮された生物学的経路を特定
  2. 02IDを対象の名前空間に変換
  3. 03ヒト遺伝子を別の種に対応付け
  4. 04入力シンボルが複数レコードに一致するか確認

MCP 対応

g:Profilerの機能エンリッチメント、ID変換、オルソログ対応付けツールをMCPクライアントに提供します。stdioでローカル実行する方法と、Pipeworxゲートウェイ経由での利用方法があります。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://gateway.pipeworx.io/gprofiler/mcp
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

ツール

詳細

@pipeworx/gprofiler

GO、KEGG、Reactome、WikiPathways、TRANSFAC、 miRTarBase、CORUM、HPA、HPOを対象に遺伝子リストの機能エンリッチメント解析を行い、遺伝子/タンパク質識別子の変換や種間オルソログのマッピングも実行します — タルトゥ大学のg:Profilerを利用します。

Pipeworxの一部です — AIエージェントを1879以上の稼働中データソースに接続するMCPゲートウェイです。これは独立した非公式の統合であり、上流プロバイダーとは提携関係になく、承認も受けておらず、同プロバイダーによる公開もされていません。

ツール

  • gprofiler_enrich(organism, query[], sources?, user_threshold?, no_iea?, ordered?, domain_scope?, background?, significant?, limit?) — g:GOSt。エンリッチされた各用語について、すでに調整済みのp値(g:SCS)、用語サイズ、クエリサイズ、重複、適合率、再現率を返します。遺伝子ごとのintersectionsとオントロジーのparentsは除外されます。ペイロードの大部分を占めますが、回答で使われることはありません。
  • gprofiler_convert_ids(organism, query[], target?, numeric_namespace?) — g:Convert。遺伝子/タンパク質/転写産物/プローブの名前空間を相互に変換し、hitsForInputを報告します。これにより、曖昧なシンボルが1つの遺伝子にひそかに解決されるのではなく、曖昧なものとして示されます。
  • gprofiler_orthologs(organism, target, query[]) — Ensembl Compara経由のg:Orth。ヒトのTP53からマウスのTrp53への対応など、1対多のマッピングは統合せずに明示されます。

認証

キーは不要です。g:Profilerはプログラムから呼び出す場合に呼び出し元の識別を求めるため、このパックはpipeworx-mcp-gprofiler User-Agentを送信します。

データソース

  • POST https://biit.cs.ut.ee/gprofiler/api/gost/profile/ — エンリッチメント。
  • POST https://biit.cs.ut.ee/gprofiler/api/convert/convert/ — ID変換。
  • POST https://biit.cs.ut.ee/gprofiler/api/orth/orth/ — オルソログ。
  • ドキュメント:https://biit.cs.ut.ee/gprofiler/page/apis

注意点

生物種コードはg:Profiler独自のもので、ほかの形式は使えません。 属名の頭文字と種名全体を小文字で指定します:hsapiens、mmusculus、rnorvegicus、drerio、dmelanogaster、 celegans、scerevisiae、athalianaです。"human"と"9606"はどちらも拒否されます。これはよくある最初の失敗ですが、エラーが明確に出るのは幸いです。

遺伝子を単独の文字列として渡すと、上流で文字ごとに分割されてしまいます。 このパックは文字列を受け付け、送信前に空白/カンマ/セミコロンで分割するため、"TP53"は4件の検索失敗として処理されるのではなく、["TP53"]になります。

エンリッチメント結果が空の場合、原因は一つとは限らず、その旨をパックが示します。 有意な用語がないのは、リストのサイズが小さい場合や機能的に関連がない場合には正しい結果です。一方で、生物種コードが誤っている場合や識別子が認識されない場合にも、まったく同じ結果になります。noteフィールドには、この2つを見分けるためにgprofiler_convert_idsを使うよう案内されています。

pValueはすでに多重検定補正済みです(デフォルトではg:SCS)。再度補正しないでください。

変換結果のn_incoming > 1は、出力が複数値であるという意味ではなく、入力が複数のレコードに一致したことを示します。 hitsForInputとして提示され、ambiguousInputsにまとめられます。

大きなリストを全ソースに対してエンリッチメント解析すると、実際に時間がかかります(ミリ秒ではなく秒単位)。対象のアノテーションセットが分かっている場合は、sourcesを指定してください。

クイックスタート

MCPクライアント(Claude Desktop、Cursor、Windsurfなど)に追加します:

{
  "mcpServers": {
    "gprofiler": {
      "url": "https://gateway.pipeworx.io/gprofiler/mcp"
    }
  }
}
このエンドポイントが実際に提供するもの

https://gateway.pipeworx.io/gprofiler/mcp の tools/list は、上の表にあるツールに加えて、共有 Pipeworx メタツール(ask_pipeworx、 discover_tools、search_within、remember/recall など、ゲートウェイ全体で利用できるツール群)も返します。そのため、表示されるツール数はこの表より多くなります。現在、単一パックのエンドポイントには、そのパック独自のツールに加えて、共有ツールが約 30 個表示されます。接続の initialize レスポンスに正確な範囲が記載されており、その日の状況を確認する際の確かな情報源です。

これは意図的な仕様であり、偶然に多重化されているわけではありません。メタツールを使うことで、このパックでは対応できない質問にも、カタログ全体を横断して処理する ask_pipeworx を介して回答できるため、2 つ目の MCP サーバーを追加する必要がありません。現在、メタツールなしでパックのエンドポイントをマウントする方法はありません。追加のスキーマによるコンテキスト消費がルーティングの利点を上回る場合は、複数のパックのエンドポイントではなく、フルゲートウェイに一度だけ接続してください。

または、Pipeworx フルゲートウェイに接続して、このパックだけでなく、すべてのパックのツールを直接一覧表示できます。

{
  "mcpServers": {
    "pipeworx": {
      "url": "https://gateway.pipeworx.io/mcp"
    }
  }
}

どちらの URL も、同じゲートウェイと 1879 以上のデータソースに接続します。違いは、どのパックのツールが直接一覧表示されるかだけです。どちらの URL からも、ask_pipeworx を使ってすべてのツールにアクセスできます。

MCP クライアントがない場合:HTTP 経由で呼び出す

curl -X POST https://gateway.pipeworx.io/v1/tools/gprofiler_enrich \
  -H 'Content-Type: application/json' \
  -d '{"organism":"hsapiens","query":["TP53","BRCA1","BRCA2","ATM","CHEK2","PALB2"],"sources":["REAC"],"limit":5}'

最初の呼び出しではアカウントは不要です。任意のツールを確認するには、GET https://gateway.pipeworx.io/v1/tools/gprofiler_enrich を実行します。ツールを検索するには、{"query":"..."} を指定して POST https://gateway.pipeworx.io/v1/tools/search_packs を実行します。

スタンドアロン(ゲートウェイアカウント不要)

このパッケージは、ローカルの stdio MCP サーバーとしても実行できます。Pipeworx アカウントは不要で、ゲートウェイへの往復通信もありません。

{
  "mcpServers": {
    "gprofiler": {
      "command": "npx",
      "args": ["-y", "@pipeworx/mcp-gprofiler"]
    }
  }
}

または、直接実行して起動を確認できます。

npx -y @pipeworx/mcp-gprofiler

stdin/stdout 経由で MCP を通信し、このパックのツールのみを対象に initialize/tools/list/tools/call に応答します。上記のゲートウェイ接続で追加される共有メタツールはありません。同じソース、同じツールで、ask_pipeworx によるルーティングはありません。

ask_pipeworx の使用

ツールを直接呼び出す代わりに、自然な英語で質問できます。この機能は、上記のパックエンドポイントとフルゲートウェイの両方で利用できます。

ask_pipeworx({ question: "your question about Gprofiler data" })

ゲートウェイが適切なツールを選び、引数を自動で入力します。

詳細

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。