mcpField
N
nature-academic-search

nature-academic-search

github.com/mubuky生产力140 次安装13 周前更新
代码仓库

关于 nature-academic-search

nature-academic-search 是将学术文献与引文任务分派到专用工作流的 Agent 技能。它按需从文件加载版本化的搜索工具和操作指南,而非凭记忆执行搜索流程。

主要功能

  1. 01将请求路由到六类学术工作流
  2. 02加载共享 MCP 工具清单和操作指南
  3. 03按需读取特定工作流参考文件
  4. 04支持文献检索与引文处理
  5. 05报告工具故障并避免编造记录

适用场景

  1. 01跨来源检索学术文献
  2. 02制定 MeSH 或 PubMed 检索策略
  3. 03转换或管理引文文件
  4. 04核验书目元数据或审查引文

MCP 相关

该技能使用已加载工具清单中的 MCP 工具,包括核心与扩展搜索工具及 PubMed 实用工具。它根据工作流将任务路由至这些工具,并遵循来源路由和错误处理指南。

安装

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

$npx skills add https://github.com/mubuky/nature-skills --skill nature-academic-search

安装后在 Claude Code 中输入/nature-academic-search确认已加载。

包含的文件

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

manifest.yaml
README_EN.md
README.md
agents/
openai.yaml
config/
mcp-snippet.json
mcp-server/
academic_search_server.py
config.toml
README.md
requirements.txt
mcp-server/sources/
__init__.py
arxiv.py
crossref.py
elsevier_common.py
pubmed.py
sciencedirect.py
scopus.py
mcp-server/tests/
__init__.py
test_elsevier_live.py
test_mcp_tools.py
test_sources.py
mcp-server/utils/
__init__.py
config.py
errors.py
logging.py
references/
citation-parser.md
dedup-engine.md
pubmed-28344011.bib
pubmed-28344011.nbib
pubmed-28344011.ris
ris-bibtex-format.md

详细介绍

Academic Search — Router

此技能分为两层:

  • static/ 下的静态层,用于存放经过版本管理、可重复使用的内容片段(MCP 工具清单和共享模块,以及来源路由与操作规则)。
  • 动态层(本文件及 manifest.yaml),用于检测用户需要哪种工作流并加载相应工作流,仅在某个步骤需要时才调用共享模块和脚本。

不要凭记忆或依据此路由器应用搜索逻辑。务必按照下文说明从磁盘加载片段。

路由协议

每次调用此技能时,都要执行以下五个步骤。

1. 加载清单和核心层

读取 manifest.yaml。该文件声明了 workflow 轴、允许的值,以及各值对应的文件路径。

同时读取 always_load 下列出的每个文件:

  • static/core/tools.md — MCP 工具清单(核心搜索、扩展搜索、PubMed 实用工具)和共享模块映射。
  • static/core/routing-and-ops.md — T1→T2→T3 来源路由速查指南、环境设置、错误处理和限制。
2. 检测工作流

将用户需求映射到一个或多个 workflow 值:

  • multi-source-search — 跨来源查找文献。
  • mesh-strategy — 制定 MeSH/PubMed 搜索策略。
  • citation-file-mgmt — 转换或管理 .nbib/.ris/.bib 文件。
  • reference-mgmt — BibTeX、相关文章发现、ID 转换。
  • bibliography-verification — 逐字段核验现有参考文献的元数据,并报告有证据支持的更正。
  • strict-other-citation-impact-audit — 确定严格意义上的独立他引,构建文章级别的引文指标表,识别高影响力引用者(院士、院长/系主任、人才奖获得者、会士、领域领军人物),并提取其引用目标论文的方式。

组合请求(例如先搜索再导出)可能需要多个工作流。继续之前,用一行简短文字说明检测到的工作流。

3. 加载匹配的工作流片段

读取每个检测到的工作流所对应的文件(位于 references/workflows/ 下)。不要读取所有工作流。每个工作流文件都会链接到所需的共享模块。

4. 使用已加载的材料执行工作流

按以下顺序应用已加载的材料:

  1. 核心工具和路由(core/tools.md、core/routing-and-ops.md)——根据不同需求选择 MCP 工具,以及所有工作流通用的 T1→T2→T3 回退链。
  2. 工作流片段——其中的具体步骤。
  3. 按需使用共享模块和脚本(去重、引文解析器、搜索策略、RIS/BibTeX 格式、格式转换器)。

报告具体的工具故障,并继续使用其他合法来源; 没有结果时拓展检索词。切勿将不可用的来源或失败的查询伪造成记录。参考文献元数据核验应与论断到来源的支持性检查分开;后者属于 nature-citation。

5. 仅在需要时查阅参考资料

references/ 下的文件(以及 scripts/ 下的文件)属于深度参考资料,不是默认必读内容。根据清单中的 references.on_demand 表按需打开它们,例如:完整的可靠性分类请查阅 references/source-tiers.md;共享模块请查阅 references/dedup-engine.md、references/citation-parser.md、references/search-strategy.md、references/ris-bibtex-format.md;工具请查阅 scripts/academic_search.py(无 MCP 时的后备发现搜索)、scripts/format-converter.py、scripts/preflight.py。

为什么这样拆分

  • 静态层有版本控制,便于审查;工作流文件和共享模块此前也已按这种方式拆分。
  • 动态层让每次调用的开销都很低:只有用户需要的工作流会进入上下文,而不是全部六个工作流及每个模块。
  • 路由器本身刻意保持简短。添加范围时,只需更新片段和引用,无需修改此文件。
  • 此结构与其他 nature-* 技能(nature-writing、 nature-paper2ppt、nature-figure、nature-citation、nature-response、 nature-data)保持一致。

评论

支持 Markdown