mcpField
P
paper-search

paper-search

github.com/openags生産性2.9k218 回インストール4 週間前に更新
リポジトリ

paper-search について

学術論文の検索、ダウンロード、テキスト抽出を行うコマンドラインツールです。情報源を選んで論文を探したい研究者などを対象とし、MCP ツールもコマンドラインから呼び出せます。

主な機能

  1. 01学術情報源を横断検索
  2. 02論文 PDF のダウンロード
  3. 03論文テキストの抽出
  4. 04情報源と出版年による絞り込み
  5. 05登録済み MCP ツールの CLI 呼び出し

活用シーン

  1. 01選択したデータベースで論文を検索
  2. 02オフライン閲覧用の PDF 保存
  3. 03レビュー用の論文テキスト抽出
  4. 04引用・被引用論文の検索

MCP 対応

論文検索や関連情報取得の MCP ツールを提供し、CLI からも同じ登録済みツールを情報源別のオプション付きで呼び出せます。利用可能なツールは現在の設定に依存します。

インストール

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

$npx skills add https://github.com/openags/paper-search-mcp --skill paper-search

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

詳細

論文検索

paper-search CLI を使って、学術論文を検索、ダウンロード、閲覧できます。

CLI の使い方

すべてのコマンドは次の方法で実行します。

paper-search <command> [args]

paper-search が利用できない場合は、uv tool install paper-search-mcp でインストールしてください。オプションの API キーは ~/.config/paper-search-mcp/.env で設定できます。

検索
paper-search search "<query>" -n <max_per_source> -s <sources> -y <year>
  • -n:ソースごとの結果数(デフォルト:5)
  • -s:カンマ区切りのソース、「fast」、「fastest」、または「all」(デフォルト:all)
  • --exhaustive:互換性のための何もしないオプション(広範な検索はすでにデフォルトです)。明示的に指定した -s が常に優先されます
  • -y:Semantic Scholar の年のフィルター(例:「2020」、「2018-2022」)

速度を優先する場合は、-s fast(OpenAlex、Crossref、arXiv、PubMed、Europe PMC。API キーが空でない場合は Semantic Scholar も含む)、または -s fastest(OpenAlex と Crossref)を使用してください。明示的に選択したソースが DOI クエリで拡張されることはありません。DOI の検索には -s unpaywall を使用してください。「all」にはすでに含まれています。これらのプリセットでは、オプションの有料ソースは有効になりません。

PDF のダウンロード
paper-search download <source> <paper_id> [-o ./downloads]
読み取り(テキストの抽出)
paper-search read <source> <paper_id> [-o ./downloads]
ソース一覧
paper-search sources
CLI からの MCP ツール

paper-search tool は、ソース固有のオプションや DOI 検索を含め、MCP サーバーと同じ登録済みツールを呼び出します。必須引数は位置引数で指定し、オプション引数には kebab-case のフラグを使用します。ブール値のフラグには --flag と --no-flag を使用します。省略されたオプションには、MCP のデフォルト値が適用されます。

paper-search tool --help
paper-search tool --list  # JSON tool list, schemas, and annotations
paper-search tool search_crossref --help
paper-search tool search_crossref "transformer attention" --filter from-pub-date:2024-01-01 --sort published --order desc --max-results 2
paper-search tool get_crossref_paper_by_doi 10.1038/nature12373
paper-search tool search_iacr "cryptography" --no-fetch-details

オブジェクトとリストは JSON で返され、テキストとダウンロード先のパスはプレーンテキストで返されます。例外が発生した場合は、終了コード 1 とともに JSON エラーが返されます。CLI の構文が無効な場合は、終了コード 2 で終了します。通常の MCP の結果は、ツール自体が返すエラーや部分的な結果を示すフィールドも含め、元の意味を維持します。--list に表示されるのは現在の設定で有効なツールのみです。そのため、IEEE ツールには引き続き API キーが必要です。既存の search、download、read、sources コマンドに変更はありません。ツール呼び出しでは、MCP ツールのソース選択とタイムアウトの動作が維持されます。Sci-Hub へのフォールバックは、引き続き --use-scihub で明示的に有効化した場合のみ行われます。

出力

search と download は JSON を返します。read はプレーンテキストを返します。設定に関する警告は stderr に出力され、無視できます。

ソース

arxiv、pubmed、biorxiv、medrxiv、google_scholar、iacr、semantic、crossref、openalex、pmc、core、europepmc、dblp、openaire、citeseerx、doaj、base、zenodo、hal、ssrn、openreview、unpaywall、acm

オプション(環境変数):ieee(IEEE_API_KEY)。ACM 検索にはキーは不要で、Crossref のメタデータを使用します。出版社の PDF へのアクセスには、OA フォールバックが必要な場合があります。

Web of Science(wos)と Scopus(scopus)では、実行時の API キーとソースの明示的な選択が必要です。「all」、「fast」、「fastest」に追加されることはありません。通常の検索では --wos-db または --scopus-view、--scopus-sort、--scopus-field、--scopus-date オプションを使用するか、対応するツールのヘルプを確認してください。read scopus <id> は、構造化された抄録メタデータを返します。--full-text を指定すると、本人確認済みの論文テキストの取得を明示的に試みます。全文を取得できない場合は、ゼロ以外の終了コードを返します。抄録のみの結果は全文ではありません。

ツールコマンドでは、get_citing_papers、get_referenced_papers、get_search_cache_status、clear_search_cache も利用できます。関連論文の検索では DOI または OpenAlex ID を指定でき、取得範囲は最大 1 ホップに制限されます。キャッシュはデフォルトで無効です。有効にすると、クエリと公開結果が保存され、オペレーターによる明示的な選択が必要になります。検索キャッシュを消去しても、ダウンロード済みの PDF は削除されません。

ワークフロー

  1. ソースを絞って検索し、論文を見つけます
  2. タイトル、著者、年、ソース、DOI/URL を含む表で検索結果を提示します
  3. ユーザーが全文を希望する場合は、read <source> <paper_id> を使用します
  4. ユーザーが PDF を希望する場合は、download <source> <paper_id> を使用し、保存先のパスを伝えます

コメント