tooluniverse について
ToolUniverseは、バイオインフォマティクスや創薬などの分野で、AIエージェントが科学ツールを検索・実行・組み合わせるためのエコシステムです。600種類以上のツールを利用でき、Claude Desktop/CodeとのMCP連携にも対応します。
主な機能
- 01600種類以上の科学ツール・モデル・データセット・API
- 02自然言語・セマンティック・キーワード検索
- 03標準化されたインターフェースでのツール実行
- 04複数段階の研究ワークフロー構成
- 05バイオインフォマティクスや創薬などの分野に対応
活用シーン
- 01RNAシーケンス解析ツールの検索
- 02疾患ターゲット特定と創薬の実行
- 03科学データベースへのアクセスとデータ分析
- 04ゲノミクスや臨床研究パイプラインの構成
MCP 対応
`tooluniverse-smcp`を通じてClaude Desktop/CodeとのMCP連携に対応します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ jackspace/ claudeskillz --skill tooluniverseインストール後、Claude Code で/tooluniverseを入力して読み込まれたか確認します。
同梱ファイルSKILL.json
詳細
ToolUniverse
概要
ToolUniverse は、600 以上の科学リソースへの標準化されたアクセスを提供し、AI エージェントが研究者として機能できるようにする統合エコシステムです。このスキルを使って、バイオインフォマティクス、ケモインフォマティクス、ゲノミクス、構造生物学、プロテオミクス、創薬など、複数の研究分野にわたる科学ツールを検索、実行、組み合わせることができます。
主な機能:
- 600 以上の科学ツール、モデル、データセット、API を利用できます
- 自然言語、セマンティック検索、キーワードを使ってツールを検索できます
- 標準化された AI-Tool Interaction Protocol を通じてツールを実行できます
- 複雑な研究課題に対応する複数ステップのワークフローを構成できます
- Model Context Protocol(MCP)を通じて Claude Desktop/Code と統合できます
このスキルを使用する場面
次のような場合にこのスキルを使用します:
- 機能や分野に基づいて科学ツールを検索する場合(例:「タンパク質構造予測ツールを探す」)
- 計算生物学のワークフローを実行する場合(例:疾患標的の特定、創薬、ゲノミクス解析)
- 科学データベースにアクセスする場合(OpenTargets、PubChem、UniProt、PDB、ChEMBL、KEGG など)
- 複数ステップの研究パイプラインを構成する場合(例:標的の探索 → 構造予測 → バーチャルスクリーニング)
- バイオインフォマティクス、ケモインフォマティクス、構造生物学のタスクに取り組む場合
- 遺伝子発現、タンパク質配列、分子構造、臨床データを分析する場合
- 文献検索、パスウェイエンリッチメント、バリアントアノテーションを行う場合
- 科学研究の自動化ワークフローを構築する場合
クイックスタート
基本設定
from tooluniverse import ToolUniverse
# Initialize and load tools
tu = ToolUniverse()
tu.load_tools() # Loads 600+ scientific tools
# Discover tools
tools = tu.run({
"name": "Tool_Finder_Keyword",
"arguments": {
"description": "disease target associations",
"limit": 10
}
})
# Execute a tool
result = tu.run({
"name": "OpenTargets_get_associated_targets_by_disease_efoId",
"arguments": {"efoId": "EFO_0000537"} # Hypertension
})
Model Context Protocol(MCP)
Claude Desktop/Code との統合:
tooluniverse-smcp
コアワークフロー
1. ツールの検索
研究タスクに関連するツールを見つけます:
3 つの検索方法:
Tool_Finder- 埋め込みベースのセマンティック検索(GPU が必要)Tool_Finder_LLM- LLM ベースのセマンティック検索(GPU は不要)Tool_Finder_Keyword- 高速なキーワード検索
例:
# Search by natural language description
tools = tu.run({
"name": "Tool_Finder_LLM",
"arguments": {
"description": "Find tools for RNA sequencing differential expression analysis",
"limit": 10
}
})
# Review available tools
for tool in tools:
print(f"{tool['name']}: {tool['description']}")
詳しくは references/tool-discovery.md をご覧ください:
- 詳細な検索方法と検索戦略
- 分野ごとのキーワード候補
- ツール検索のベストプラクティス
2. ツールの実行
標準化されたインターフェースを通じて個々のツールを実行します:
例:
# Execute disease-target lookup
targets = tu.run({
"name": "OpenTargets_get_associated_targets_by_disease_efoId",
"arguments": {"efoId": "EFO_0000616"} # Breast cancer
})
# Get protein structure
structure = tu.run({
"name": "AlphaFold_get_structure",
"arguments": {"uniprot_id": "P12345"}
})
# Calculate molecular properties
properties = tu.run({
"name": "RDKit_calculate_descriptors",
"arguments": {"smiles": "CCO"} # Ethanol
})
詳しくは references/tool-execution.md をご覧ください:
- 各分野における実際の実行例
- ツールのパラメーター処理と検証
- 結果の処理とエラー処理
- 本番環境で使用する際のベストプラクティス
3. ツールの組み合わせとワークフロー
複雑な研究ワークフローに対応するため、複数のツールを組み合わせます:
創薬の例:
# 1. Find disease targets
targets = tu.run({
"name": "OpenTargets_get_associated_targets_by_disease_efoId",
"arguments": {"efoId": "EFO_0000616"}
})
# 2. Get protein structures
structures = []
for target in targets[:5]:
structure = tu.run({
"name": "AlphaFold_get_structure",
"arguments": {"uniprot_id": target['uniprot_id']}
})
structures.append(structure)
# 3. Screen compounds
hits = []
for structure in structures:
compounds = tu.run({
"name": "ZINC_virtual_screening",
"arguments": {
"structure": structure,
"library": "lead-like",
"top_n": 100
}
})
hits.extend(compounds)
# 4. Evaluate drug-likeness
drug_candidates = []
for compound in hits:
props = tu.run({
"name": "RDKit_calculate_drug_properties",
"arguments": {"smiles": compound['smiles']}
})
if props['lipinski_pass']:
drug_candidates.append(compound)
詳しくは references/tool-composition.md をご覧ください:
- 完全なワークフローの例(創薬、ゲノミクス、臨床)
- ツールを逐次・並列に組み合わせるパターン
- 出力処理フック
- ワークフローのベストプラクティス
科学分野
ToolUniverse は、主要な科学分野にわたる 600 以上のツールをサポートしています:
バイオインフォマティクス:
- 配列解析、アラインメント、BLAST
- 遺伝子発現(RNA-seq、DESeq2)
- パスウェイエンリッチメント(KEGG、Reactome、GO)
- バリアントアノテーション(VEP、ClinVar)
ケモインフォマティクス:
- 分子記述子とフィンガープリント
- 創薬とバーチャルスクリーニング
- ADMET 予測と薬物類似性
- 化学データベース(PubChem、ChEMBL、ZINC)
構造生物学:
- タンパク質構造予測(AlphaFold)
- 構造の取得(PDB)
- 結合部位の検出
- タンパク質間相互作用
プロテオミクス:
- 質量分析
- タンパク質データベース(UniProt、STRING)
- 翻訳後修飾
ゲノミクス:
- ゲノムアセンブリとアノテーション
- コピー数変異
- 臨床ゲノミクスのワークフロー
医療/臨床:
- 疾患データベース(OpenTargets、OMIM)
- 臨床試験と FDA データ
- バリアント分類
詳しくは references/domains.md をご覧ください:
- 分野の完全な分類
- 専門分野ごとのツール例
- 分野横断的な応用
- 分野ごとの検索戦略
リファレンスドキュメント
このスキルには、特定の内容について詳細な情報を提供する包括的なリファレンスファイルが含まれています。
references/installation.md- インストール、セットアップ、MCP の設定、プラットフォームとの統合references/tool-discovery.md- 検索方法、検索戦略、ツールの一覧表示references/tool-execution.md- 実行パターン、実例、エラー処理references/tool-composition.md- ワークフローの構成、複雑なパイプライン、並列実行references/domains.md- ドメイン別のツール分類、ユースケースの例references/api_reference.md- Python API ドキュメント、フック、プロトコル
ワークフロー: 特定のタスクを支援する際は、詳細な手順について該当するファイルを参照してください。たとえば、ツールを検索する場合は、検索戦略について references/tool-discovery.md を参照してください。
スクリプトの例
一般的なユースケースを示す、実行可能なサンプルスクリプトが2つあります。
scripts/example_tool_search.py - 3つすべての検索方法を紹介します。
- キーワードベースの検索
- LLM ベースの検索
- ドメインに特化した検索
- ツールの詳細情報の取得
scripts/example_workflow.py - ワークフローの完全な例です。
- 創薬パイプライン(疾患 → 標的 → 構造 → スクリーニング → 候補)
- ゲノミクス解析(発現データ → 差次的解析 → 経路)
例を実行して、一般的な使用パターンとワークフローの構成を理解してください。
ベストプラクティス
-
ツールの検索:
- 幅広く検索してから、結果に基づいて絞り込みます
- 既知の用語ですばやく検索するには
Tool_Finder_Keywordを使用します - 複雑な意味検索には
Tool_Finder_LLMを使用します - 適切な
limitパラメーターを設定します(デフォルト:10)
-
ツールの実行:
- 実行前に必ずツールのパラメーターを確認します
- 本番環境のワークフローではエラー処理を実装します
- 入力データの形式(SMILES、UniProt ID、遺伝子記号)を検証します
- 結果の型と構造を確認します
-
ワークフローの構成:
- ワークフロー全体を構成する前に、各ステップを個別にテストします
- 長時間のワークフローにはチェックポイントを実装します
- リモート API のレート制限を考慮します
- ツールが互いに独立している場合は、並列実行を使用します
-
統合:
- ToolUniverse は一度だけ初期化し、インスタンスを再利用します
- 起動時に
load_tools()を一度だけ呼び出します - よく使用するツール情報をキャッシュします
- デバッグ用にログ記録を有効にします
主要な用語
- ツール:ToolUniverse を通じてアクセスできる科学リソース(モデル、データセット、API、パッケージ)
- ツール検索:検索方法(Finder、LLM、Keyword)を使って関連するツールを見つけること
- ツール実行:
tu.run()を介して特定の引数でツールを実行すること - ツール構成:複数のツールを連結して複数ステップのワークフローを作成すること
- MCP:Claude Desktop/Code と統合するための Model Context Protocol
- AI-Tool Interaction Protocol:LLM とツールの通信のための標準化されたインターフェース
リソース
- 公式ウェブサイト:https://aiscientist.tools
- GitHub:https://github.com/mims-harvard/ToolUniverse
- ドキュメント:https://zitniklab.hms.harvard.edu/ToolUniverse/
- インストール:
uv pip install tooluniverse - MCP サーバー:
tooluniverse-smcp