Brave Search MCP Server

使用说明(Markdown 格式)

  • 项目简介

    • Brave Search MCP Server 是一个完整的 MCP 服务器实现,能够注册并暴露 Brave Search 相关的多种工具(如网页搜索、图片搜索、视频搜索、新闻搜索、本地搜索、summarizer 等),通过 MCP 协议与客户端进行交互,提供资源、工具注册与执行、以及 Prompt/模板渲染等能力,支持通过标准的 JSON-RPC 进行请求/响应。
  • 主要功能点

    • 完整实现 MCP 服务器端:处理 MCP 请求、注册工具、执行工具、返回 JSON-RPC 响应,支持会话管理与能力声明。
    • 资源与工具管理:将 Brave Search 的各类搜索能力作为 Tool 注册到 MCP 服务器,提供输入校验、输出结构等定义。
    • 会话上下文与工具执行:内置 Context 与 ContextManager,支持浏览器相关工具在会话中的使用与状态维护。
    • 多传输协议支持:提供 Stdio 与 HTTP 两种传输方式,便于在不同环境下与 LLM 客户端通信。
    • Brave API 封装:通过 BraveAPI 封装 Brave 的多种搜索端点(web、images、videos、news、local、summarizer 等),统一参数格式与返回结构。
    • 工具多样性与扩展性:包括 Brave Web/Summarizer/News/Images/Video/Local/Search 等工具,以及本地浏览器工具集,具备较强的扩展性。
  • 安装步骤

    • 依赖环境要求:Node.js/TypeScript 运行环境,具备对外网络访问能力以调用 Brave API。
    • 克隆仓库并进入 Brave Search MCP Server 目录。
    • 安装依赖:在项目根目录执行安装命令(如 npm install 或 pnpm install)。
    • 构建与运行:按照项目的打包/启动方式构建输出并启动服务器(通常产出 dist/index.js 之类的入口文件,然后通过 Node 运行)。
    • 配置 Brave API KEY:在运行前需要设置 Brave 搜索 API 的 Key(BRAVE_API_KEY/ braveApiKey),并确保环境或配置参数正确传递给服务器。
  • 服务器配置(MCP 客户端与服务器的对接配置要点,描述性说明,不给出具体代码)

    • 服务器名称:brave-search-mcp-server
    • 启动命令:node
    • 启动参数(示意用途说明,不给出可直接执行的代码):
      • dist/index.js(入口文件,构建后执行的主脚本)
    • 必要的环境变量(为服务器端与 Brave API 交互提供必要信息):
      • BRAVE_API_KEY(Brave Search API Key,调用 Brave 接口所需)
      • BRAVE_MCP_TRANSPORT(传输协议,stdio 或 http,决定服务器暴露的通信通道)
    • 运行模式说明:
      • 可以通过 stdio 直接与发起 MCP 的进程进行通信(适用于本地集成与开发调试)。
      • 也可通过 HTTP 端口对外暴露,客户端通过 HTTP/WS 端点与 MCP 服务器通信。
    • 使用时的注意点:
      • 客户端在连接时需要提供服务器的地址、端口、以及必要的认证信息(如 API Key)。
      • 服务器会根据配置注册 Brave Search 的各类工具,客户端通过调用相应工具的输入 schema 来获取输出。
  • 基本使用方法

    • 启动后,客户端(LLM 客户端)通过 MCP 协议向 Brave Search MCP Server 发送请求,与工具注册、执行、获取结果等交互。
    • 客户端可以按需启用/禁用工具,服务器会在运行时按授权策略暴露相应工具。
    • 通过 HTTP 接入时,可以利用 /mcp /sse 等端点进行消息交互,或使用 stdio 作为 IPC 通道。
  • 备注

    • 服务器实现中包含多种 Brave 搜索工具及本地浏览器工具,适合将复杂的搜索任务与上下文管理整合到 LLM 的对话流程中。
    • 配置示例与参数注释在实际部署时可根据运行环境进行调整。

服务器信息