☰
Exa AI 搜索 API 接入指南:为 Claude Code 与营销 Agent 构建语义级网络检索能力
2026/10/3 6:22:25 网站建设 项目流程
  • AI 技能
  • 人工智能

【免费下载链接】marketingskills

Marketing skills for Claude Code and AI agents. CRO, copywriting, SEO, analytics, and growth engineering.

项目地址:https://gitcode.com/GitHub_Trending/mar/marketingskills
点击查看免费下载

本文以 tools/integrations/exa.md 为骨架,结合仓库内 exa.js CLI 源码与其工具注册表 REGISTRY.md、clis/README.md 中的规范,讲解如何在 marketing-skills 生态中为 LLM/Agent 接入 Exa 的神经语义搜索、相似页发现与按需内容提取能力。

导读

Exa 是一个专为 LLM 与 AI Agent 设计的 AI 搜索引擎 API:它在一次请求中同时完成「神经匹配 + 关键词匹配」的混合检索,并按需返回正文全文、高亮片段与摘要,省去了「先搜索、再逐个抓取页面」的多步流程。本文面向 Claude Code 与营销类 AI Agent 场景,完整覆盖 Exa 的三大端点(/search、/findSimilar、/contents)、核心参数体系,以及仓库内置零依赖 CLI 的安装与实战用法,帮助你直接用它完成内容研究、竞品发现、SEO 内容缺口分析与受众调研。

集成能力总览

Exa 在仓库中同时具备 API、MCP、CLI、SDK 四种接入形态,覆盖从「纯 API 调用」到「Agent 直接使用 MCP 工具」的全部路径:

集成方式可用说明
API✓Search、Find Similar、Contents 三大能力
MCP✓官方 MCP Server 可直接接入 Agent 环境
CLI✓仓库内置零依赖 CLI:exa.js
SDK✓exa-py(Python)、exa-js(TypeScript)

其中仓库自带的 CLI 位于 tools/clis/exa.js,是零依赖的单文件 Node.js 脚本,仅需 Node 18+ 原生fetch,无需npm install,符合 clis/README.md 中「所有 CLI 统一约定」的规范;在工具注册表 REGISTRY.md 中,Exa 被归类为AI Search工具,官方推荐用于「神经/语义网络搜索、内容研究、相似页发现」,并明确可与seo-audit、content-strategy、competitor-profiling技能配合使用。

