← Back to directory
D

DuckDuckGo Search MCP Server

Community
MCP server providing web search and content fetching via DuckDuckGo
GitHub source repository ↗
★ 1.4k Stars Category · Other Very popular Source revision ad2e681bfb44
74FMRS · B
Reliability
11/20
Security and permissions
15/20
Maintenance
17/20
Documentation
17/20
Setup experience
14/20

This server provides practical web search and content fetching for AI assistants, with built-in rate limiting and filtering. However, it depends on DuckDuckGo and third-party sites, may be affected by TLS fingerprint blocking, and may require the optional browser backend. Suitable for personal and small-scale projects.

Read the FMRS scoring method →

A Model Context Protocol (MCP) server that provides web search capabilities through DuckDuckGo, with additional features for content fetching and parsing. It includes built-in rate limiting, error handling, SafeSearch filtering, and region localization. Results are formatted for LLM consumption. Supports multiple transports (stdio, SSE, streamable HTTP) and configurable backends to bypass bot detection.

Tools

search
Performs a web search on DuckDuckGo and returns formatted results with titles, URLs, and snippets.
fetch_content
Fetches and parses content from a webpage, returning cleaned and formatted text.

Setup

  1. Install uv if not already present. 2. Run uvx duckduckgo-mcp-server. 3. For Claude Desktop, add the MCP server configuration to your config file. For Claude Code, use claude mcp add ddg-search uvx duckduckgo-mcp-server.
claude_desktop_config.json
{
  "mcpServers": {
    "ddg-search": {
      "command": "uvx",
      "args": [
        "duckduckgo-mcp-server"
      ]
    }
  }
}

Fit and risk

Best for

  • Developers needing quick, API-key-free web search capabilities
  • Privacy-conscious users who prefer local search execution
  • AI application development with Claude Desktop or Claude Code

Not for

  • Enterprise applications requiring high-scale, reliable search APIs
  • Users needing advanced search features like custom ranking or filters
  • Accessing sites blocked by TLS fingerprinting without installing the optional browser backend

Required permissions

  • Outbound network access to DuckDuckGo and other websites
  • Reads environment variables for SafeSearch, region, and CA certificates
  • Optionally reads a CA certificate file (for TLS-intercepting proxies)

Risks and side effects

  • Search endpoints may occasionally return empty results or errors, especially when blocked
  • Content fetching may be subject to SSRF protection, blocking private or loopback addresses by default
  • Misuse could lead to rate limiting or IP blocking

Troubleshooting

  1. If search returns no results, try installing the [browser] extra and using the curl backend
  2. For TLS certificate errors, specify a CA bundle via --ca-certs or DDG_CA_CERTS
  3. If behind a reverse proxy, set --allowed-hosts and --allowed-origins to avoid 421 errors
  4. Check rate limits: 30 requests/minute for search, 20 for content fetching

Use cases

Real-time web search within AI assistants
Fetching webpage content for summarization or analysis
Scenarios requiring region-specific or SafeSearch-filtered results

Supported clients

Claude DesktopFull support
Claude CodeFull support