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 的对话流程中。
- 配置示例与参数注释在实际部署时可根据运行环境进行调整。