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 服务器框架进行会话管理、工具注册与执行、以及与客户端的通信
  • 安装步骤

    1. 安装依赖:在项目目录执行 npm install
    2. 启动服务器:运行 npm start,服务器将以 stdio 传输开启并等待 MCP 客户端连接
  • 服务器配置(MCP 客户端配置信息) 说明:MCP 客户端需要知道如何启动并连接到此 MCP 服务器。以下信息用于配置客户端以便与服务器建立连接(仅供参考,实际在 Cursor 配置中使用)。服务器名称、启动命令和参数如下所示: { "name": "web-search-mcp", "command": "npm", "args": ["start"] } 说明:

    • name: MCP 服务器的名称,与你项目中的服务器实例名称一致,便于在客户端配置中引用
    • command: 启动服务器所使用的命令
    • args: 启动命令的参数 备注:MCP 客户端不需要包含此配置信息的源码,仅在客户端配置中使用以启动与服务器的连接。实际启动方式也可通过全局安装方式或 npx 进行。
  • 基本使用方法

    1. 启动服务器
      • 运行 npm start 启动 Web Search MCP 服务器
    2. 与客户端交互
      • LLM 客户端通过 MCP 协议向服务器发送请求,调用工具 search_web 进行网页搜索,或调用 fetch_page 抓取并提取网页内容
    3. 结果处理
      • 客户端接收工具返回的结构化数据(JSON),可进一步在对话中纳入上下文或用于推理

服务器信息