项目简介
本项目是基于 Model Context Protocol (MCP) 标准实现的百度搜索服务器。它作为一个独立的后端服务,可以与任何兼容 MCP 协议的 LLM 客户端集成,为 LLM 提供强大的百度搜索能力。通过此服务器,LLM 可以调用 'baidu_search' 工具,利用百度文心 API 进行智能搜索,并获取结构化的搜索结果和参考来源,从而增强 LLM 在信息检索和问答方面的能力。
主要功能点
- 智能搜索: 利用百度文心 API 提供高质量的搜索服务。
- 多模型支持: 支持 'ernie-3.5-8k', 'ernie-4.0-8k', 'deepseek-r1', 'deepseek-v3' 等多种模型,用户可以根据需求选择合适的模型。
- 结果结构化: 返回包含搜索结果和详细参考来源的结构化数据,方便 LLM 理解和利用搜索信息。
- 多种搜索模式: 支持 'auto', 'required', 'disabled' 等搜索模式,以及深度搜索和时效性过滤等高级选项。
- 易于集成: 遵循 MCP 协议,可以轻松集成到任何支持 MCP 的 LLM 客户端中。
安装步骤
-
安装依赖: 确保你的环境中已安装 Node.js 和 npm。在命令行中执行以下命令安装项目依赖:
npm install @modelcontextprotocol/sdk axios -
配置环境变量: 你需要拥有百度文心 API 的密钥才能使用此服务器。
- 访问 百度智能云 创建应用并获取 API 密钥。
- 设置名为 'BAIDU_API_KEY' 的环境变量,将其值设置为你的 API 密钥。例如,在 Linux 或 macOS 系统中,你可以使用以下命令:
export BAIDU_API_KEY=你的API密钥
服务器配置
要将此 MCP 服务器添加到你的 MCP 客户端配置中,你需要提供以下 JSON 配置信息。请注意,以下配置中的路径 '/path/to/baidu-search-mcp/build/index.js' 需要替换为你的实际项目路径。
{ "mcpServers": { "baidu-search": { // 服务器名称,在客户端配置中用于标识和引用 "command": "node", // 启动服务器的命令,这里使用 Node.js 运行时 "args": ["/path/to/baidu-search-mcp/build/index.js"], // 启动命令的参数,指向编译后的服务器入口文件 "env": { // 环境变量配置 "BAIDU_API_KEY": "你的API密钥" // 百度文心 API 密钥,请替换为你的实际密钥,也可以设置为系统环境变量 }, "disabled": false, // 设置为 false 表示启用该服务器,设置为 true 则禁用 "autoApprove": [] // 自动批准的工具列表,这里为空表示需要手动批准所有工具调用 } } }
配置说明:
- '"baidu-search"': MCP 服务器的名称,你可以自定义,客户端会使用这个名称来引用该服务器。
- '"command": "node"': 指定用于启动服务器的命令是 'node',表示使用 Node.js 运行时环境。
- '"args": ["/path/to/baidu-search-mcp/build/index.js"]': 'args' 数组包含了传递给 'node' 命令的参数。这里 '/path/to/baidu-search-mcp/build/index.js' 是服务器入口文件 'index.js' 编译后的路径。你需要根据你的实际项目部署位置修改这个路径。
- '"env": { "BAIDU_API_KEY": "你的API密钥" }': 'env' 对象用于设置服务器运行时的环境变量。 'BAIDU_API_KEY' 是百度文心 API 的密钥,请务必替换为你在百度智能云申请的密钥。为了安全起见,推荐将 'BAIDU_API_KEY' 设置为系统环境变量,而不是直接写在配置文件中。
- '"disabled": false': 'disabled' 字段设置为 'false' 表示启用此 MCP 服务器。如果设置为 'true',客户端将不会连接此服务器。
- '"autoApprove": []': 'autoApprove' 数组用于配置自动批准的工具列表。当客户端请求调用列表中的工具时,无需用户手动批准,将自动执行。这里设置为空数组 '[]' 表示禁用自动批准,所有的工具调用都需要手动确认。
基本使用方法
-
启动服务器: 在项目根目录下,执行以下命令编译并启动服务器:
npm run build node build/index.js服务器成功启动后,会在控制台输出 '百度AI搜索MCP服务器已启动'。
-
在 MCP 客户端中使用: 将上述服务器配置添加到你的 MCP 客户端配置文件中。客户端启动后,应该能够自动连接到此百度搜索 MCP 服务器。
-
调用 'baidu_search' 工具: 在 LLM 应用中,你可以指示 LLM 调用 'baidu_search' 工具来执行搜索。例如,你可以向 LLM 发送指令:“请使用百度搜索工具查找关于 Model Context Protocol 的最新信息”。
-
参数说明: 'baidu_search' 工具支持以下参数:
- 'query' (必需): 搜索查询文本,例如 "Model Context Protocol"。
- 'model': 使用的模型名称,可选值包括 "ernie-3.5-8k", "ernie-4.0-8k", "deepseek-r1", "deepseek-v3",默认为 "ernie-3.5-8k"。
- 'search_mode': 搜索模式,可选值包括 "auto", "required", "disabled",默认为 "auto"。
- 'enable_deep_search': 是否开启深度搜索,布尔值,默认为 'false'。
- 'search_recency_filter': 搜索结果的时效性范围,可选值包括 "week", "month", "semiyear", "year"。
例如,一个完整的工具调用请求可能如下所示:
{ "tool_calls": [ { "id": "call_123", "type": "function", "function": { "name": "baidu_search", "arguments": { "query": "Model Context Protocol 最新进展", "model": "ernie-4.0-8k", "search_recency_filter": "month" } } } ] }
通过以上步骤,你就可以在你的 MCP 客户端中使用百度搜索 MCP 服务器提供的搜索能力了。
信息
分类
网页与API