使用说明
项目简介
Tavily Search MCP服务器是一个实现了Model Context Protocol (MCP) 的应用后端,它利用 Tavily API 提供网络搜索能力。这个服务器旨在为大型语言模型 (LLM) 客户端提供实时的网络信息检索功能,作为其上下文信息的重要来源。通过标准化的 MCP 协议,它可以与各种兼容 MCP 协议的 LLM 客户端(如 Claude Desktop)无缝集成。
主要功能点
- 强大的网络搜索: 利用 Tavily API 访问高质量的商业、新闻、金融和政治信息。
- 可配置的搜索参数: 支持设置搜索深度(基本/高级)、结果数量、是否包含图片、以及特定新闻主题搜索。
- 优化的搜索结果: 返回清晰的 Markdown 格式化结果,包含内容摘要和来源 URL。
- 异步快速响应: 使用异步请求处理,提供快速的搜索响应。
- 完善的错误处理: 内置错误处理和自动重试机制,确保服务的稳定性。
- 灵活的部署方式: 可以通过 Smithery 快速安装,也支持手动安装和配置。
安装步骤
-
创建虚拟环境: 打开终端,导航到您希望安装 Tavily Search MCP 服务器的目录,并执行以下命令创建 Python 虚拟环境:
uv venv -
激活虚拟环境:
- Windows:
.venv\Scripts\activate - Unix/MacOS:
source .venv/bin/activate
- Windows:
-
安装依赖: 在虚拟环境中,使用 'uv pip' 安装项目依赖:
uv pip install -e . -
配置 API 密钥: 创建 '.env' 文件,并将您的 Tavily API 密钥填入其中。您需要访问 Tavily 官网 获取 API 密钥。
echo TAVILY_API_KEY=YOUR_TAVILY_API_KEY > .env请将 'YOUR_TAVILY_API_KEY' 替换为您实际的 API 密钥。
-
启动服务器: 进入 'mcp_tavily_search' 目录并启动服务器:
cd mcp_tavily_search uv run server.py服务器成功启动后,您应该能在终端看到相关的日志输出。
服务器配置
要将 Tavily Search MCP 服务器与 MCP 客户端(例如 Claude Desktop)连接,您需要配置客户端的 MCP 服务器设置。以下是 Claude Desktop 的配置示例,您需要根据您的实际安装路径进行调整:
{ "mcpServers": { "tavily-search": { "command": "uv", "args": [ "--directory", "/path/to/mcp-tavily-search/mcp_tavily_search", // 请替换为您的 mcp-tavily-search 项目的绝对路径 "run", "server.py" ], "env": { "TAVILY_API_KEY": "YOUR-API-KEY" // 您的 Tavily API 密钥,也可以直接填入,但不推荐 } } } }
配置参数说明:
- 'server name': 'tavily-search' (服务器名称,客户端内唯一标识)
- 'command': 'uv' (启动命令,这里使用 uv 运行器)
- 'args': 启动参数列表,包括:
- '--directory': MCP 服务器代码所在的目录的绝对路径,请务必替换为实际路径。
- 'run server.py': 运行 'server.py' 脚本启动服务器。
- 'env': 环境变量配置,用于传递 API 密钥等敏感信息,'TAVILY_API_KEY' 的值可以留空,因为服务器会从 '.env' 文件中读取。
Claude Desktop 配置文件路径:
- Windows: '%APPDATA%\Claude\claude_desktop_config.json'
- Unix/MacOS: '~/.config/Claude/claude_desktop_config.json'
基本使用方法
配置完成后,在兼容 MCP 协议的 LLM 客户端中,您可以使用 'search' 工具进行网络搜索。以下是一些 JSON 格式的工具调用示例,您可以将它们发送给 MCP 服务器以执行搜索操作。
-
基本搜索: 搜索 "人工智能最新进展"。
{ "name": "search", "arguments": { "query": "人工智能最新进展" } } -
高级搜索 (包含图片): 搜索 "SpaceX 的成就",并请求包含图片结果。
{ "name": "search", "arguments": { "query": "SpaceX 的成就", "search_depth": "advanced", "include_images": true } } -
新闻主题搜索: 搜索关于 "气候变化对农业的影响" 的新闻。
{ "name": "search", "arguments": { "query": "气候变化对农业的影响", "topic": "news" } }
在 LLM 客户端中,当需要网络搜索功能时,就可以调用名为 'search' 的工具,并将搜索query等参数以 JSON 格式传递给 Tavily Search MCP 服务器,服务器会将搜索结果返回给客户端,从而实现 LLM 对实时网络信息的访问。
信息
分类
网页与API