使用说明
Tavily Search MCP Server
一个基于 Model Context Protocol (MCP) 的搜索工具服务器,为 AI 助手(如 Claude Desktop、Cursor 等)提供联网搜索能力。
安装与配置
1. 克隆项目
git clone <repository-url>
cd search-mcp
2. 安装依赖
npm install
3. 配置环境变量
复制 .env.example 文件为 .env:
cp .env.example .env
编辑 .env 文件,设置你的 Tavily API 密钥:
TAVILY_API_KEY=your_tavily_api_key_here
4. 获取 Tavily API 密钥
- 访问 Tavily 官网
- 注册账号并登录
- 在控制台获取 API 密钥
使用方法
作为独立服务器运行
node index.js
在 AI 助手中使用
Claude Desktop 配置
在 Claude Desktop 的 MCP 配置文件中添加:
{
"mcpServers": {
"tavily-search": {
"command": "node",
"args": ["/path/to/search-mcp/index.js"],
"disabled": false,
"autoApprove": []
}
}
}
Cursor 配置
在 Cursor 的 MCP 设置中添加类似的配置。
工具说明
tavily_search
- 描述: 使用 Tavily API 搜索联网信息(稳定、高质量)
- 参数:
query(string, required): 搜索关键词
- 返回: 格式化的搜索结果,包含标题、链接和摘要
项目结构
search-mcp/
├── index.js # 主服务器文件
├── package.json # 项目依赖配置
├── package-lock.json # 依赖锁文件
├── .env.example # 环境变量示例
├── .gitignore # Git 忽略文件
└── README.md # 项目说明文档
技术栈
- Node.js: JavaScript 运行时环境
- MCP SDK: Model Context Protocol 官方 SDK
- Tavily API: 高质量的搜索 API
- dotenv: 环境变量管理
开发指南
添加新的搜索源
项目已预装多个搜索库,可以轻松扩展:
duck-duck-scrape: DuckDuckGo 搜索google-it: Google 搜索
修改搜索参数
在 index.js 中修改搜索配置:
const searchResults = await client.search(query, {
maxResults: 8, // 最大结果数
includeAnswer: false, // 是否包含答案
includeRawContent: false, // 是否包含原始内容
searchDepth: "basic", // 搜索深度
});
故障排除
常见问题
-
"未设置 TAVILY_API_KEY 环境变量"
- 确保已创建
.env文件并设置了正确的 API 密钥 - 运行
cp .env.example .env并编辑文件
- 确保已创建
-
搜索返回空结果
- 检查网络连接
- 验证 API 密钥是否有效
- 尝试不同的搜索关键词
-
服务器启动失败
- 确保已安装所有依赖:
npm install - 检查 Node.js 版本(需要 Node.js 16+)
- 确保已安装所有依赖:
日志查看
服务器会在控制台输出日志,帮助诊断问题:
[MCP] 正在搜索: <query>- 搜索开始[MCP] 搜索出错: <error>- 错误信息
许可证
本项目基于 ISC 许可证开源。