tooluniverse について
ToolUniverseは、AIエージェント向けの科学研究スキルです。研究分野をまたぐツールの検索・実行や複数段階のワークフロー構成に対応し、MCP経由でClaude Desktop/Codeとも連携します。
主な機能
- 01意味検索やキーワードで科学ツールを発見
- 02標準化インターフェースでツールを実行
- 03複数段階の研究ワークフローを構成
- 04バイオインフォマティクス、化学、ゲノミクスに対応
活用シーン
- 01RNA-seq解析ツールの検索
- 02創薬パイプラインの構築
- 03科学データベースやデータセットへのアクセス
MCP 対応
`tooluniverse-smcp`コマンドを使い、MCP経由でClaude Desktop/Codeと連携します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ ovachiever/ droid-tings --skill tooluniverseインストール後、Claude Code で/tooluniverseを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/api_reference.mddomains.mdinstallation.mdtool-composition.mdtool-discovery.mdtool-execution.mdscripts/example_tool_search.pyexample_workflow.py詳細
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 uv pip install tooluniverse - MCP サーバー:
tooluniverse-smcp