Web Search MCP
使用说明
-
项目简介 这是一个基于 MCP(Model Context Protocol)的服务器实现,提供两个可供 LLM 调用的工具:
- search_web:在网页上检索结果并返回 URL 和标题
- fetch_page:获取页面内容并提取可读性文本及标题 服务器通过标准的 MCP 服务器实现与客户端进行 JSON-RPC 的交互,并通过标准输入/输出(stdio)作为传输通道。
-
主要功能点
- 提供 search_web 工具,接收参数 query(查询字符串)和 limit(结果数量,1-10,默认5),返回结果数组(包含 url、title、snippet)
- 提供 fetch_page 工具,接收参数 url,返回对象包含 url、title(可选)和 content(可读性文本)
- 使用 DuckDuckGo HTML 作为搜索源(无需 API key)
- 使用 Mozilla Readability 和 JSDOM 提取可读性内容,若无法提取则回落为页面文本
- 通过 MCP 服务器框架进行会话管理、工具注册与执行、以及与客户端的通信
-
安装步骤
- 安装依赖:在项目目录执行 npm install
- 启动服务器:运行 npm start,服务器将以 stdio 传输开启并等待 MCP 客户端连接
-
服务器配置(MCP 客户端配置信息) 说明:MCP 客户端需要知道如何启动并连接到此 MCP 服务器。以下信息用于配置客户端以便与服务器建立连接(仅供参考,实际在 Cursor 配置中使用)。服务器名称、启动命令和参数如下所示: { "name": "web-search-mcp", "command": "npm", "args": ["start"] } 说明:
- name: MCP 服务器的名称,与你项目中的服务器实例名称一致,便于在客户端配置中引用
- command: 启动服务器所使用的命令
- args: 启动命令的参数 备注:MCP 客户端不需要包含此配置信息的源码,仅在客户端配置中使用以启动与服务器的连接。实际启动方式也可通过全局安装方式或 npx 进行。
-
基本使用方法
- 启动服务器
- 运行 npm start 启动 Web Search MCP 服务器
- 与客户端交互
- LLM 客户端通过 MCP 协议向服务器发送请求,调用工具 search_web 进行网页搜索,或调用 fetch_page 抓取并提取网页内容
- 结果处理
- 客户端接收工具返回的结构化数据(JSON),可进一步在对话中纳入上下文或用于推理
- 启动服务器