塔维利搜索MCP服务添加福利群:解决AI开发者的「MCP实战痛点」
这是一个集成Tavily搜索API的MCP服务器实现,为大型语言模型(LLM)提供优化的搜索能力。
query(字符串,必填):搜索查询。search_depth(字符串,可选):"basic"或"advanced"(默认:"basic")。topic(字符串,可选):"general"或"news"(默认:"general")。days(数字,可选):新闻搜索的天数范围(默认:3)。time_range(字符串,可选):时间范围过滤器("day"、"week"、"month"、"year"或"d"、"w"、"m"、"y")。max_results(数字,可选):最大结果数(默认:5)。include_images(布尔值,可选):包含相关图片(默认:false)。include_image_descriptions(布尔值,可选):包含图片描述(默认:false)。include_answer(布尔值,可选):包含LLM生成的简短答案(默认:false)。include_raw_content(布尔值,可选):包含原始HTML内容(默认:false)。include_domains(字符串数组,可选):要包含的域名。exclude_domains(字符串数组,可选):要排除的域名。将此仓库克隆到您计算机上的某个位置:
git clone https://github.com/apappascs/tavily-search-mcp-server.git

安装依赖项并构建项目:
cd tavily-search-mcp-server

npm install
npm run build
打开您的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密钥等机密信息作为环境变量。/)。docker build -t tavily-search-mcp-server:latest .构建镜像。重新启动Claude Desktop以使更改生效。
要通过Smithery自动为Claude Desktop安装Tavily搜索:
npx -y @smithery/cli install @apappascs/tavily-search-mcp-server --client claude
将.env.example复制到.env:
cp .env.example .env

使用您的实际Tavily API密钥更新.env文件:
TAVILY_API_KEY=your_api_key_here
注意:切勿将您的实际API密钥提交到版本控制中。出于安全原因,.env文件被git忽略。
使用Node.js启动服务器:
node dist/index.js
对于sse传输:
node dist/sse.js
构建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:latest

**注意:**第二个命令演示了使用-e TAVILY_API_KEY=$TAVILY_API_KEY将TAVILY_API_KEY环境变量的值传递到Docker容器的推荐方法。这可以避免将API密钥放入命令历史记录中,通常比在命令中硬编码机密更可取。
使用docker compose
运行:
docker compose up -d
停止服务器:
docker compose down
此MCP服务器根据MIT许可证授权。这意味着您可以自由使用、修改和分发该软件,但需遵守MIT许可证的条款和条件。有关详细信息,请参阅项目仓库中的LICENSE文件。