mcpField
T
Tavily-Anet-MCP Server

Tavily-Anet-MCP Server

本地服务
github.com/marekkucak搜索与检索083 周前更新

关于 Tavily-Anet-MCP Server

Tavily-Anet-MCP Server 是面向 AI Agent 和研究系统的 Rust MCP 服务,用于获取最新网络信息。它通过 NATS 传输提供 Tavily 搜索和 URL 内容提取。

主要功能

  1. 01Tavily 网页搜索
  2. 02提取 URL 内容
  3. 03按域名和时间范围筛选
  4. 04选择搜索主题和深度
  5. 05NATS 消息传输
  6. 06兼容 JSON-RPC 2.0 的 API

适用场景

  1. 01为 AI Agent 查找最新网络信息
  2. 02按指定时间范围搜索新闻
  3. 03提取一组 URL 的页面内容

MCP 相关

向 MCP 客户端提供 Tavily 搜索和 URL 提取工具。请求通过 NATS 传输,并使用兼容 JSON-RPC 2.0 的 API。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Tavily-Anet-MCP 服务

使用 Rust 实现的 Model Control Protocol (MCP) 服务,通过标准化协议提供 Tavily 搜索和内容提取功能。

此服务将强大的 Tavily API 与 Anet MCP 框架集成,使 AI Agent 能够执行网络搜索并从 URL 提取内容。它适用于构建需要最新网络信息的 AI Agent 系统、基于大模型的工具或研究自动化的开发者。


功能

  • ✅ 集成 Tavily Search,支持丰富的参数
  • 📄 使用 Tavily Extract 从 URL 检索内容
  • 🔄 使用 NATS 传输层传递消息
  • 🛠️ 兼容 JSON-RPC 2.0 的 API
  • ⚡ 使用 Tokio 异步处理请求
  • 🔍 高级搜索功能,包括域名筛选、时间范围和主题选择

要求

  • Rust 1.70+
  • 本地运行或可通过网络访问的 NATS 服务
  • Tavily API Key(从 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 Search

强大的网络搜索工具,使用 Tavily AI 搜索引擎提供全面的实时结果。

参数:

  • query(必填):搜索查询字符串
  • search_depth:"basic" 或 "advanced"(默认值:"basic")
  • topic:"general" 或 "news"(默认值:"general")
  • days:结果回溯的天数(用于 news 主题)
  • time_range:"day"、"week"、"month"、"year"
  • 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. Tavily Extract

用于从网页提取原始内容的工具。

参数:

  • urls(必填):要从中提取内容的 URL 数组
  • extract_depth:"basic" 或 "advanced"(默认值:"basic")
  • include_images:布尔值(默认值:false)

示例:

{
  "name": "tavily-extract",
  "arguments": {
    "urls": ["https://www.rust-lang.org/"],
    "extract_depth": "advanced",
    "include_images": true
  }
}

架构

服务采用模块化设计:

  • tools – Tavily Search 和 Extract 实现
  • models – Tavily API 响应结构
  • utils – 格式化和辅助函数
  • transport – NATS 消息传输层

开发

添加新功能

要扩展服务以支持更多 Tavily 功能:

  1. 在 src/models/tavily.rs 中定义响应结构
  2. 遵循 Tool trait,在 src/tools/ 中实现工具
  3. 在 src/utils/formatter.rs 中添加格式化函数
  4. 在 src/main.rs 中注册工具

故障排除

  • 确保 Tavily API 密钥有效,并且已正确设置为环境变量
  • 检查 NATS 服务是否正在运行且可访问
  • 确认请求格式与各工具预期的输入架构相符

许可证

MIT License


致谢

本项目基于 Anet MCP Server 框架构建,并与 Tavily API 集成。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。