paper-lookup について
検索内容に応じて10の学術論文データベースから選択し、REST APIを呼び出す文献検索スキルです。論文、著者の業績、引用関係、オープンアクセスPDFや全文の検索に使え、照会先と生の結果を提示します。
主な機能
- 01検索目的に応じたデータベース選択
- 02複数データベースを組み合わせた検索
- 03DOI、PMID、arXiv IDなどの識別子に対応
- 04メタデータ、引用、オープンアクセス全文の検索
- 05照会先、エンドポイント、応答の提示
活用シーン
- 01分野横断でテーマに関する論文を検索
- 02DOIで論文を調べ、オープンアクセス版を探す
- 03著者の業績や引用関係を調べる
- 04プレプリントを探す、または入手可能な全文を取得
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ crazymsn/ academic-skills --skill paper-lookupインストール後、Claude Code で/paper-lookupを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/arxiv.mdbiorxiv.mdcore.mdcrossref.mdmedrxiv.mdopenalex.mdpmc.mdpubmed.mdsemantic-scholar.mdunpaywall.md詳細
論文検索
REST API を介して、10 の学術論文データベースを利用できます。ユーザーのクエリに最適なデータベースを判断して呼び出し、結果を返してください。
基本的なワークフロー
-
クエリを理解する -- ユーザーが何を求めているかを確認します。DOI で特定の論文を探しているのか、あるトピックに関する論文なのか、著者の出版物なのか、オープンアクセスの PDF なのか、全文なのかを判断します。これによって、利用するデータベースが決まります。
-
データベースを選択する -- 以下のデータベース選択ガイドを使用します。複数のデータベースを利用するとよいクエリも多くあります。たとえば、PubMed で論文を検索してから、Unpaywall でオープンアクセス版を確認します。
-
リファレンスファイルを読む -- 各データベースのエンドポイントの詳細、クエリ形式、呼び出し例は、
references/内のリファレンスファイルに記載されています。API を呼び出す前に、該当するファイルを読んでください。 -
API を呼び出す -- お使いのプラットフォームで使用する HTTP フェッチツールについては、以下の API の呼び出し セクションを参照してください。
-
結果を返す -- 常に以下を返してください。
- 各データベースからの生の JSON(arXiv の場合は解析済み XML)レスポンス
- クエリしたデータベースと、使用した具体的なエンドポイントの一覧
- クエリで結果が得られなかった場合は、省略せずその旨を明記してください
データベース選択ガイド
ユーザーの意図に合ったデータベースを選択してください。
用途別
| ユーザーの質問内容 | 主なデータベース | 併せて検討するデータベース |
|---|---|---|
| 生物医学トピックに関する論文 | PubMed | Semantic Scholar、OpenAlex |
| 生物医学論文の全文 | PMC | CORE |
| 生物学のプレプリント | bioRxiv | Semantic Scholar、OpenAlex |
| ヘルスケア/医学分野のプレプリント | medRxiv | Semantic Scholar、OpenAlex |
| 物理学、数学、またはコンピューターサイエンス分野のプレプリント | arXiv | Semantic Scholar、OpenAlex |
| 全分野にわたる論文 | OpenAlex | Semantic Scholar、Crossref |
| DOI で特定の論文を検索 | Crossref | Unpaywall、Semantic Scholar |
| 論文のオープンアクセス PDF | Unpaywall | CORE、PMC |
| 引用グラフ(誰が誰を引用しているか) | Semantic Scholar | OpenAlex |
| 著者の出版物 | Semantic Scholar | OpenAlex |
| 論文の推薦 | Semantic Scholar | -- |
| 全文(全分野) | CORE | PMC(生物医学分野のみ) |
| 学術誌/出版社のメタデータ | Crossref | OpenAlex |
| 資金提供者の情報 | Crossref | OpenAlex |
| PMID/PMCID/DOI の相互変換 | PMC(ID Converter) | Crossref |
| 日付の新しいプレプリント | bioRxiv、medRxiv | arXiv |
複数データベースを使うクエリ
| ユーザーの質問内容 | クエリするデータベース |
|---|---|
| 論文に関するすべての情報(メタデータ+引用+OA) | Crossref + Semantic Scholar + Unpaywall |
| 包括的な文献検索 | PubMed + OpenAlex + Semantic Scholar |
| 論文を見つけて読む | PubMed(検索)+ Unpaywall(OA リンク)+ PMC または CORE(全文) |
| プレプリントと出版済みバージョン | bioRxiv/medRxiv + Crossref |
| 引用指標を含む著者の概要 | Semantic Scholar + OpenAlex |
「CRISPR に関する論文を探して PDF も取得して」のように、クエリに複数のニーズが含まれる場合は、関連するデータベースに並行してクエリしてください。
一般的な識別子の形式
データベースによって識別子のシステムは異なります。クエリに失敗した場合は、識別子の形式が間違っている可能性があります。
| 識別子 | 形式 | 例 | 使用先 |
|---|---|---|---|
| DOI | 10.xxxx/xxxxx | 10.1038/nature12373 | すべてのデータベース |
| PMID | 整数 | 34567890 | PubMed、PMC、Semantic Scholar |
| PMCID | PMC + 数字 | PMC7029759 | PMC、Europe PMC |
| arXiv ID | YYMM.NNNNN | 2103.15348 | arXiv、Semantic Scholar |
| OpenAlex ID | W + 数字 | W2741809807 | OpenAlex |
| Semantic Scholar ID | 40 文字の 16 進数 | 649def34f8be... | Semantic Scholar |
| ORCID | 0000-XXXX-XXXX-XXXX | 0000-0001-6187-6610 | OpenAlex、Crossref |
| ISSN | XXXX-XXXX | 0028-0836 | Crossref、OpenAlex |
ID の相互参照: Semantic Scholar は、プレフィックスを付けることで DOI、PMID、PMCID、arXiv ID を受け付けます(例:DOI:10.1038/nature12373、PMID:34567890、ARXIV:2103.15348)。OpenAlex はプレフィックス付きの DOI と PMID を受け付けます(doi:10.1038/...、pmid:34567890)。PMC ID Converter を使うと、PMID、PMCID、DOI の相互変換ができます。
API キーとアクセス
これらのデータベースのほとんどは完全にオープンです。一部では、API キーを使うとレート制限が緩和されます。
API キーが必要、または利用すると便利なデータベース
| データベース | 環境変数 | 必須? | 登録先 |
|---|---|---|---|
| NCBI(PubMed、PMC) | NCBI_API_KEY | いいえ(キーなしでは 3 req/s、キーありでは 10) | https://www.ncbi.nlm.nih.gov/account/settings/ |
| CORE | CORE_API_KEY | 全文には必須 | https://core.ac.uk/services/api |
| Semantic Scholar | S2_API_KEY | いいえ(キーなしでは共有プールを使用) | https://www.semanticscholar.org/product/api#api-key-form |
| OpenAlex | OPENALEX_API_KEY | 推奨 | https://openalex.org/settings/api |
完全にオープンなデータベース(キー不要)
| データベース | 備考 |
|---|---|
| bioRxiv / medRxiv | 認証不要、公開されているレート制限なし |
| arXiv | 認証不要、最大 3 秒に 1 リクエスト |
| Crossref | 認証不要。配慮されたプールを利用するには mailto パラメーターを追加(レート制限が 2 倍) |
| Unpaywall | 認証不要。email パラメーターが必要 |
API キーの読み込み
- まず環境を確認します -- キーがすでにエクスポートされている場合があります(例:
$NCBI_API_KEY)。 - 次に
.envを確認します -- 現在の作業ディレクトリにある.envを確認します。 - キーなしで進めます -- ほとんどの API は、レート制限が低くても引き続き利用できます。不足しているキーと入手方法をユーザーに伝えてください。
API 呼び出し
お使いの環境の HTTP フェッチツールを使って、REST エンドポイントを呼び出します。
| プラットフォーム | HTTP フェッチツール | 代替手段 |
|---|---|---|
| Claude Code | WebFetch | Bash 経由の curl |
| Gemini CLI | web_fetch | シェル経由の curl |
| Windsurf | read_url_content | ターミナル経由の curl |
| Cursor | 専用のフェッチツールなし | run_terminal_cmd 経由の curl |
| Codex CLI | 専用のフェッチツールなし | shell 経由の curl |
| Cline | 専用のフェッチツールなし | execute_command 経由の curl |
フェッチツールが失敗した場合は、利用可能なシェルツール経由で curl に切り替えてください。
特殊なケース
- arXiv は JSON ではなく Atom XML を返します。 パースするか、
curlを使って関連フィールドを抽出してください。利用可能であれば、簡単なパーサーにパイプすることも検討してください。 - PMC の eFetch は、全文について JATS XML を返します。 これは想定どおりです。全文記事は XML 形式です。
- Crossref と Unpaywall では、配慮された高速プールを利用するために
mailtoパラメーターまたはメールアドレスを含めると便利です。
リクエストのガイドライン
- NCBI API(PubMed、PMC):キーなしでは最大 3 req/sec、キーありでは 10 req/sec です。リクエストは順番に送信してください。
- arXiv:最大 3 秒に 1 リクエストです。余裕をもって待ってください。
- Crossref:5 req/sec(公開プール)、10 req/sec(
mailtoを指定した配慮されたプール)です。 - 厳格な制限がないその他の API では、複数のデータベースに並行してクエリを送信できます。
- HTTP 429(レート制限)が返された場合は、少し待ってから一度だけ再試行してください。
エラーからの復旧
- 識別子の形式を確認する -- 共通識別子形式の表を使用してください。PMIDはarXivでは機能せず、arXiv IDはPubMedで直接使用できません。
- 別の識別子を試す -- あるデータベースでDOIが機能しない場合は、代わりにタイトルまたはPMIDを試してください。
- 別のデータベースを試す -- PubMedでコンピューターサイエンスの論文が見つからない場合は、Semantic ScholarまたはOpenAlexを試してください。
- 失敗を報告する -- どのデータベースで失敗したか、エラーの内容、代わりに試したことをユーザーに伝えてください。
出力形式
次のような形式で回答してください。
## Databases Queried
- **PubMed** -- esearch + esummary for "CRISPR gene therapy"
- **Unpaywall** -- DOI lookup for 10.1038/...
## Results
### PubMed
[raw JSON response or formatted results]
### Unpaywall
[raw JSON response]
結果が非常に大きい場合は、最も関連性の高い部分を提示し、さらにデータがあることを記載してください。ただし、ユーザーが求めているため、デフォルトでは未加工のJSON全体を表示してください。
利用可能なデータベース
APIを呼び出す前に、関連するリファレンスファイルを読んでください。
生物医学文献
| データベース | リファレンスファイル | 対象 |
|---|---|---|
| PubMed | references/pubmed.md | 3,700万件以上の生物医学文献引用、抄録、MeSH用語 |
| PMC | references/pmc.md | 1,000万件以上の全文生物医学論文(JATS XML)、ID変換 |
プレプリントサーバー
| データベース | リファレンスファイル | 対象 |
|---|---|---|
| bioRxiv | references/biorxiv.md | 生物学のプレプリント(日付/DOIで閲覧、キーワード検索なし) |
| medRxiv | references/medrxiv.md | 医療科学のプレプリント(日付/DOIで閲覧、キーワード検索なし) |
| arXiv | references/arxiv.md | 物理学、数学、コンピューターサイエンス、生物学、経済学のプレプリント(キーワード検索、Atom XML) |
学際的なインデックス
| データベース | リファレンスファイル | 対象 |
|---|---|---|
| OpenAlex | references/openalex.md | 2億5,000万件以上の研究成果、著者、機関、トピック、引用データ |
| Crossref | references/crossref.md | 1億5,000万件以上のDOIメタデータ、ジャーナル、資金提供者、参考文献 |
| Semantic Scholar | references/semantic-scholar.md | 2億件以上の論文、引用グラフ、AI生成のTLDR、推奨 |
オープンアクセスと全文
| データベース | リファレンスファイル | 対象 |
|---|---|---|
| CORE | references/core.md | 世界中のOAリポジトリにある3,700万件以上の全文 |
| Unpaywall | references/unpaywall.md | あらゆるDOIのOAステータスとPDFリンク |