关于 Tavily Search MCP Server
Tavily Search MCP Server 将 Tavily Search API 接入 MCP,面向需要网页检索内容的 LLM 应用。它支持搜索深度、时间和域名筛选,并可提取相关内容。
主要功能
- 01按深度和主题进行网页搜索
- 02按时间范围筛选结果
- 03提取相关搜索内容
- 04包含图片、描述或简短答案
- 05按域名纳入或排除结果
适用场景
- 01为 LLM 应用检索网页信息
- 02查找指定时间范围内的新闻
- 03限定搜索结果的网站范围
MCP 相关
该 MCP 服务向客户端提供 tavily_search 工具,可调用 Tavily Search API 搜索网页并返回筛选后的结果与相关内容。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Tavily Search MCP 服务
一个集成 Tavily Search API 的 MCP 服务实现,为大模型提供优化的搜索能力。
功能
- 网页搜索: 执行针对大模型优化的网页搜索,并可控制搜索深度、主题和时间范围。
- 内容提取: 从搜索结果中提取最相关的内容,并针对质量和大小进行优化。
- 可选功能: 包含图片、图片说明、大模型生成的简短回答和原始 HTML 内容。
- 域名筛选: 在搜索结果中包含或排除特定域名。
工具
- tavily_search
- 使用 Tavily Search API 执行网页搜索。
- 输入:
query(string, required):搜索查询。search_depth(string, optional):"basic" 或 "advanced"(默认值:"basic")。topic(string, optional):"general" 或 "news"(默认值:"general")。days(number, optional):新闻搜索回溯的天数(默认值:3)。time_range(string, optional):时间范围筛选("day"、"week"、"month"、"year" 或 "d"、"w"、"m"、"y")。max_results(number, optional):结果数量上限(默认值:5)。include_images(boolean, optional):包含相关图片(默认值:false)。include_image_descriptions(boolean, optional):包含图片说明(默认值:false)。include_answer(boolean, optional):包含大模型生成的简短回答(默认值:false)。include_raw_content(boolean, optional):包含原始 HTML 内容(默认值:false)。include_domains(string[], optional):要包含的域名。exclude_domains(string[], optional):要排除的域名。
设置指南 🚀
1. 准备工作
- 在电脑上安装 Claude Desktop。
- 获取 Tavily API 密钥: a. 注册 Tavily API 账户。 b. 选择套餐(提供免费套餐)。 c. 在 Tavily 控制面板中生成 API 密钥。
2. 安装
-
将此仓库克隆到电脑上的某个位置:
git clone https://github.com/apappascs/tavily-search-mcp-server.git -
安装依赖并构建项目:
cd tavily-search-mcp-servernpm installnpm run build
3. 与 Claude Desktop 集成
-
打开 Claude Desktop 配置文件:
# 在 Mac 上: ~/Library/Application\ Support/Claude/claude_desktop_config.json # 在 Windows 上: %APPDATA%\Claude\claude_desktop_config.json -
根据你希望使用
npm还是docker运行服务,在配置中的mcpServers对象里添加以下任意一项:选项 A:使用 NPM(stdio 传输)
{ "mcpServers": { "tavily-search-server": { "command": "node", "args": [ "/Users/<username>/<FULL_PATH...>/tavily-search-mcp-server/dist/index.js" ], "env": { "TAVILY_API_KEY": "your_api_key_here" } } } }选项 B:使用 NPM(SSE 传输)
{ "mcpServers": { "tavily-search-server": { "command": "node", "args": [ "/Users/<username>/<FULL_PATH...>/tavily-search-mcp-server/dist/sse.js" ], "env": { "TAVILY_API_KEY": "your_api_key_here" }, "port": 3001 } } }选项 C:使用 Docker
{ "mcpServers": { "tavily-search-server": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "TAVILY_API_KEY", "-v", "/Users/<username>/<FULL_PATH...>/tavily-search-mcp-server:/app", "tavily-search-mcp-server" ], "env": { "TAVILY_API_KEY": "your_api_key_here" } } } } -
重要步骤:
- 将
/Users/<username>/<FULL_PATH...>/tavily-search-mcp-server替换为克隆仓库的实际完整路径。 - 在
env部分添加你的 Tavily API 密钥。最好始终将 API 密钥等机密信息设为环境变量。 - 即使在 Windows 上,路径也要使用正斜杠(
/)。 - 如果使用 docker,请确保先使用
docker build -t tavily-search-mcp-server:latest .构建镜像。
- 将
-
重启 Claude Desktop,使更改生效。
通过 Smithery 安装
通过 Smithery 自动为 Claude Desktop 安装 Tavily Search:
npx -y @smithery/cli install @apappascs/tavily-search-mcp-server --client claude
环境设置(适用于 npm)
-
将
.env.example复制为.env:cp .env.example .env -
在
.env文件中填入你的实际 Tavily API 密钥:TAVILY_API_KEY=your_api_key_here注意:切勿将实际 API 密钥提交到版本控制中。出于安全考虑,
.env文件已被 git 忽略。
使用 NPM 运行
使用 Node.js 启动服务:
node dist/index.js
对于 sse 传输:
node dist/sse.js
使用 Docker 运行
-
构建 Docker 镜像(如果尚未构建):
docker build -t tavily-search-mcp-server:latest . -
使用以下命令运行 Docker 容器:
用于 stdio 传输:
docker run -it --rm -e TAVILY_API_KEY="your_api_key_here" tavily-search-mcp-server:latest用于 sse 传输:
docker run -it --rm -p 3001:3001 -e TAVILY_API_KEY="your_api_key_here" -e TRANSPORT="sse" tavily-search-mcp-server:latest你也可以直接使用 Shell 环境变量,这种做法更加安全:
docker run -it --rm -p 3001:3001 -e TAVILY_API_KEY=$TAVILY_API_KEY -e TRANSPORT="sse" tavily-search-mcp-server:latestNote: The second command demonstrates the recommended approach of using
-e TAVILY_API_KEY=$TAVILY_API_KEYto pass the value of yourTAVILY_API_KEYenvironment variable into the Docker container. This keeps your API key out of your command history, and it is generally preferred over hardcoding secrets in commands. -
Using docker compose
Run:
docker compose up -dTo stop the server:
docker compose down
License
This MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。