使用说明
项目简介
duckduckgo-mpc-server 是一个实现了 Model Context Protocol (MCP) 的服务器,它集成 DuckDuckGo 搜索引擎,为大型语言模型 (LLM) 客户端提供网页搜索功能。通过这个服务器,LLM 可以调用 'duckduckgo_web_search' 工具来执行搜索查询,获取网络上的最新信息,从而增强 LLM 的知识广度和实时性。
主要功能点
- DuckDuckGo 网页搜索工具: 提供 'duckduckgo_web_search' 工具,允许 LLM 客户端通过指定关键词进行网页搜索。
- 支持参数:
- 'query': 搜索关键词 (必填,最大长度 400 字符)。
- 'count': 返回结果数量 (可选,范围 1-20,默认 10)。
- 'safeSearch': 安全搜索级别 (可选,'strict'/'moderate'/'off',默认 'moderate')。
- 返回格式化的 Markdown 搜索结果,方便 LLM 理解和使用。
- 支持参数:
- 速率限制: 为了保证服务稳定性和避免滥用,服务器实施了简单的速率限制。
- 每秒最多处理 1 个请求。
- 每月最多处理 15000 个请求。
安装步骤
- 安装 Node.js 和 pnpm: 确保你的环境中安装了 Node.js (版本 >= 18) 和 pnpm (版本 >= 8.0.0)。如果未安装 pnpm,可以使用 npm 安装:
npm install -g pnpm - 安装项目依赖: 克隆仓库到本地后,在项目根目录下运行命令安装依赖:
pnpm install - 构建项目: 运行命令构建 TypeScript 代码:
pnpm run build
服务器配置
MCP 客户端(例如 Claude Desktop)需要配置 MCP 服务器的启动命令才能连接和使用 'duckduckgo-search' 服务器。以下是配置信息,请根据你的使用场景选择合适的配置添加到 MCP 客户端的配置文件中。
配置文件位置 (以 Claude Desktop 为例):
- MacOS: '~/Library/Application Support/Claude/claude_desktop_config.json'
- Windows: '%APPDATA%/Claude/claude_desktop_config.json'
配置内容 (JSON 格式):
在线使用 (推荐,需要预先全局安装 'duckduckgo-mpc-server' 包):
{ "mcpServers": { "duckduckgo-search": { "command": "npx", // 使用 npx 命令执行 "args": [ "-y", // 自动确认安装包 (如果未安装) "duckduckgo-mpc-server" // 要执行的 npm 包名,即 duckduckgo-mpc-server ] } } }
本地使用 (适用于开发或不希望全局安装的情况):
{ "mcpServers": { "duckduckgo-search": { "command": "node", // 使用 node 命令执行 "args": [ "/path/to/duckduckgo-search/build/index.js" // duckduckgo-mpc-server 构建后的入口文件路径,请替换为实际路径 ] } } }
注意:
- '/path/to/duckduckgo-search/build/index.js' 需要替换为 duckduckgo-mpc-server 项目在你的本地文件系统中的实际路径。
基本使用方法
-
启动 MCP 服务器: 配置完成后,MCP 客户端(如 Claude Desktop)在启动时会自动尝试连接配置的 MCP 服务器。如果使用本地方式,请先确保已经构建项目 ('pnpm run build')。
-
在 LLM 中调用工具: 在支持 MCP 协议的 LLM 客户端中,你可以指示 LLM 使用 'duckduckgo_web_search' 工具进行搜索。例如,在 Claude 中,你可以这样指示:
请使用 duckduckgo_web_search 工具搜索 "最新的AI技术发展"。LLM 客户端会解析你的指令,并根据工具的定义和参数,自动调用 'duckduckgo-search' MCP 服务器提供的搜索工具,并将搜索结果返回给你。
-
查看调试信息: 如果需要调试,可以使用 'pnpm run inspector' 命令启动 MCP Inspector,它会提供一个浏览器界面来查看 MCP 服务器和客户端之间的通信详情。
通过以上步骤,你就可以成功搭建并使用 duckduckgo-mpc-server 为你的 LLM 客户端提供网页搜索能力。
信息
分类
网页与API