mcpField
P
paper-lookup

paper-lookup

github.com/crazymsn生产力2347 次安装22 周前更新
代码仓库

关于 paper-lookup

面向学术检索的技能,可根据查询意图从 10 个论文数据库中选择并调用 REST API。适用于查找论文、作者成果、引用关系、开放获取 PDF 或全文,并要求列出查询数据库及原始结果。

主要功能

  1. 01按查询目标选择论文数据库
  2. 02组合多个数据库开展检索
  3. 03支持 DOI、PMID、arXiv ID 等标识符
  4. 04查询论文元数据、引用与开放获取全文
  5. 05整理数据库、端点及响应结果

适用场景

  1. 01按主题查找跨学科论文
  2. 02通过 DOI 查询论文并寻找开放获取版本
  3. 03检索作者成果或论文引用关系
  4. 04查找预印本或获取可用全文

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/crazymsn/academic-skills --skill paper-lookup

安装后在 Claude Code 中输入/paper-lookup确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
arxiv.md
biorxiv.md
core.md
crossref.md
medrxiv.md
openalex.md
pmc.md
pubmed.md
semantic-scholar.md
unpaywall.md

详细介绍

论文检索

你可以通过 REST API 访问 10 个学术论文数据库。你的任务是判断哪些数据库最适合用户的查询,调用它们,并返回结果。

核心工作流程

  1. 理解查询——用户想查找什么?是通过 DOI 查找特定论文、查找某个主题的论文、某位作者的出版物、开放获取 PDF,还是全文?这将决定要查询哪些数据库。

  2. 选择数据库——使用下方的数据库选择指南。很多查询适合同时查询多个数据库,例如先在 PubMed 中搜索论文,再通过 Unpaywall 查找开放获取版本。

  3. 阅读参考文件——每个数据库在 references/ 中都有一个参考文件,其中包含端点详情、查询格式和调用示例。在进行 API 调用前,请阅读相关文件。

  4. 进行 API 调用——请参阅下方的进行 API 调用部分,了解在你的平台上应使用哪个 HTTP 获取工具。

  5. 返回结果——务必返回:

    • 每个数据库的原始 JSON 响应(arXiv 则返回解析后的 XML)
    • 已查询的数据库列表,并注明使用的具体端点
    • 如果查询没有返回结果,请明确说明,而不要省略

数据库选择指南

根据用户意图匹配合适的数据库。

按使用场景
用户询问的内容……主要数据库也可考虑
生物医学主题相关论文PubMedSemantic Scholar、OpenAlex
生物医学文章全文PMCCORE
生物学预印本bioRxivSemantic Scholar、OpenAlex
健康/医学预印本medRxivSemantic Scholar、OpenAlex
物理、数学或计算机科学预印本arXivSemantic Scholar、OpenAlex
跨所有领域的论文OpenAlexSemantic Scholar、Crossref
通过 DOI 查找特定论文CrossrefUnpaywall、Semantic Scholar
论文的开放获取 PDFUnpaywallCORE、PMC
引文关系图(谁引用了谁)Semantic ScholarOpenAlex
作者的出版物Semantic ScholarOpenAlex
论文推荐Semantic Scholar--
全文(任何领域)COREPMC(仅限生物医学)
期刊/出版商元数据CrossrefOpenAlex
资助方信息CrossrefOpenAlex
在 PMID/PMCID/DOI 之间转换PMC(ID Converter)Crossref
按日期查找最新预印本bioRxiv、medRxivarXiv
跨数据库查询
用户询问的内容……要查询的数据库
了解论文的所有信息(元数据 + 引用 + OA)Crossref + Semantic Scholar + Unpaywall
全面的文献检索PubMed + OpenAlex + Semantic Scholar
查找并阅读论文PubMed(查找)+ Unpaywall(OA 链接)+ PMC 或 CORE(全文)
预印本及其已发表版本bioRxiv/medRxiv + Crossref
作者概览及引文指标Semantic Scholar + OpenAlex

如果查询涉及多种需求(例如,“查找有关 CRISPR 的论文并获取 PDF”),请并行查询相关数据库。

常见标识符格式

不同数据库使用不同的标识符系统。如果查询失败,可能是标识符格式不正确。

