mcpField
M
medrxiv-search

medrxiv-search

github.com/yorkeccak生産性64192 回インストール3 週間前に更新
リポジトリ

medrxiv-search について

医学・健康科学分野のmedRxivプレプリントを自然言語で検索するコマンドラインスキルです。意味検索の結果として、論文全文や利用可能な図表を返し、新たな健康課題の調査に役立ちます。

主な機能

  1. 01自然言語によるセマンティック検索
  2. 02medRxivプレプリントを検索
  3. 03論文の全文コンテンツ
  4. 04利用可能な図表や画像
  5. 05CLIからJSON形式で出力

活用シーン

  1. 01新たな医学研究の調査
  2. 02臨床研究結果の検索
  3. 03疫学・公衆衛生研究の検索
  4. 04医療機器や治療法の調査

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/yorkeccak/scientific-skills --skill medrxiv-search

インストール後、Claude Code で/medrxiv-searchを入力して読み込まれたか確認します。

同梱ファイルscripts/searchscripts/search.mjs

詳細

medRxiv 検索

Valyu のセマンティック検索 API を利用した自然言語クエリで、医学および健康科学分野のプレプリントを収録する medRxiv データベース全体を検索します。

このスキルが強力な理由

  • API パラメーターの解析が不要:自然言語のクエリをそのまま渡すだけで、複雑な検索パラメーターを組み立てる必要はありません
  • セマンティック検索:キーワードの照合だけでなく、クエリの意味を理解します
  • 全文へのアクセス:要約だけでなく、論文の全文を取得します
  • 画像リンク:論文の図表や画像を含みます
  • 包括的な収録範囲:医学および健康科学分野の medRxiv プレプリントすべてにアクセスできます

要件

  1. Node.js 18 以上(組み込みの fetch を使用)
  2. Valyu API キー(https://platform.valyu.ai から取得できます。10 ドル分のクレジットが無料で付与されます)

重要:スクリプトのパス解決

このドキュメントにある scripts/search コマンドのパスは、このスキルのインストールディレクトリからの相対パスです。

コマンドを実行する前に、次の方法でスクリプトの場所を確認してください。

MEDRXIV_SCRIPT=$(find ~/.claude/plugins/cache -name "search" -path "*/medrxiv-search/*/scripts/*" -type f 2>/dev/null | head -1)

その後、すべてのコマンドで完全なパスを使用してください。

$MEDRXIV_SCRIPT "COVID-19 vaccine efficacy" 15

API キーの設定手順

検索を実行して "setup_required": true が返された場合は、次の手順に従ってください。

  1. ユーザーに API キーを尋ねます。 「medRxiv を検索するには、Valyu API キーが必要です。https://platform.valyu.ai で無料のキーを取得できます(10 ドル分のクレジット付き)。」

  2. ユーザーからキーを受け取ったら、次を実行します。

    scripts/search setup <api-key>
    
  3. 元の検索を再試行します。

このスキルの使用例

  • 学術誌に掲載される前の最新の医学研究へのアクセス
  • 臨床試験の結果とアウトカム
  • 疫学研究と公衆衛生データ
  • 医療機器と治療法の研究
  • 医療政策と医療制度に関する研究
  • 新たな健康問題に関する迅速な対応研究

出力形式

{
  "success": true,
  "type": "medrxiv_search",
  "query": "COVID-19 vaccine efficacy",
  "result_count": 10,
  "results": [
    {
      "title": "Article Title",
      "url": "https://medrxiv.org/content/...",
      "content": "Full article text with figures...",
      "source": "medrxiv",
      "relevance_score": 0.95,
      "images": ["https://example.com/figure1.jpg"]
    }
  ],
  "cost": 0.025
}

結果の処理

jq を使用する場合
# Get article titles
scripts/search "query" 10 | jq -r '.results[].title'

# Get URLs
scripts/search "query" 10 | jq -r '.results[].url'

# Extract full content
scripts/search "query" 10 | jq -r '.results[].content'

よくある使用例

臨床医学
# Find clinical research
scripts/search "heart failure treatment outcomes" 50
公衆衛生
# Search for epidemiology research
scripts/search "vaccine hesitancy determinants" 20
医用画像
# Find imaging studies
scripts/search "AI in radiology diagnosis" 15
感染症
# Search for infectious disease papers
scripts/search "antibiotic resistance mechanisms" 25

エラー処理

すべてのコマンドは success フィールドを含む JSON を返します。

{
  "success": false,
  "error": "Error message"
}

終了コード:

  • 0 - 成功
  • 1 - エラー(詳細は JSON を確認してください)

API エンドポイント

  • ベース URL:https://api.valyu.ai/v1
  • エンドポイント:/search
  • 認証:X-API-Key ヘッダー

アーキテクチャ

scripts/
├── search          # Bash wrapper
└── search.mjs      # Node.js CLI

Node.js に組み込まれた fetch() による API の直接呼び出しで、外部依存関係はありません。

プロジェクトへの追加

AI プロジェクトを構築しており、medRxiv Search をアプリケーションに直接統合する場合は、Valyu SDK を使用してください。

Python との統合
from valyu import Valyu

client = Valyu(api_key="your-api-key")

response = client.search(
    query="your search query here",
    included_sources=["valyu/valyu-medrxiv"],
    max_results=20
)

for result in response["results"]:
    print(f"Title: {result['title']}")
    print(f"URL: {result['url']}")
    print(f"Content: {result['content'][:500]}...")
TypeScript との統合
import { Valyu } from "valyu-js";

const client = new Valyu("your-api-key");

const response = await client.search({
  query: "your search query here",
  includedSources: ["valyu/valyu-medrxiv"],
  maxResults: 20
});

response.results.forEach((result) => {
  console.log(`Title: ${result.title}`);
  console.log(`URL: ${result.url}`);
  console.log(`Content: ${result.content.substring(0, 500)}...`);
});

統合例と SDK リファレンスの詳細については、Valyu のドキュメントをご覧ください。

コメント