mcpField
E
exa-search

exa-search

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

关于 exa-search

exa-search 是基于 Exa 进行网页研究和 URL 内容提取的技能,适用于研究与信息收集任务。它分别提供主题搜索和指定页面抓取流程,并指导如何检索学术来源。

主要功能

  1. 01搜索网页主题和最新信息
  2. 02提取指定 URL 的内容
  3. 03按请求选择搜索或提取流程
  4. 04引导技术搜索优先检索学术来源
  5. 05通过 Exa Python SDK 运行 CLI 脚本

适用场景

  1. 01研究科学或技术问题
  2. 02查找主题的最新信息
  3. 03获取网页或学术 PDF 的内容
  4. 04提取多个指定 URL 的内容

安装

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

$npx skills add https://github.com/crazymsn/academic-skills --skill exa-search

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

包含的文件

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

references/
web-extract.md
web-search.md
scripts/
exa_extract.py
exa_search.py
tests/
test_exa_search.py

详细介绍

Exa Web Toolkit

一项由 Exa 提供支持的联网研究技能:网页搜索和 URL 提取。Exa 的索引结合了高质量的关键词检索与语义检索,非常适合科学、技术和概念类查询。

路由——选择合适的能力

阅读用户的请求,并将其与以下某项能力相匹配。运行命令前,请阅读相应的参考文件,了解详细说明。

用户想要……能力位置
查找信息、研究主题、获取最新资讯网页搜索references/web-search.md
获取特定 URL 的内容(网页、文章、PDF)网页提取references/web-extract.md
安装或进行身份验证设置下文
决策指南
  • 默认使用网页搜索来查询主题、研究问题或“X 是什么?”之类的问题。对于科学或技术主题,传入 --category "research paper",以便优先检索学术来源;也可以使用学术 --include-domains 允许列表。有关两轮学术检索策略,请参阅 references/web-search.md。
  • 用户提供 URL 或要求你阅读/获取特定页面时,使用网页提取。批量提取(单次调用多个 URL)和学术 PDF 提取时,优先使用它,而不是内置的 WebFetch。
学术来源优先级

对于技术或科学类查询,请优先选择学术和科学来源:

  • 同行评审的期刊文章和会议论文优先于博客文章或新闻
  • 在没有同行评审版本时,选择预印本(arXiv、bioRxiv、medRxiv)
  • 机构和政府来源(NIH、WHO、NASA、NIST)优先于商业网站
  • 原始研究优先于二手综述

可通过以下两种方式引导 Exa 检索学术内容:

  1. --category "research paper" 可让检索结果偏向学术内容。
  2. 使用学术来源允许列表(arxiv.org、nature.com、pubmed.ncbi.nlm.nih.gov 等)设置 --include-domains,以限制检索的域名范围。

同时使用这两种方式可严格限定为学术结果。完整模式请参阅 references/web-search.md。

引用学术来源时,除标准引用格式外,在可用时还应注明作者姓名和发表年份(例如 Smith 等,2025)。如果存在 DOI,请优先链接到 DOI。


设置

此技能使用 exa-py Python SDK。scripts/ 中的脚本通过 PEP 723 内联元数据声明依赖项,因此可以直接使用 uv run 运行,无需单独安装:

uv run --with exa-py python "$SKILL_PATH/scripts/exa_search.py" --help

如果你更倾向于持久安装:

uv pip install "exa-py>=1.14.0"
身份验证

所有命令都会从 EXA_API_KEY 环境变量读取 API 密钥。请在 dashboard.exa.ai/api-keys 获取 Exa API 密钥。

首先,检查项目根目录中是否存在 .env 文件,并确认其中包含 EXA_API_KEY。如果存在,请加载它:

dotenv -f .env run -- uv run --with exa-py python "$SKILL_PATH/scripts/exa_search.py" "your query"

如果没有 dotenv,请安装:pip install python-dotenv[cli] 或 uv pip install python-dotenv[cli]。

如果没有 .env,请为当前会话导出密钥:

export EXA_API_KEY="your-key"

运行任意脚本并添加 --help 进行验证——如果已设置密钥,脚本会正常退出;只有在执行实际查询时才会进行身份验证检查。

此技能中的文件

  • SKILL.md — 本文件(路由和设置)
  • references/web-search.md — 详细的网页搜索参考,其中包含学术检索策略
  • references/web-extract.md — URL 内容提取参考
  • scripts/exa_search.py — client.search_and_contents 的 CLI 封装
  • scripts/exa_extract.py — client.get_contents 的 CLI 封装

评论

支持 Markdown