Tavily Anet MCP服务器
Rust实现 模型控制协议(MCP) 该服务器通过标准化协议提供Tavily搜索和内容提取功能。
该服务器集成了强大的Tavily API和Anet MCP框架,使人工智能代理能够执行网络搜索并从URL中提取内容 AI代理系统, 基于LLM的工具,或 研究自动化 这需要最新的网络信息。
______________________________________________________________________
特性
- ✅ Tavily Search集成了全面的参数
- 📄 Tavily Extract用于从URL中检索内容
- 🔄 用于消息传递的NATS传输层
- 🛠️ JSON-RPC 2.0兼容API
- ⚡ 与Tokio的异步请求处理
- 🔍 高级搜索功能,包括域过滤、时间范围和主题选择
______________________________________________________________________
需求
- 锈 1.70+
- NATS 本地运行或可通过网络访问的服务器
- Tavilly API密钥 (从 Tavily的网站)
______________________________________________________________________
安装
克隆存储库并构建服务器:
git clone https://github.com/yourusername/tavily-anet-mcp.git
cd tavily-anet-mcp将Tavily API密钥添加到 .env 文件:
TAVILY_API_KEY=your_api_key_here
NATS_URL=nats://localhost:4222
MCP_SUBJECT=mcp.requests______________________________________________________________________
入门指南
运行服务器
# Start a NATS server in another terminal or ensure one is already running
# Example:
nats-server
# Run the Tavily MCP server
cargo run测试服务器
您可以使用附带的测试客户端测试服务器:
cargo run --example test_client这将向服务器发送各种请求(初始化、listTools、搜索、提取)并打印响应。
______________________________________________________________________
可用工具
1.塔维利搜索
一个强大的网络搜索工具,使用Tavily的人工智能搜索引擎提供全面、实时的结果。
参数:
query(必填):搜索查询字符串search_depth:“基本”或“高级”(默认为“基本”)topic:“general”或“news”(默认值:“general”)days:返回结果的天数(新闻主题)time_range:“日”、“周”、“月”、“年”max_results:5-20(默认值:10)include_images:布尔值include_raw_content:布尔值include_domains:要包含的域数组exclude_domains:要排除的域数组
例子:
{
"name": "tavily-search",
"arguments": {
"query": "Latest developments in AI",
"max_results": 5,
"topic": "news",
"days": 7
}
}2.塔维利提取物
从网页中提取原始内容的工具。
参数:
urls(必填):从中提取内容的URL数组extract_depth:“基本”或“高级”(默认为“基本”)include_images:布尔值(默认值:false)
例子:
{
"name": "tavily-extract",
"arguments": {
"urls": ["https://www.rust-lang.org/"],
"extract_depth": "advanced",
"include_images": true
}
}______________________________________________________________________
建筑
服务器采用模块化设计:
- 工具 –Tavily搜索和提取实现
- 模型 –Tavilly API响应结构
- 实用 –格式化和辅助函数
- 运输 –NATS消息传输层
______________________________________________________________________
发展
添加新功能
要使用额外的Tavily功能扩展服务器:
- 在中定义响应结构
src/models/tavily.rs - 在中实施该工具
src/tools/遵循工具特性 - 在中添加格式化功能
src/utils/formatter.rs - 在中注册该工具
src/main.rs
______________________________________________________________________
故障排除
- 确保Tavily API密钥有效,并在环境变量中正确设置
- 检查NATS服务器是否正在运行且可访问
- 验证请求格式是否与每个工具的预期输入模式匹配
______________________________________________________________________
许可证
MIT许可证
______________________________________________________________________
