DuckDuckGo Search - Secure MCP Server by ALMC Security 2025

DuckDuckGo Search

View on GitHub

duckduckgo-search MCP Server

English | 中文

A Model Context Protocol server for DuckDuckGo Search

This is a TypeScript-based MCP server that provides DuckDuckGo search functionality. It demonstrates core MCP concepts through:

  • Integration with DuckDuckGo Search
  • Easy-to-use search tool interface
  • Rate limiting and error handling support

Features

Search Tool

  • duckduckgo_search - Perform web searches using DuckDuckGo API
    • Required parameter: query (search query, max 400 characters)
    • Optional parameter: count (number of results, 1-20, default 10)
    • Optional parameter: safeSearch (safety level: strict/moderate/off, default moderate)
    • Returns formatted Markdown search results

Rate Limits

  • Maximum 1 request per second
  • Maximum 15000 requests per month

Development

Prerequisites

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

Installation

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

# Install project dependencies
pnpm install

Build and Run

Build the server:

pnpm run build

For development with auto-rebuild:

pnpm run watch

Setup in Claude Desktop

To use with Claude Desktop, add the server config:

On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json On 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"
      ]
    }
  }
}

imageimage

Debugging

Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector, which is available as a package script:

pnpm run inspector

The Inspector will provide a URL to access debugging tools in your browser.

Related in Search - Secure MCP Servers

ServerSummaryActions
USGS QuakesView
Gemini Web SearchThis project implements a Model Context Protocol (MCP) server that uses the local gemini-cli to perf...View
YouTubeA Model Context Protocol (MCP) server that enables Claude Desktop (and other applications) to intera...View
Library Docs MCP ServerThis is an MCP (Model Context Protocol) server that allows you to search and fetch documentation for...View
VectorizeA Model Context Protocol (MCP) server implementation that integrates with Vectorize for advanced Vec...View
PerplexityAn MCP server implementation that integrates the Sonar API to provide Claude with unparalleled real-...View