Duckduckgo MCP Server logo

Duckduckgo MCP Server

by zhsama

Searches DuckDuckGo through one MCP tool with query, result-count, and safe-search controls.

Install Duckduckgo MCP Server

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "zhsama-duckduckgo-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "duckduckgo-mcp-server"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

We couldn’t confirm it starts correctly

The install command started, but didn't respond the way we expected when we tried to talk to it.

npx -y duckduckgo-mcp-server

initialize succeeded but no response to tools/list.

This is an experimental automated check and can have false negatives — missing environment variables, a slow cold install, etc. It doesn’t necessarily mean something’s wrong. Last checked 28d ago.

Overview

zhsama/duckduckgo-mcp-server MCP server exposes DuckDuckGo web search through the Model Context Protocol. Its `duckduckgo_search` tool accepts a query plus optional result-count and safe-search settings, then returns formatted Markdown results. The TypeScript project runs over stdio and supports local Node.js execution or installation through the published npm package. Reach for it when an MCP client needs current web search results without a broader search workflow.

Use cases

  • Search the web for current technical references
  • Research topics through DuckDuckGo
  • Control result count and safe-search filtering
  • Return search findings as Markdown

Key features

  • DuckDuckGo web search
  • Configurable result count from 1 to 20
  • Strict, moderate, or off safe-search modes
  • Markdown-formatted results
  • Documented request-rate limits

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 1d ago

Recent health check succeeded.

7/8 checks healthy over the last 78d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 8d ago via OSV.dev · duckduckgo-mcp-server (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars87Stargazers on the source repository.
npm downloads6.7kPackage downloads in the last 30 days.
Last commit1y agoMost recent push to the default branch.
Install checkInconclusiveStarted but did not complete the MCP handshake in our test.
Directory activity4 viewsConfig copies, upvotes, and views on AllMCPs.

How Duckduckgo MCP Server works

What zhsama/duckduckgo-mcp-server MCP server does

The zhsama/duckduckgo-mcp-server MCP server adds DuckDuckGo search to an MCP-compatible client. It exposes one search capability named duckduckgo_search, intended for agents that need to submit a web query and receive readable search results.

The tool requires a query string with a maximum length of 400 characters. Callers can also set count to request between 1 and 20 results; if omitted, the server uses 10. The safeSearch option accepts strict, moderate, or off, with moderate as the default. Results are returned as formatted Markdown.

This fits research, fact-finding, and discovery tasks where an agent needs to search the public web through DuckDuckGo. It does not describe tools for crawling pages, extracting structured content from a result, or managing search history.

How it works

The project is implemented in TypeScript and communicates with MCP clients over standard input and output. A client starts the server as a local process, sends tool calls through MCP, and receives the formatted search response.

The service applies request limits of no more than one request per second and no more than 15,000 requests per month. These limits matter for agents that may issue repeated searches or run searches across many tasks. Applications should account for throttling and error handling rather than assuming unrestricted request volume.

Setup and configuration

The zhsama/duckduckgo-mcp-server MCP server requires Node.js 18 or newer and pnpm 8 or newer for project development. A local checkout can be prepared with pnpm install, built with pnpm run build, and started from the generated JavaScript entry point. pnpm run watch is available for development with automatic rebuilding.

For Claude Desktop, the README provides an online configuration that runs npx -y duckduckgo-mcp-server. It also shows a local configuration that invokes Node against the built build/index.js file. The Claude Desktop configuration file is stored under the standard application-support path on macOS or the application-data path on Windows.

The setup examples do not include an API key.

Tools and capabilities

  • duckduckgo_search: searches DuckDuckGo using a required query.
  • count: optionally controls the number of returned results from 1 through 20.
  • safeSearch: optionally selects strict, moderate, or off filtering.
  • Markdown output: formats the search response for client or agent consumption.
  • Rate handling: documents per-second and monthly request ceilings.

Limitations and notes

The zhsama/duckduckgo-mcp-server MCP server exposes only the documented search tool.

Queries are limited to 400 characters, and result requests are limited to 20 items. The documented maximum of one request per second and 15,000 requests per month may constrain batch workflows. For troubleshooting, the project recommends its pnpm run inspector script, which launches the MCP Inspector and provides a browser-accessible debugging URL.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Duckduckgo MCP Server

Use the npm launch configuration with `npx -y duckduckgo-mcp-server`, or install the project dependencies with pnpm and run the built local entry point.

Yes. The README includes Claude Desktop configurations for both an online npm launch and a locally built Node.js server.

It provides `duckduckgo_search`, which accepts a required query and optional `count` and `safeSearch` parameters.

The documented limits are one request per second and 15,000 requests per month.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewDuckduckgo MCP Server AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/zhsama-duckduckgo-mcp-server?style=directory)](https://allmcps.com/mcp/zhsama-duckduckgo-mcp-server)
HTML Embed
<a href="https://allmcps.com/mcp/zhsama-duckduckgo-mcp-server"><img src="https://allmcps.com/api/badge/zhsama-duckduckgo-mcp-server?style=directory" alt="Duckduckgo MCP Server on AllMCPs" /></a>