WebIntel MCP
使用说明(简明易懂版)
-
项目简介
- 该仓库实现了一个基于 FastMCP 的 MCP 服务器,核心功能包括对外暴露的工具方法,如通用网页搜索、视频搜索、网页内容抓取、YouTube 内容转录以及 Reddit 相关数据获取等,目标是为 LLM 客户端提供结构化、可调用的上下文信息与外部功能接口。
-
主要功能点
- 提供通用网页搜索(search)与 YouTube 视频搜索(search_videos)
- 提供网页内容抓取(fetch_content)与 YouTube 转录(fetch_youtube_content)
- 提供 Reddit 子板块与帖子内容获取(fetch_subreddit、fetch_subreddit_post)
- 使用 MCP 规范进行函数暴露,支持 JSON-RPC 形式的请求与响应
- 支持多传输协议(http、sse)以及端口与环境变量配置
- 内部使用 Pydantic 数据模型确保请求/响应结构的稳定性
- 配置与运行环境可通过环境变量或命令行参数灵活控制
-
安装步骤
- 获取代码后在项目根目录安装依赖并运行服务器(通常需要 Python 3.11+):
- 安装依赖(例如:pip install -r requirements.txt)
- 启动服务器:python -m src.server.mcp_server
- 服务器启动后默认监听端口为 3090,暴露的 MCP 服务地址如 http://0.0.0.0:3090/mcp
- 获取代码后在项目根目录安装依赖并运行服务器(通常需要 Python 3.11+):
-
服务器配置(MCP 客户端需要的启动信息,JSON 格式,包含 server name、command、args 等) 确保 MCP 客户端能够通过配置正确启动并连接到 MCP 服务器。以下为示例描述,实际应用以客户端配置为准(不直接粘贴代码):
- server: "webintel-mcp"
- command: "python"
- args: ["-m", "src.server.mcp_server", "--port", "3090"] 说明:
- server 为 MCP 客户端在其配置中引用的服务器名称,应与服务器暴露的名称保持一致。
- command 与 args 指定了启动 MCP 服务器的命令和参数,客户端仅用于连接信息展示,不需要在客户端运行代码。
-
基本使用方法
- 向 MCP 服务器发送请求以执行以下操作:网页搜索、视频搜索、网页内容抓取、YouTube 转录、Reddit 数据获取等。
- 客户端通过 MCP 的 JSON-RPC 形式与服务器交互,调用对应工具函数并接收结构化响应。
- 根据返回的结果进行后续的对话上下文管理、结果聚合或再调用其他工具。
-
部署注意
- 配置环境变量时,请根据实际部署环境设置 SEARXNG_HOST、STT_ENDPOINT、STT_MODEL、STT_API_KEY、PROXY_URL 等。
- 对外暴露的端口与安全策略请结合实际网络环境配置,确保仅授权的客户端可以访问 MCP 服务。
-
参考依赖与扩展
- 利用 FastMCP 框架暴露工具,便于将来添加更多工具(如新的视频源、额外的网页抓取方法等)。
- 支持多传输协议(HTTP、SSE)以适配不同的客户端实现需求。