使用说明

项目简介

WebSearch MCP Server 是一个实现了 Model Context Protocol (MCP) 协议的服务器,它主要的功能是为支持 MCP 协议的 LLM 客户端(如 Claude、Cursor IDE 等)提供网页搜索能力。通过集成 WebSearch Crawler API,该服务器能够让 LLM 实时访问最新的网络信息,从而增强 LLM 在处理需要时效性知识或特定领域信息时的能力。

主要功能点

  • 网页搜索工具: 提供 'web_search' 工具,允许 LLM 客户端通过发送搜索查询来获取最新的网页搜索结果。
  • MCP 服务器: 遵循 MCP 协议标准,能够与任何兼容 MCP 协议的客户端进行通信。
  • 标准输入/输出 (stdio) 传输: 使用 stdio 作为 MCP 服务器与客户端之间通信的传输协议,简化部署和集成。
  • 可配置的 Crawler API: 允许配置 WebSearch Crawler API 的 URL,方便用户使用自建或第三方 Crawler 服务。
  • 灵活的搜索参数: 支持多种搜索参数,如查询关键词、结果数量、语言、地区、排除/包含域名、结果类型等,以满足不同的搜索需求。

安装步骤

  1. 安装 WebSearch MCP Server: 打开终端,运行以下命令全局安装 'websearch-mcp':

    npm install -g websearch-mcp

    或者,您也可以不进行全局安装,直接使用 'npx' 运行:

    npx websearch-mcp
  2. 配置 Crawler Service (可选): WebSearch MCP Server 依赖于 WebSearch Crawler API 来执行实际的网页搜索。仓库提供了使用 Docker Compose 部署 Crawler Service 的方法。如果您已经有可用的 Crawler API 服务,或者希望使用默认配置('http://localhost:3001'),则可以跳过此步骤。

    如果需要部署 Crawler Service,请参考仓库 README.md 文档中 "Setting Up the Crawler Service" 章节的详细步骤,包括安装 Docker 和 Docker Compose,创建 'docker-compose.yml' 文件,并启动服务。

服务器配置

为了让 MCP 客户端能够连接到 WebSearch MCP Server,您需要在客户端的 MCP 服务器配置中添加以下信息。以下是一个通用的配置示例,您需要根据您的 MCP 客户端进行相应的配置:

{
    "mcpServers": {
        "websearch": {  // 服务器名称,客户端内唯一标识即可
            "command": "npx",  // 启动服务器的命令,这里使用 npx 运行
            "args": [
                "websearch-mcp" //  websearch-mcp 是安装后可执行的命令
            ],
            "environment": {  // 环境变量配置
                "API_URL": "http://localhost:3001",  // WebSearch Crawler API 的 URL,默认为 http://localhost:3001。如果 Crawler Service 部署在其他地址,请修改此处
                "MAX_SEARCH_RESULT": "5" //  每次搜索返回的最大结果数,默认为 5。可以根据需求调整,减少 token 消耗或获取更多信息
            }
        }
    }
}

注意:

  • 'command' 和 'args' 指定了启动 WebSearch MCP Server 的命令。请确保 'websearch-mcp' 命令在您的系统路径中可用,或者使用 'npx websearch-mcp' 确保命令能够被正确执行。
  • 'environment' 中可以配置环境变量,'API_URL' 用于指定 WebSearch Crawler API 的地址,'MAX_SEARCH_RESULT' 用于设置默认的最大搜索结果数。您可以根据需要修改这些配置。
  • 不同的 MCP 客户端配置方式可能略有不同,请参考您使用的 MCP 客户端的文档进行配置。仓库 README.md 中提供了 Claude Desktop, Cursor IDE, Cline 等客户端的配置示例,您可以参考。

基本使用方法

配置完成后,在您的 MCP 客户端中,您应该可以使用 'web_search' 工具了。

例如,在 Claude 客户端中,您可以像下面这样调用 'web_search' 工具来搜索 "machine learning trends":

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "call_tool",
  "params": {
    "name": "web_search",
    "arguments": {
      "query": "machine learning trends"
    }
  }
}

服务器会返回包含搜索结果的 JSON-RPC 响应。搜索结果会包含标题、摘要、URL 等信息。具体的响应格式请参考仓库 README.md 中的 "Example Search Response" 章节。

您也可以使用仓库提供的测试客户端进行本地测试,运行命令 'npm run test-client',然后按照提示输入搜索查询进行测试。

信息

分类

网页与API