标识符格式示例使用方
DOI10.xxxx/xxxxx10.1038/nature12373所有数据库
PMID整数34567890PubMed、PMC、Semantic Scholar
PMCIDPMC + 数字PMC7029759PMC、Europe PMC
arXiv IDYYMM.NNNNN2103.15348arXiv、Semantic Scholar
OpenAlex IDW + 数字W2741809807OpenAlex
Semantic Scholar ID40 位十六进制数649def34f8be...Semantic Scholar
ORCID0000-XXXX-XXXX-XXXX0000-0001-6187-6610OpenAlex、Crossref
ISSNXXXX-XXXX0028-0836Crossref、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 req/s)https://www.ncbi.nlm.nih.gov/account/settings/
CORECORE_API_KEY获取全文时必需https://core.ac.uk/services/api
Semantic ScholarS2_API_KEY否(不使用时共享请求池)https://www.semanticscholar.org/product/api#api-key-form
OpenAlexOPENALEX_API_KEY建议使用https://openalex.org/settings/api
完全开放的数据库(无需密钥)
数据库备注
bioRxiv / medRxiv无需身份验证,无已公布的速率限制
arXiv无需身份验证,最多每 3 秒 1 次请求
Crossref无需身份验证;添加 mailto 参数即可使用礼貌请求池(速率限制提高 2 倍)
Unpaywall无需身份验证;需要 email 参数
加载 API 密钥
  1. 先检查环境——密钥可能已经导出(例如,$NCBI_API_KEY)。
  2. 再检查 .env——查看当前工作目录中的 .env。
  3. 不使用密钥继续——大多数 API 仍可使用,但速率限制较低。告知用户缺少哪个密钥以及如何获取。

发起 API 调用

使用环境中的 HTTP 获取工具调用 REST 端点:

平台HTTP 获取工具备用方案
Claude CodeWebFetch通过 Bash 使用 curl
Gemini CLIweb_fetch通过 shell 使用 curl
Windsurfread_url_content通过终端使用 curl
Cursor无专用获取工具通过 run_terminal_cmd 使用 curl
Codex CLI无专用获取工具通过 shell 使用 curl
Cline无专用获取工具通过 execute_command 使用 curl

如果获取工具失败,请改用任何可用 shell 工具通过 curl 发起请求。

特殊情况
  • arXiv 返回的是 Atom XML,而不是 JSON。解析该格式,或使用 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(速率限制),请稍等片刻后重试一次。
错误恢复
  1. 检查标识符格式 -- 使用“常见标识符格式”表。PMID 无法用于 arXiv,arXiv ID 也无法直接用于 PubMed。
  2. 尝试其他标识符 -- 如果 DOI 在某个数据库中无法使用,请改用标题或 PMID。
  3. 尝试其他数据库 -- 如果 PubMed 搜不到一篇计算机科学论文,请尝试 Semantic Scholar 或 OpenAlex。
  4. 报告失败情况 -- 告知用户哪个数据库失败、出现了什么错误,以及你尝试了哪些替代方法。

输出格式

按以下格式组织你的回复:

## 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 调用前,请先阅读相关参考文件。

生物医学文献
数据库参考文件涵盖内容
PubMedreferences/pubmed.md3700 多万条生物医学引文、摘要和 MeSH 主题词
PMCreferences/pmc.md1000 多万篇生物医学全文文章(JATS XML)和 ID 转换
预印本服务器
数据库参考文件涵盖内容
bioRxivreferences/biorxiv.md生物学预印本(按日期/DOI 浏览,不支持关键词搜索)
medRxivreferences/medrxiv.md健康科学预印本(按日期/DOI 浏览,不支持关键词搜索)
arXivreferences/arxiv.md物理、数学、计算机科学、生物学和经济学预印本(关键词搜索、Atom XML)
多学科索引
数据库参考文件涵盖内容
OpenAlexreferences/openalex.md2.5 亿多篇作品、作者、机构、主题和引文数据
Crossrefreferences/crossref.md1.5 亿多条 DOI 元数据、期刊、资助方和参考文献
Semantic Scholarreferences/semantic-scholar.md2 亿多篇论文、引文图谱、AI 生成的 TLDR 和推荐
开放获取与全文
数据库参考文件涵盖内容
COREreferences/core.md全球开放获取知识库中的 3700 多万篇全文
Unpaywallreferences/unpaywall.md任意 DOI 的开放获取状态和 PDF 链接

评论

支持 Markdown