关于 Tavily Mcp
Tavily MCP 是 Tavily 提供的 MCP 服务,提供实时网页搜索、内容提取、网站映射和爬取工具。它可以在本地通过 npx 运行,也可以直接连接 Tavily 的远程 MCP 服务。项目支持 API 密钥与 OAuth 两种认证方式。
主要功能
- 01实时网页搜索(tavily-search 工具)
- 02网页内容提取(tavily-extract 工具)
- 03网站结构映射与站点爬取
- 04本地 npx 运行与远程 MCP 连接
- 05API 密钥或 OAuth 认证
- 06通过 DEFAULT_PARAMETERS 设置默认参数
适用场景
- 01为 AI 助手提供实时网络搜索结果
- 02从网页中提取结构化内容用于分析
- 03梳理网站结构或批量爬取站点内容
MCP 相关
Tavily MCP 是一个 MCP 服务,向 MCP 客户端暴露 search、extract、map 和 crawl 工具,可通过本地进程或远程端点接入 Claude Code、Cursor 等客户端。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
5收录的工具列表 · 更新于 3 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| query | string | 是 | 搜索查询 |
| search_depth | enum | 否 | 搜索深度。'basic' 表示常规结果,'advanced' 表示更全面的搜索,'fast' 表示优化低延迟且相关性高的搜索,'ultra-fast' 表示优先考虑延迟。basic | advanced | fast | ultra-fast |
| topic | enum | 否 | 搜索类别。这将决定使用哪些 Agent 执行搜索。general |
| time_range | enum | 否 | 从当前日期向前回溯的时间范围,用于筛选搜索结果。day | week | month | year |
| start_date | string | 否 | 返回指定开始日期之后的所有结果。必须采用 YYYY-MM-DD 格式。 |
| end_date | string | 否 | 返回指定结束日期之前的所有结果。必须采用 YYYY-MM-DD 格式 |
| max_results | number | 否 | 要返回的搜索结果数量上限 |
| include_images | boolean | 否 | 在响应中包含与查询相关的图片列表 |
| include_image_descriptions | boolean | 否 | 在响应中包含与查询相关的图片及其描述列表 |
| include_raw_content | boolean | 否 | 包含每个搜索结果经清理和解析的 HTML 内容 |
| include_domains | array | 否 | 要在搜索结果中明确包含的域名列表;如果用户要求搜索特定网站,请将该网站的域名设为此项 |
| exclude_domains | array | 否 | 要明确排除的域名列表;如果用户要求排除某个域名,请将该网站的域名设为此项 |
| country | string | 否 | 提升来自特定国家/地区的搜索结果排名。必须使用完整国家/地区名称(例如,'United States'、'Japan'、'Germany')。不支持 ISO 国家/地区代码(例如,'us'、'jp')。仅当主题为 general 时可用。支持的国家/地区完整列表请参阅 https://docs.tavily.com/documentation/api-reference/search。 |
| include_favicon | boolean | 否 | 是否包含每条结果的 favicon URL |
| exact_match | boolean | 否 | 仅返回包含查询中引号内确切短语的结果 |
详细介绍
Tavily MCP Server
Tavily MCP 服务提供:
- 搜索、提取、映射和爬取工具
- 通过 tavily-search 工具实现实时网页搜索
- 通过 tavily-extract 工具从网页中智能提取数据
- 强大的网页映射工具,可创建网站的结构化地图
- 可系统地探索网站的网页爬虫
📚 实用资源
远程 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 时,你可以添加一个包含 JSON 对象的 DEFAULT_PARAMETERS 标头,为所有请求指定默认参数。示例:
{"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
添加后,你需要完成身份验证流程:
- 运行
claude启动 Claude Code - 输入
/mcp打开 MCP 服务管理界面 - 选择 Tavily 服务并完成身份验证
提示: 在任一命令中添加 --scope user,即可让所有项目都能使用 Tavily MCP 服务:
claude mcp add --transport http --scope user tavily https://mcp.tavily.com/mcp/?tavilyApiKey=<your-api-key>
配置完成后,你就可以使用 Tavily 的搜索、提取、映射和爬取工具。
连接到 Cursor
点击 ⬆️ Add to 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 流程并完成以下步骤:
- 发现元数据
- 注册客户端
- 准备授权
- 请求授权并获取授权码
- 请求令牌
- 完成身份验证
完成后,你将获得一个访问令牌,以便向 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 身份验证后,你可以将某个 API 密钥命名为 mcp_auth_default,以控制 OAuth 使用哪个 API 密钥:
- 如果你在个人账户中设置了名为
mcp_auth_default的密钥,身份验证流程将使用该密钥。 - 如果你所属的团队设有名为
mcp_auth_default的密钥,身份验证流程将使用该密钥。 - 如果你同时拥有个人和团队的
mcp_auth_default密钥,将优先使用个人密钥。 - 如果未设置
mcp_auth_default密钥,则使用个人账户中的default密钥。如果未设置default密钥,则使用第一个可用密钥。
本地 MCP
先决条件 🔧
开始之前,请确保你已准备好:
- Tavily API 密钥
- 如果你没有 Tavily API 密钥,可以在此处注册免费账户
- Claude Desktop 或 Cursor
- Node.js(v20 或更高版本)
- 运行以下命令可以验证 Node.js 是否已安装:
node --version
- 运行以下命令可以验证 Node.js 是否已安装:
- 已安装 Git(仅在使用 Git 安装方式时需要)
- 在 macOS 上:
brew install git - 在 Linux 上:
- Debian/Ubuntu:
sudo apt install git - RedHat/CentOS:
sudo yum install git
- Debian/Ubuntu:
- 在 Windows 上:下载 适用于 Windows 的 Git
- 在 macOS 上:
使用 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 会在每次 API 调用时将其作为 X-Human-Id 标头转发,从而支持按用户进行分析。
这完全可选——不设置该变量,行为不会改变。
{
"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),而非电子邮件等原始个人身份信息(PII)。
致谢 ✨
- 感谢 Model Context Protocol 提供 MCP 规范
- 感谢 Anthropic 提供 Claude Desktop
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。