Tavily

官方

Tavily 官方 MCP 服务器,用于 AI 搜索和内容提取,为 MCP 客户端提供网页搜索、爬取和提取工具。

你可以用 Tavily MCP 做什么?

  • 实时搜索网络 — 使用 tavily-search 查询当前信息、新闻或答案。
  • 从URL提取结构化内容 — 使用 tavily-extract 从特定网页中提取干净、相关的数据。
  • 映射网站结构 — 通过 tavily-map 获取域中页面和部分的概览。
  • 系统化爬取网站 — 使用 tavily-crawl 从起始URL探索多个链接页面。

文档

Tavily MCP 服务器

GitHub Repo stars npm smithery badge

Tavily MCP 服务器提供:

  • 搜索、提取、映射、爬取工具
  • 通过 tavily-search 工具实现实时网页搜索功能
  • 通过 tavily-extract 工具从网页中智能提取数据
  • 强大的网站映射工具,可创建网站的结构化地图
  • 可系统化探索网站的网页爬虫

📚 实用资源

  • 教程:将 Tavily MCP 与 Neo4j MCP 服务器结合使用
  • 教程:在 VS Code 中将 Tavily MCP 与 Cline 集成

远程 MCP 服务器

直接连接到 Tavily 的远程 MCP 服务器,无需在本地运行。这提供了无缝体验,无需本地安装或配置。

只需使用远程 MCP 服务器 URL 和您的 Tavily API 密钥:

https://mcp.tavily.com/mcp/?tavilyApiKey=<your-api-key> 

tavily.com 获取您的 Tavily API 密钥。

或者,如果 MCP 客户端支持,您可以通过 Authorization 标头传递 API 密钥:

Authorization: Bearer <your-api-key>

注意: 使用远程 MCP 时,您可以通过包含一个 DEFAULT_PARAMETERS 标头来为所有请求指定默认参数,该标头包含一个带有您所需默认值的 JSON 对象。示例:

{"include_images":true, "search_depth": "basic", "max_results": 10}

连接到 Claude Code

Claude Code 是 Anthropic 为 Claude 提供的官方 CLI 工具。您可以使用 claude mcp add 命令添加 Tavily MCP 服务器。有两种身份验证方式:

选项 1:URL 中的 API 密钥

直接在 URL 中传递您的 API 密钥。将 <your-api-key> 替换为您实际的 Tavily API 密钥

claude mcp add --transport http tavily https://mcp.tavily.com/mcp/?tavilyApiKey=<your-api-key>

选项 2:OAuth 身份验证流程

添加服务器时不在 URL 中包含 API 密钥:

claude mcp add --transport http tavily https://mcp.tavily.com/mcp

添加后,您需要完成身份验证流程:

  1. 运行 claude 启动 Claude Code
  2. 输入 /mcp 打开 MCP 服务器管理
  3. 选择 Tavily 服务器并完成身份验证过程

提示: 在任一命令中添加 --scope user,使 Tavily MCP 服务器在所有项目中全局可用:

claude mcp add --transport http --scope user tavily https://mcp.tavily.com/mcp/?tavilyApiKey=<your-api-key>

配置完成后,您将能够使用 Tavily 的搜索、提取、映射和爬取工具。

连接到 Cursor

Install MCP Server

点击 ⬆️ 添加到 Cursor ⬆️ 按钮,这将为您完成大部分工作,但您仍需编辑配置以添加您的 API 密钥。您可以在此处获取 Tavily API 密钥。

点击按钮后,您应该会被重定向到 Cursor ...

步骤 1

点击安装按钮

步骤 2

您应该会看到 MCP 现已安装,如果蓝色开关尚未打开,请手动将其打开。您还需要编辑配置以包含您自己的 Tavily API 密钥。

步骤 3

然后您将被重定向到您的 mcp.json 文件,您需要在该文件中添加 your-api-key

{
  "mcpServers": {
    "tavily-remote-mcp": {
      "command": "npx -y mcp-remote https://mcp.tavily.com/mcp/?tavilyApiKey=<your-api-key>",
      "env": {}
    }
  }
}

远程 MCP 服务器 OAuth 流程

Tavily 远程 MCP 服务器支持安全的 OAuth 身份验证,允许您与兼容的客户端无缝连接和授权。

