网络数据采集服务

Tavily MCP服务器提供实时网络搜索、网页数据提取、网站地图生成和网站爬取功能,适用于知识图谱构建和网络数据集成。

  • by tavily-ai
  • TypeScript
  • 本地部署
  • 2461 星标
  • 更新于
在 GitHub 查看 tavily-ai/tavily-mcp

使用说明

Tavily MCP服务器

Tavily MCP服务器提供:

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

📚 有用的资源

  • 教程 Tavily MCP与Neo4j MCP服务器的结合
  • 教程 VS代码中Tavily MCP与Cline的集成

远程MCP服务器

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

只需将远程MCP服务器URL与Tavily API密钥一起使用:

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

从获取Tavily API密钥 tavily.com.

或者,如果MCP客户端支持以下操作,则可以通过授权头传递API密钥:

Authorization: Bearer <your-api-key>

注: 使用远程MCP时,您可以通过包含 DEFAULT_PARAMETERS 包含具有所需默认值的JSON对象的标头。例子:

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

连接到克劳德代码

克劳德代码 是Anthropic为Claude提供的官方CLI工具。您可以使用添加Tavily MCP服务器 claude mcp add 命令。有两种方法可以进行身份验证:

选项1:URL中的API密钥

在URL中直接传递API密钥。替换 <your-api-key> 与你的实际 Tavilly 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 启动克劳德代码
  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搜索、提取、映射和爬网工具。

连接到光标

点击⬆️ 添加到光标⬆️ 按钮,这将为您完成大部分工作,但您仍需要编辑配置以添加API-KEY。您可以获得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 Remote MCP服务器支持安全的OAuth身份验证,允许您与兼容的客户端无缝连接和授权。

如何设置OAuth身份验证

A.使用MCP检查器:

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

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

B.使用其他MCP客户端(示例:游标):

您可以将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身份验证是可选的。您仍然可以通过在URL查询参数中包含Tavily API密钥来随时使用API密钥身份验证(?tavilyApiKey=...)或者通过将其设置在 Authorization 如前所述。

选择用于OAuth的API密钥

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

  • 如果您设置了一个名为 mcp_auth_default 在你的 个人账户,该密钥将用于身份验证流。
  • 如果你是a的一部分 团队 它有一个名为的密钥 mcp_auth_default,该密钥将用于身份验证流。
  • 如果你有 两者 名为的个人密钥和团队密钥 mcp_auth_default,the 个人密钥将被优先考虑.
  • 如果没有 mcp_auth_default 密钥已设置 default 将使用您个人帐户中的密钥。如果没有 default 如果设置了密钥,将使用第一个可用密钥。

本地MCP

先决条件🔧

在开始之前,请确保您已经:

  • Tavilly API密钥
    • 如果您没有Tavily API密钥,您可以注册一个免费帐户 这里
  • 克劳德桌面 或 光标
  • Node.js (v20或更高)
    • 您可以通过运行以下命令来验证您的Node.js安装:
      • node --version
  • Git 已安装(仅在使用Git安装方法时需要)
    • 在macOS上: brew install git
    • 在Linux上:
      • Debian/Ubuntu: sudo apt install git
      • RedHat/Cents: sudo yum install git
    • 在Windows上:下载 Windows 版 Git

使用NPX运行

npx -y tavily-mcp@latest 

默认参数配置⚙️

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

配置示例

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"
      }
    }
  }
}

隐私说明: 塔维利哈希 human_id 服务器端(SHA-256)在存储之前,因此原始值永远不会持久化。即便如此,在可能的情况下,更喜欢不透明的标识符(例如内部用户ID)而不是像PII这样的原始电子邮件。

致谢✨