DuckDuckGo MCP server

CommunityNick Clyde1,199Config last verified Jun 1, 2026

A maintained, key-free MCP server that gives an agent DuckDuckGo web search plus clean page-content fetching.

This DuckDuckGo MCP server is a widely adopted, community-maintained server that gives an AI agent two things: web search through DuckDuckGo and the ability to fetch and parse a page's content into clean, readable text. Crucially it needs no API key — DuckDuckGo search is free to query — so it is one of the lowest-friction ways to give an agent fresh access to the open web and let it answer questions about current events or recent releases that fall outside its training cutoff. The search tool supports a configurable result limit and a region override, and the content fetcher strips a page down to text the model can reason over directly instead of returning a raw list of links.

The server is published as the duckduckgo-mcp-server Python package and runs locally over stdio, typically launched with uvx (uvx duckduckgo-mcp-server). It applies sensible rate limiting (roughly 30 search requests and 20 content fetches per minute), supports SafeSearch filtering via DDG_SAFE_SEARCH and a default region via DDG_REGION, and offers an optional curl-based backend with TLS impersonation so it can still fetch content from sites that block standard HTTP clients. With over a thousand GitHub stars and an MIT license, it is a popular default for keyless web search in agent setups.

Quick install

Copy-paste configs are provided for all 8 supported clients. Pick your client below.

Add to ~/.claude.json

~/.claude.json
json
{
  "mcpServers": {
    "duckduckgo": {
      "command": "uvx",
      "args": [
        "duckduckgo-mcp-server"
      ]
    }
  }
}
Or via CLI
bash
claude mcp add duckduckgo -- uvx duckduckgo-mcp-server

Available tools

ToolDescription
searchPerforms a DuckDuckGo web search, with a configurable result limit and an optional region override.
fetch_contentRetrieves and parses a webpage into clean, readable text, with optional backend selection for sites that block standard HTTP clients.

Required configuration

  • DDG_SAFE_SEARCHOptional

    SafeSearch filter level: STRICT, MODERATE, or OFF. Optional.

  • DDG_REGIONOptional

    Default region code for results, e.g. us-en, jp-ja, cn-zh. Optional.

What you can do with it

Keyless web search for an agent

Give an agent fresh access to the open web with no API key or signup: it runs DuckDuckGo searches to answer questions about current events, recent releases, or anything past its training cutoff.

Read a page, not just a link list

After searching, the agent calls fetch_content to pull a result page down to clean text it can reason over immediately, using the curl backend when a site blocks standard HTTP clients.

FAQ

Is it free?
Yes. The server is open source under the MIT license and free to run, and it requires no API key because DuckDuckGo search is free to query. You only need a Python runtime (uvx) to launch it.
Does it support remote/OAuth?
No. It runs locally over stdio, launched with uvx, and there is no hosted OAuth endpoint. Because it needs no credentials at all, there is nothing to authenticate — it talks to DuckDuckGo directly.
Will it get rate limited?
The server applies built-in rate limiting (roughly 30 search requests and 20 content fetches per minute) to stay within DuckDuckGo's tolerances. Heavy automated use can still be throttled upstream, so it is best for interactive agent workloads rather than bulk scraping.
← Browse all search-and-data servers