如何设置 OAuth 身份验证

A. 使用 MCP Inspector:

  • 打开 MCP Inspector 并点击“打开身份验证设置”。
  • 选择 OAuth 流程并完成以下步骤:
    1. 元数据发现
    2. 客户端注册
    3. 准备授权
    4. 请求授权并获取授权码
    5. 令牌请求
    6. 身份验证完成

完成后,您将收到一个访问令牌,允许您安全地向 Tavily 远程 MCP 服务器发出经过身份验证的请求。

B. 使用其他 MCP 客户端(例如:Cursor):

您可以配置 MCP 客户端使用 OAuth,而无需在 URL 中包含 Tavily API 密钥。例如,在您的 mcp.json 中:

{
  "mcpServers": {
    "tavily-remote-mcp": {
      "command": "npx mcp-remote https://mcp.tavily.com/mcp",
      "env": {}
    }
  }
}

如果您需要清除存储的 OAuth 凭据并重新进行身份验证,请运行:

rm -rf ~/.mcp-auth

注意:

  • OAuth 身份验证是可选的。您仍然可以随时使用 API 密钥身份验证,方法是在 URL 查询参数中包含您的 Tavily API 密钥(?tavilyApiKey=...),或如上所述在 Authorization 标头中设置它。

选择用于 OAuth 的 API 密钥

OAuth 身份验证成功后,您可以通过将其命名为 mcp_auth_default 来控制使用哪个 API 密钥:

  • 如果您在个人账户中设置了一个名为 mcp_auth_default 的密钥,则该密钥将用于身份验证流程。
  • 如果您所在的团队有一个名为 mcp_auth_default 的密钥,则该密钥将用于身份验证流程。
  • 如果您同时拥有名为 mcp_auth_default 的个人密钥和团队密钥,个人密钥将被优先使用
  • 如果未设置 mcp_auth_default 密钥,则将使用您个人账户中的 default 密钥。如果未设置 default 密钥,则将使用第一个可用的密钥。

本地 MCP

前提条件 🔧

开始之前,请确保您拥有:

  • Tavily API 密钥
    • 如果您没有 Tavily API 密钥,可以在此处注册免费账户
  • Claude DesktopCursor
  • Node.js(v20 或更高版本)
    • 您可以通过运行以下命令来验证 Node.js 安装:
      • node --version
  • 已安装 Git(仅在使用 Git 安装方法时需要)
    • 在 macOS 上:brew install git
    • 在 Linux 上:
      • Debian/Ubuntu:sudo apt install git
      • RedHat/CentOS:sudo yum install git
    • 在 Windows 上:下载 Git for Windows

使用 NPX 运行

npx -y tavily-mcp@latest 

默认参数配置 ⚙️

您可以使用 DEFAULT_PARAMETERS 环境变量为 tavily-search 工具设置默认参数值。这允许您配置默认搜索行为,而无需在每个请求中指定这些参数。

配置示例

export DEFAULT_PARAMETERS='{"include_images": true}'

客户端使用示例

{
  "mcpServers": {
    "tavily-mcp": {
      "command": "npx",
      "args": ["-y", "tavily-mcp@latest"],
      "env": {
        "TAVILY_API_KEY": "your-api-key-here",
        "DEFAULT_PARAMETERS": "{\"include_images\": true, \"max_results\": 15, \"search_depth\": \"advanced\"}"
      }
    }
  }
}

识别最终用户(可选)

您可以选择通过设置 TAVILY_HUMAN_ID 环境变量来识别代表其发出请求的最终用户。设置后,Tavily MCP 会将其作为 X-Human-Id 标头转发到每个 API 调用,从而实现按用户分析。

这是完全可选的——不设置它,行为保持不变。

{
  "mcpServers": {
    "tavily-mcp": {
      "command": "npx",
      "args": ["-y", "tavily-mcp@latest"],
      "env": {
        "TAVILY_API_KEY": "your-api-key-here",
        "TAVILY_HUMAN_ID": "your-user-id"
      }
    }
  }
}

隐私说明: Tavily 在存储前会在服务器端对 human_id 进行哈希处理(SHA-256),因此原始值永远不会被持久化。即便如此,请尽可能使用不透明标识符(例如内部用户 ID),而不是原始的个人身份信息(如电子邮件)。

致谢 ✨