🧠 OSDR MCP Server + Agents について
NASA Open Science Data Repository(OSDR)のデータを取得、分析、要約する MCP サーバーとエージェントのサンプル集です。短い要約から、複数エージェントによる RNA 分析とレポート作成までのワークフローを含みます。
主な機能
- 01OSDR データセットのメタデータ取得
- 02生物種による研究の絞り込み
- 03RNA カウントデータのダウンロード
- 04棒グラフと Markdown レポートの作成
- 05LLM バックエンドと MCP 接続の設定
活用シーン
- 01OSDR データセットのメタデータ取得
- 02特定の生物種に関連する研究の検索
- 03RNA カウントの分析とレポート作成
MCP 対応
カスタム MCP サーバーは、OSDR のメタデータやデータ処理用ツールを公開し、RNA 分析ツールも備えています。サンプルのエージェントは公式の fetch および filesystem MCP サーバーにも接続します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
🧠 OSDR MCP サーバー + エージェント
このリポジトリでは、NASA の Open Science Data Repository(OSDR)とやり取りするためのカスタムツールと MCP エージェントを統合する方法を紹介します。Model Context Protocol(MCP)を使用して、生物学データを取得、分析、要約するエージェントのワークフロー例を含んでいます。
📦 内容
osdr_mcp/
OSDR データとやり取りするためのツールを公開するカスタム MCP サーバーです。
osdr_fetch_metadata:指定した OSDR データセットのメタデータを取得しますosdr_find_by_organism:生物種で研究を絞り込みます- RNA 分析などの追加ツールは
osdr_viz_toolsにあります
first_example/
2 つの公式 MCP サーバーを使用するシンプルなエージェントです。
mcp-server-fetch(ヘッドレスブラウザー)mcp-server-filesystem
このエージェントは情報を収集し、ツイートの文字数に収まる要約を生成します。
second_example/
first_example と同様ですが、osdr_mcp/main_simple.py で定義されたカスタム MCP サーバーに接続します。OSDR メタデータ取得ツールのような、ドメイン固有のツールを組み込む方法を紹介します。
third_example/
複数のエージェントを使用する完全なワークフローです。
- 取得エージェント – OSDR の研究メタデータを取得します
- 定量分析エージェント – RNA カウントデータをダウンロードし、棒グラフを作成します
- 要約作成エージェント – 分析を要約した Markdown レポートを生成します
カスタム MCP サーバーを使用します。
osdr_data_fetchosdr_viz_tools
⚙️ 設定
cp_agent.config.yaml ファイルでは、以下を設定します。
- LLM バックエンド(Ollama、OpenAI など)
- MCP サーバーへの接続
- ツールの利用可否
- システムプロンプト/メタデータ
🚀 はじめに
- このリポジトリをクローンします
- 依存関係をインストールします。
pip install -r requirements.txt - 例を実行します。
python first_example/main.py
または、MCP サーバーを直接起動します。
python osdr_mcp/main_simple.py
🧩 統合に関するメモ
このアーキテクチャは柔軟性を重視して設計されています。ドキュメントの Q&A、RAG 検索、カスタム分析ツールを切り替えて使用できます。ユーザー向けに統合する場合は、モード切り替えや UI のトグルが適しています。MCP 経由の Milvus ベースの RAG は、今後のロードマップに含まれています。
📚 リソース
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。