mcpField
T
tavily-cli

tavily-cli

github.com/tavily-aiAgent 工作流49118.2k 次安装8 周前更新
代码仓库

关于 tavily-cli

Tavily CLI 是面向 Agent 的网页搜索、内容提取、站点 URL 发现、爬取和深度研究工具,结果可用 JSON 输出。搜索和提取支持有限的免密访问,其他主要操作需要认证。

主要功能

  1. 01搜索网页并发现来源
  2. 02提取 URL 内容
  3. 03发现站点内的 URL
  4. 04批量爬取站点内容
  5. 05开展带引用的深度研究
  6. 06以 JSON 输出结果

适用场景

  1. 01搜索主题并查找资料
  2. 02提取指定页面内容
  3. 03定位站点中的文档页面
  4. 04汇总多来源研究结果

MCP 相关

输入未说明 MCP 集成或 MCP 服务端功能。

安装

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

$npx skills add https://github.com/tavily-ai/skills --skill tavily-cli

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

详细介绍

Tavily CLI

网页搜索、内容提取、网站爬取、URL 发现和深度研究。返回针对大模型优化的 JSON。

需要 tavily-cli。搜索和提取支持有额度上限的免密访问;map、crawl 和 research 需要身份验证。

运行 tvly --help 或 tvly <command> --help 查看完整选项详情。

设置

如果未安装 tvly:

curl -fsSL https://cli.tavily.com/install.sh | bash

或者手动安装:uv tool install tavily-cli / pip install tavily-cli

配置 Agent 时,除非用户要求登录,或任务需要 map、crawl 或 research,否则先使用免密访问。如果安装程序尚未完成设置,请运行:

tvly init --skip-auth

这会安装或更新 Tavily 技能,并验证免密搜索是否可用。在首次搜索或提取请求之前,不要查找 API 密钥或进行身份验证。

需要或要求身份验证时,请使用引导式设置:

tvly init

# Prefer to open the sign-in link yourself
tvly init --no-browser

tvly init 会重复使用现有凭据,安装或更新该 CLI 版本捆绑的 Tavily 技能,并验证实时搜索。更新捆绑技能时,请先运行 tvly update。如果技能已安装,只需进行身份验证或验证,请使用 tvly init --skip-skills。

搜索和提取无需身份验证即可立即运行,但受免密访问速率上限限制。如果任一命令在交互式会话中达到该上限,请运行 tvly login 打开浏览器 OAuth,然后重试原命令一次。在无人值守环境中,请报告额度上限和身份验证选项,而不要启动交互式流程。Map、crawl 和 research 需要身份验证。仅在需要时使用 tvly --status --json 检查当前状态。

如需在不执行完整设置的情况下进行身份验证,请使用 tvly login、tvly login --no-browser、tvly login --api-key tvly-YOUR_KEY 或 TAVILY_API_KEY。

基于浏览器的 OAuth 是首选的交互式登录方式。--no-browser 只会打印登录链接,而不会自动打开;该流程仍会返回到运行 tvly 的机器上的 localhost 回调。在远程会话中,请确保该回调可访问(SSH 可能需要端口转发)。在无人值守的 Agent 或 CI 环境中,请让用户自行完成身份验证,或使用安全提供的 TAVILY_API_KEY,然后继续执行原命令。

使用 tvly update --check 和 tvly update 保持现有安装为最新版本。

工作流

按此升级模式操作——从简单步骤开始,必要时再升级:

  1. 搜索 — 没有特定 URL。查找页面、回答问题、发现来源。
  2. 提取 — 已有 URL。直接提取其内容。
  3. Map — 网站较大,需要找到合适的页面。先发现 URL。
  4. Crawl — 需要批量获取整个网站板块的内容。
  5. Research — 需要带引文的全面多来源分析。
需求命令适用场景
查找某个主题的页面tvly search还没有特定 URL
获取页面内容tvly extract已有 URL
查找网站中的 URLtvly map需要定位特定子页面
批量提取网站板块tvly crawl需要许多页面(例如,所有 /docs/ 页面)
获取带引文的深度研究tvly research需要综合多个来源

如需详细的命令参考,请查看各命令对应的技能(例如,tavily-search、tavily-crawl),或运行 tvly <command> --help。

不带子命令运行 tvly,即可进入交互式 REPL。

输出

Search、extract、crawl、map 和 research 支持使用 --json 输出结构化结果。 生成结果的命令支持使用 -o 保存 JSON 响应;crawl 还支持使用 --output-dir 为每个页面保存一个 Markdown 文件。文档中说明了设置、身份验证、状态和更新命令对 --json 的支持,但这些命令不支持 -o。

tvly search "react hooks" --json -o results.json
tvly extract "https://example.com/docs" -o docs.json
tvly crawl "https://docs.example.com" --output-dir ./docs/

提示

  • 始终为 URL 加上引号 — shell 会将 ? 和 & 解释为特殊字符。
  • 在 Agent 工作流中使用 --json(如果所选命令支持此选项)。
  • 使用 - 从标准输入读取 — echo "query" | tvly search -
  • 退出代码:0 = 成功,1 = 设置/更新失败,2 = 输入错误,3 = 身份验证错误,4 = API 或实时验证错误。

评论

支持 Markdown