mcpField
W
web-search-tavily

web-search-tavily

github.com/jwynia生产力1791.1k 次安装35 周前更新
代码仓库

关于 web-search-tavily

web-search-tavily 是通过 Tavily API 搜索当前网络信息的技能,适用于研究和事实核查。它支持多种搜索筛选条件,并可返回结构化结果和可选的 AI 摘要。

主要功能

  1. 01通过 Tavily 搜索网页
  2. 02基础与高级搜索深度
  3. 03主题和时间筛选
  4. 04指定或排除网站域名
  5. 05JSON 结果与 AI 摘要

适用场景

  1. 01查找近期新闻和动态
  2. 02通过权威来源核查说法
  3. 03查找技术文档
  4. 04收集金融信息

安装

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

$npx skills add https://github.com/jwynia/agent-skills --skill web-search-tavily

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

附带文件scripts/search.ts

详细介绍

Web Search(Tavily API)

使用 Tavily 的 AI 优化搜索 API 搜索网页。返回高质量的结构化结果,包含相关性评分和可选的 AI 生成摘要。

**注意:**此技能需要 Tavily API 密钥。如需使用 Agent 内置功能进行基本网页搜索,请参阅 web-search。

何时使用此技能

在以下情况下使用此技能:

  • 需要查找训练数据中没有的最新信息
  • 用户询问近期事件、新闻或动态
  • 需要核实事实或查找权威来源
  • 研究需要实时网页数据
  • 提到的关键词包括:搜索、查找、在线查找、当前、最新、新闻

在以下情况下不要使用此技能:

  • 信息已在知识库中,无需核实
  • 用户询问不会变化的历史事实
  • 正在处理本地文件或代码(请使用其他工具)
  • 存在更具体的任务技能(例如,文档查询)

前提条件

使用此技能前,请确保:

  • TAVILY_API_KEY 环境变量已设置为有效的 API 密钥
  • 已安装 Deno(用于运行搜索脚本)
  • 可以访问互联网

在此处获取 Tavily API 密钥:https://tavily.com

快速开始

运行简单搜索:

deno run --allow-env --allow-net=api.tavily.com scripts/search.ts "your search query"

包含 AI 生成答案的示例:

deno run --allow-env --allow-net=api.tavily.com scripts/search.ts "React 19 new features" --answer

脚本用法

deno run --allow-env --allow-net=api.tavily.com scripts/search.ts [options] "query"
选项
选项描述默认值
--answer包含 AI 生成的答案摘要false
--depth <level>搜索深度:basic 或 advancedbasic
--results <n>返回的结果数量5
--topic <type>主题类型:general、news 或 financegeneral
--time <range>时间筛选:day、week、month 或 yearnone
--include <domains>仅包含这些域名(以逗号分隔)none
--exclude <domains>排除这些域名(以逗号分隔)none
--raw在结果中包含原始页面内容false
--json输出为 JSON(供程序使用)false
--help显示帮助信息-

搜索参数

主题类型
  • general(默认):跨所有内容类型进行广泛网页搜索
  • news:优先搜索新闻文章和时事
  • finance:聚焦金融信息和市场数据
搜索深度
  • basic(默认):搜索速度快,适用于大多数查询
  • advanced:进行更深入的搜索,结果更全面(速度较慢,API 成本较高)
时间范围

按时效筛选结果:

  • day:过去 24 小时
  • week:过去 7 天
  • month:过去 30 天
  • year:过去 365 天
域名筛选

控制结果中显示的网站:

# Only search documentation sites
scripts/search.ts "React hooks" --include docs.react.dev,developer.mozilla.org

# Exclude social media
scripts/search.ts "AI news" --exclude twitter.com,reddit.com

输出格式

易读输出(默认)
🔍 Search: "React 19 new features"

Found 5 results in 234ms

📝 AI Answer:
────────────────────────────────────────────────────────────
React 19 introduces several new features including...
────────────────────────────────────────────────────────────

1. React 19 Release Notes
   https://react.dev/blog/2024/04/25/react-19
   React 19 is now available on npm! This release includes...
   Score: 0.987

2. What's New in React 19
   https://example.com/react-19-features
   A comprehensive overview of React 19's new features...
   Score: 0.945
JSON 输出(--json)
{
  "query": "React 19 new features",
  "results": [
    {
      "title": "React 19 Release Notes",
      "url": "https://react.dev/blog/2024/04/25/react-19",
      "content": "React 19 is now available on npm...",
      "score": 0.987,
      "published_date": "2024-04-25"
    }
  ],
  "answer": "React 19 introduces several new features...",
  "response_time": 234
}
结果字段
字段类型描述
titlestring页面标题
urlstring来源 URL
contentstring页面中的相关摘录
scorenumber相关性评分(0-1,越高越好)
published_datestring发布日期(如有)
raw_contentstring完整页面内容(仅使用 --raw 时)

示例

示例 1:时事搜索

场景:查找某个技术主题的近期新闻

scripts/search.ts "OpenAI GPT-5 announcement" --topic news --time week --answer

预期输出:有关 GPT-5 的近期新闻文章,以及 AI 生成的摘要

示例 2:文档查询

场景:查找特定技术文档

scripts/search.ts "Deno deploy edge functions tutorial" --depth advanced --results 10

预期输出:来自文档和教程网站的全面结果

示例 3:事实核实

场景:核实某项具体说法或统计数据

scripts/search.ts "world population 2024" --include un.org,worldbank.org,census.gov --json

预期输出:来自权威来源的 JSON 结果,可用于程序化核实

示例 4:金融研究

场景:研究市场信息

scripts/search.ts "NVIDIA stock analysis 2024" --topic finance --answer

预期输出:金融分析和市场数据,以及 AI 摘要

常见问题和解决方案

问题:“未设置 TAVILY_API_KEY 环境变量”

症状:脚本立即退出,并提示 API 密钥错误

解决方案:

  1. 从 https://tavily.com 获取 API 密钥
  2. 设置环境变量:
    export TAVILY_API_KEY="your-api-key-here"
    
  3. 或在运行时直接设置变量:
    TAVILY_API_KEY="your-key" deno run --allow-env --allow-net=api.tavily.com scripts/search.ts "query"
    
问题:“Tavily API 密钥无效”

症状:401 身份验证错误

解决方案:

  1. 确认 API 密钥正确(没有多余空格)
  2. 检查 API 密钥是否已过期
  3. 确认 Tavily 账户处于有效状态
问题:“Tavily API 超出速率限制”

症状:返回 429 错误

解决方案:

  1. 稍等片刻后重试
  2. 降低请求频率
  3. 考虑升级 Tavily 方案以提高限额
问题:未返回结果

症状:结果数组为空

解决方案:

  1. 尝试使用更宽泛的搜索词
  2. 移除可能限制过严的域名筛选条件
  3. 检查该主题是否存在于网上
  4. 对于较难的查询,尝试使用 --depth advanced

限制

此技能有以下限制:

  • 需要有效的互联网连接
  • API 速率限制取决于你的 Tavily 方案
  • 结果取决于 Tavily 的索引覆盖范围
  • 无法访问付费墙内容或需要登录的内容
  • 实时准确性取决于 Tavily 的抓取频率
  • 查询长度和结果数量受 API 限制

相关技能

  • research-workflow:适用于需要通过规划和综合分析进行多次搜索的全面研究项目

评论

支持 Markdown