paper-search について
学術論文の検索、ダウンロード、テキスト抽出を行うコマンドラインツールです。情報源を選んで論文を探したい研究者などを対象とし、MCP ツールもコマンドラインから呼び出せます。
主な機能
- 01学術情報源を横断検索
- 02論文 PDF のダウンロード
- 03論文テキストの抽出
- 04情報源と出版年による絞り込み
- 05登録済み MCP ツールの CLI 呼び出し
活用シーン
- 01選択したデータベースで論文を検索
- 02オフライン閲覧用の PDF 保存
- 03レビュー用の論文テキスト抽出
- 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 は削除されません。
ワークフロー
- ソースを絞って検索し、論文を見つけます
- タイトル、著者、年、ソース、DOI/URL を含む表で検索結果を提示します
- ユーザーが全文を希望する場合は、
read <source> <paper_id>を使用します - ユーザーが PDF を希望する場合は、
download <source> <paper_id>を使用し、保存先のパスを伝えます