关于 Web_Search_MCP
Web_Search_MCP 是基于 Tavily API 的网页搜索 MCP 服务,供 AI 系统和应用调用实时搜索。它通过单个工具返回包含内容、链接和相关度信息的结构化结果。
主要功能
- 01通过 Tavily API 搜索网页
- 02返回内容、URL 和相关度评分
- 03以 JSON 格式组织结果
- 04异步处理多个搜索请求
适用场景
- 01为 LLM 获取实时网页结果
- 02查看搜索页面内容与链接
MCP 相关
向 MCP 客户端提供 `search_web` 工具,接收搜索查询并返回 JSON 格式的网页结果。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
暂未收录安装方式
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Web_Search_MCP
一个带有网络搜索工具的 MCP(模型上下文协议)服务
本项目演示了如何使用 Tavily API 创建网络搜索工具,并将其与 MCP(模型上下文协议)集成,以便与 AI 系统无缝交互。这样,你就可以为大模型或应用提供实时网络搜索功能。
概览
Web_Search_MCP 项目使用了以下关键组件:
- Tavily API: 一个功能强大的搜索 API,可提供实时、全面的网络搜索结果,包括答案、原始内容和相关元数据。
- FastMCP: FastMCP 类使用 Python 类型提示和文档字符串自动生成工具定义,让你能够轻松创建和维护 MCP 工具。
- Langchain: 具体而言,项目使用 Langchain 的
TavilySearchResults工具高效地与 Tavily API 交互。 - Dotenv: 一个用于从
.env文件加载环境变量的库,可安全地管理 API 密钥等敏感信息。 - uv: 一个速度极快的 Python 包安装器和解析器,用于管理和运行本项目。
功能
本项目的核心是 search_web 工具,它提供以下功能:
- 网络搜索: 接受搜索查询作为输入,并使用 Tavily API 从网络检索相关搜索结果。
- 详细结果: 提供搜索结果的详细信息,包括网站内容、URL、相关性分数、内容类型,以及直接答案(如果有)。
- 格式化输出: 以结构良好的 JSON 格式返回搜索结果。输出包括状态指示器(
success或error)、结果数组(成功时)和时间戳。 - 错误处理: 妥善处理搜索过程中的错误,并以 JSON 格式返回清晰的错误消息。
- 异步处理:搜索工具基于异步处理,可同时处理多个请求。
前置条件
运行本项目前,请确保你已具备:
- Python 3.8+: 系统中已安装 Python 3.8 或更高版本。
- Tavily API Key: 有效的 Tavily API 密钥,可在 Tavily 网站注册获取。
- uv: Python 的 uv 包管理器。你可以使用以下命令安装:
pip install uv
安装
- 创建项目目录: 为项目创建目录并进入该目录:
*** 运行上述代码后,uv 会在目录中创建uv init Web_Search_MCPpyproject.toml和.venv*** - 创建项目文件: 在
Web_Search_MCP目录中创建文件main.py和.env。 - 激活虚拟环境: 进入 .venv/Scripts/activate 并激活虚拟环境
- 复制代码: 将
main.py和.env中的代码复制到你刚刚创建的文件中。 - 安装依赖项: 使用
uv安装所需的 Python 包:uv add "mcp[cli]" python-dotenv langchain-community tavily-python
配置
-
.env文件:- 在
Web_Search_MCP目录中创建一个名为.env的文件。 - 按以下格式将你的 Tavily API 密钥添加到
.env文件中:
将TAVILY_API_KEY='your_tavily_api_key'your_tavily_api_key替换为你的实际 Tavily API 密钥。
- 在
-
claude_desktop_config.json:- Claude 桌面应用(如果你正在使用)通过此文件发现并运行 FastMCP 服务。
- 此文件应位于
c:\Users\<Your User Name>\AppData\Roaming\Claude\claude_desktop_config.json - 确保
claude_desktop_config.json中指向Web_Search_MCP目录的路径准确无误。如果你的项目不在 path/Web_Search_MCP路径下,请修改配置文件中的args` 字段。
{ "mcpServers": { "Mcp_Demo": { "command": "uv", "args": [ "--directory", "path/Web_Search_MCP", "run", "main.py" ] } } }
运行 MCP 服务
配置好 claude_desktop_config.json 文件后,你可以在 Claude 桌面应用中启动服务。
用法
服务运行后,它会根据 Model Context Protocol 暴露一个名为 search_web 的工具。
- 工具名称:
search_web - 输入:
query(str):你想提交到网络的搜索查询。
- 输出: 包含搜索结果的 JSON 格式字符串。
成功响应的 JSON 示例:
{
"status": "success",
"results": [
{
"title": "...",
"url": "...",
"content": "text",
"score": 0.9,
"raw_content": "..."
},
{
"title": "...",
"url": "...",
"content": "text",
"score": 0.9,
"raw_content": "..."
}
],
"timestamp": 1708849844.064655
}
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。