搜索工具服务器

一个基于TypeScript的DuckDuckGo搜索功能MCP服务器,提供易于使用的搜索工具接口、速率限制和错误处理支持。

  • by zhsama
  • TypeScript
  • 本地部署
  • 87 星标
  • 更新于
在 GitHub 查看 zhsama/duckduckgo-mcp-server

使用说明

duckduckgo搜索MCP服务器

英语| 中文

DuckDuckGo搜索的模型上下文协议服务器

这是一个基于TypeScript的MCP服务器,提供DuckDuckGo搜索功能。它通过以下方式展示了MCP的核心概念:

  • 与DuckDuckGo搜索集成
  • 易于使用的搜索工具界面
  • 速率限制和错误处理支持

特性

搜索工具

  • duckduckgo_search -使用DuckDuckGo API执行网络搜索
    • 必需参数: query (搜索查询,最多400个字符)
    • 可选参数: count (结果数量,1-20,默认10)
    • 可选参数: safeSearch (安全级别:严格/中等/关闭,默认为中等)
    • 返回格式化的Markdown搜索结果

速率限制

  • 每秒最多1个请求
  • 每月最多15000个请求

发展

先决条件

  • Node.js>=18
  • pnpm>=8.0.0

安装

# Install pnpm if not already installed
npm install -g pnpm

# Install project dependencies
pnpm install

构建并运行

构建服务器:

pnpm run build

对于自动重建的开发:

pnpm run watch

在Claude Desktop中设置

要与Claude Desktop一起使用,请添加服务器配置:

在MacOS上: ~/Library/Application Support/Claude/claude_desktop_config.json 在Windows上: %APPDATA%/Claude/claude_desktop_config.json

# online
{
  "mcpServers": {
    "duckduckgo-search": {
        "command": "npx",
        "args": [
          "-y",
          "duckduckgo-mcp-server"
        ]
    }
  }
}

# local
{
  "mcpServers": {
    "duckduckgo-search": {
      "command": "node",
      "args": [
        "/path/to/duckduckgo-search/build/index.js"
      ]
    }
  }
}

调试

由于MCP服务器通过stdio进行通信,调试可能具有挑战性。我们建议使用 MCP检查员,可作为包脚本使用:

pnpm run inspector

检查器将提供一个URL,用于访问浏览器中的调试工具。