认证方式

  • 类型:API Key
  • 请求头:x-api-key: {key}
  • 获取 Key:在 Exa 官方 Dashboard 创建(认证请求头经 Base URLhttps://api.exa.ai发送)

从 exa.js 源码可以看到 CLI 的认证实现:脚本从环境变量EXA_API_KEY读取密钥,若未设置则直接报错并退出,密钥绝不硬编码进仓库——这与 clis/README.md 的「所有 CLI 一律从环境变量读取凭据」安全约定一致:

const API_KEY = process.env.EXA_API_KEY const BASE_URL = 'https://api.exa.ai' if (!API_KEY) { console.error(JSON.stringify({ error: 'EXA_API_KEY environment variable required' })) process.exit(1) }

除x-api-key外,CLI 每次请求还会附带x-exa-integration: marketingskills自定义头(见 exa.js),用于在 Exa 侧标识流量来源,属仓库集成层的自有约定。

端点说明

Base URL:https://api.exa.ai

端点用途
POST /search以 neural、keyword-like 或 auto 路由模式搜索网络
POST /findSimilar查找与指定 URL 相似的页面
POST /contents针对一个或多个 URL 获取正文、高亮或摘要

三个端点形成了完整的 Agent 工作链路:先用/search或/findSimilar发现候选 URL,再用/contents一次性取回全部候选页面的正文/高亮/摘要,全程无需额外的网页抓取工具。

常见 Agent 操作

以下五组请求即 tools/integrations/exa.md 中的核心实战示例,可直接作为 Agent 的 prompt 模板或手工调试基准。

1. 带内容的网络搜索

一次请求同时完成搜索与内容提取,是 Exa 相对传统搜索 API 的关键差异:

POST https://api.exa.ai/search { "query": "best B2B SaaS onboarding flows", "type": "auto", "numResults": 10, "contents": { "text": { "maxCharacters": 1000 }, "highlights": true } }

type: "auto"让 Exa 自动在神经匹配与关键词匹配之间路由;contents.text截取每篇结果前 1000 字符正文,highlights同时返回 LLM 挑选的相关片段——一次调用即可获得「结果列表 + 正文 + 高亮」三层信息。

2. 竞品内容发现

通过includeDomains把搜索范围锁定在指定站点,配合startPublishedDate只看近期内容:

POST https://api.exa.ai/search { "query": "landing page teardowns", "includeDomains": ["goodui.org", "growth.design", "marketingexamples.com"], "startPublishedDate": "2024-01-01T00:00:00Z", "contents": { "highlights": true } }

适合监控特定竞品/灵感站点产出的新内容,或批量盘点某个垂直领域的头部内容。

3. 相似页发现

给定一个已知优秀页面(如 Stripe 定价页),反向找出网络上与之相似的页面:

POST https://api.exa.ai/findSimilar { "url": "https://stripe.com/pricing", "numResults": 20, "contents": { "summary": { "query": "What pricing model and price points does this page use?" } } }

这里contents.summary.query是一个面向摘要的定向问题——Exa 会对每篇相似页按该问题生成摘要,例如统一回答「该页使用什么定价模型、定价多少」,让 20 个结果直接变成一张可对比的定价情报表。

4. 分类过滤搜索

category参数把搜索限定在特定内容类别中,news类别结合日期过滤即为标准的新闻监控写法:

POST https://api.exa.ai/search { "query": "DTC beauty brand raising Series A", "category": "news", "numResults": 25, "startPublishedDate": "2024-06-01T00:00:00Z" }

5. 获取已知 URL 的内容

已有明确 URL 列表时,直接用/contents批量提取,summary.query可对每篇执行同一语义任务:

POST https://api.exa.ai/contents { "urls": ["https://example.com/post-1", "https://example.com/post-2"], "text": true, "summary": { "query": "Summarize this article's key argument in one paragraph." } }

关键参数详解

搜索类型(type)

类型说明
auto自动在神经与关键词匹配之间路由(默认)
neural基于 embedding 的语义搜索,最适合概念/想法类查询
fast低延迟的神经搜索
instant近乎即时返回缓存结果
deep-lite/deep/deep-reasoningAgentic 搜索变体:规划多次查询并综合结果后返回

其中deep系列属于「代理式搜索」——Exa 自己会拆解查询、执行多次检索并做综合,适合需要推理与跨来源整合的复杂调研任务,但延迟与成本相应更高。

分类(category)

支持:company、research paper、news、personal site、financial report、people。

过滤(Filtering)

参数作用
includeDomains/excludeDomains限定/排除指定域名(最多 1200 个)
includeText/excludeText要求/禁止结果页中出现指定短语
startPublishedDate/endPublishedDateISO 8601 格式的发布时间范围
startCrawlDate/endCrawlDateISO 8601 格式的抓取时间范围
userLocation两位字母国家代码(如US),影响本地化结果

Contents 三件套(可混合使用)

三个内容提取能力可在同一次请求中同时开启:

  • text: true或{ maxCharacters, includeHtmlTags, verbosity }—— 返回完整或截断的页面正文;
  • highlights: true或{ query, maxCharacters }—— 返回 LLM 依据语义挑选的相关片段,query可指定高亮关注的维度;
  • summary: { query, schema }—— 返回 LLM 生成的摘要,可附加query定向问题,或通过schema让摘要严格符合自定义 JSON Schema(适合 Agent 结构化解析结果)。

仓库 CLI 实战:零依赖调用 Exa

exa.js 将上述三个端点封装为三个子命令,遵循 clis/README.md 的统一模式{tool} <resource> <action> [options],全部参数均可用--key value形式传入,输出为 JSON。

安装与认证

无需任何依赖,三种方式任选(详见 clis/README.md):

# 方式一:直接运行 node tools/clis/exa.js search --query "B2B SaaS onboarding" --num 5 # 方式二:软链到全局 ln -sf "$(pwd)/tools/clis/exa.js" ~/.local/bin/exa # 方式三:把整个目录加入 PATH export PATH="$PATH:/path/to/marketingskills/tools/clis"

认证只需设置环境变量:export EXA_API_KEY=your_key(clis/README.md 中的凭据对照表将exa映射到EXA_API_KEY)。

三个子命令与参数映射

search:对应POST /search

exa search --query "best B2B SaaS onboarding flows" \ --type auto --num 10 \ --include-domains "goodui.org,growth.design" \ --start-published 2024-01-01T00:00:00Z \ --text --highlights --max-chars 1000 \ --highlight-query "what tactics do they recommend" \ --summary --summary-query "summarize key steps"

从源码(exa.js)可见search子命令完整支持--query、--type、--num、--category、--include-domains、--exclude-domains、--include-text、--exclude-text、--start-published、--end-published、--start-crawl、--end-crawl、--user-location,其中逗号分隔的域名/短语参数会在请求体内被拆分为数组(split(',').map(s => s.trim()))。

find-similar:对应POST /findSimilar

exa find-similar --url https://stripe.com/pricing --num 20 \ --start-published 2024-01-01T00:00:00Z \ --summary --summary-query "What pricing model and price points does this page use?"

(源码见 exa.js,--url为必填,其余过滤与 Contents 参数同search。)

contents:对应POST /contents

exa contents --urls "https://example.com/post-1,https://example.com/post-2" \ --text --summary --summary-query "Summarize this article's key argument in one paragraph."

(源码见 exa.js,--urls为逗号分隔必填;若未指定任何 Contents 选项,脚本默认回退为text: true。)

请求体构造细节

exa.js 中的buildContents()揭示了 CLI 如何把命令行参数翻译成 API 的contents对象:

  • --text→contents.text = true,若加--max-chars 1000则变为{ maxCharacters: 1000 };
  • --highlights→contents.highlights = true,若加--highlight-query则变为{ query };
  • --summary→contents.summary = {},若加--summary-query则填入{ query }。

只有当三者之一被显式指定时contents才会被放入请求体;对search之外的两个端点,contents参数同样生效,例如find-similar可携带summary.query做定向摘要。

安全演练:--dry-run

所有请求都可通过--dry-run预览而不真正发送:源码(exa.js)在 dry-run 模式下直接返回{ _dry_run: true, method, url, headers, body },其中x-api-key会被掩码为***,方便排查参数拼写错误且不会泄露密钥,符合 clis/README.md 的安全要求。

输出与管道

CLI 以 JSON 输出到 stdout,可直接配合jq解析或存入文件:

# 取前 5 条结果的标题 exa search --query "landing page teardowns" --num 10 --highlights | jq '.results[:5][] | {title, url, highlights}' # 保存结果供后续处理 exa search --query "DTC beauty brand Series A" --category news --num 25 > news.json

何时使用 Exa

官方文档给出的典型营销 Agent 场景(tools/integrations/exa.md):

  • 内容研究(Content research)——按语义而非仅关键词,找到小众主题下的高质量长文;
  • 竞品发现(Competitor discovery)——通过findSimilar找出与已知目标公司相似的页面/公司;
  • SEO 内容缺口分析(SEO content gap analysis)——检索竞品有排名而你缺失的话题,拉取高亮片段快速评审;
  • 客户研究(Customer research)——检索论坛帖子、博客与评论中关于你产品或品类的真实讨论;
  • 受众研究(Audience research)——发现你的 ICP 发表内容或留言的博客、Newsletter 与社区;
  • 新闻监控(News monitoring)——以category: news+ 日期过滤跟踪品牌、竞品或品类的提及;
  • 外链机会挖掘(Link prospecting)——找出覆盖你写作主题的高权威页面用于外联;
  • 线索研究(Lead research)——用company与people分类发现符合筛选条件的公司或联系人。

在仓库生态中,Exa 与多个营销技能高度互补——REGISTRY.md 的 Agent 推荐将其与seo-audit、content-strategy、competitor-profiling技能配对使用;文档底部列出的相关技能还包括 ai-seo、competitors、customer-research、cold-email、lead-magnets 与 marketing-ideas。例如:competitor-profiling需要盘点竞品内容资产时,可由 Agent 调用exa find-similar+contents自动拉取并摘要;cold-email需要为外联准备背景信息时,可先用search检索目标公司最近动态。

速率限制与计费提示

  • 速率限制因套餐而异,具体见 Exa 官方定价页;
  • 大多数生产套餐支持数百并发请求;
  • 注意计费结构:内容提取(text / highlights / summary)与基础搜索分开计费——高吞吐的批量抓取任务应评估成本,必要时只对少量结果开启contents,或先用纯搜索粗筛、再对精选 URL 用/contents。

相关仓库资源

  • tools/integrations/exa.md —— 本文主题文档(认证、端点、参数、场景全表)
  • tools/clis/exa.js —— Exa CLI 完整源码(三子命令实现、参数解析、dry-run)
  • tools/clis/README.md —— 所有 CLI 的安装、认证与命令模式约定
  • tools/REGISTRY.md —— 工具注册表:Exa 分类、能力矩阵与 Agent 推荐用法
  • tools/PARTNERS.md —— 工具集成指南的编写规范(含integrations/目录格式要求)
  • AI 技能
  • 人工智能

【免费下载链接】marketingskills

Marketing skills for Claude Code and AI agents. CRO, copywriting, SEO, analytics, and growth engineering.

项目地址:https://gitcode.com/GitHub_Trending/mar/marketingskills
点击查看免费下载

相关推荐

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询