drio
Open app

DuckDuckGo Search MCP Server

Source

A Model Context Protocol (MCP) server that provides web search capabilities through DuckDuckGo, with additional features for content fetching and parsing.

Catalog onlyCatalog onlySTDIO

Overview

DuckDuckGo Search MCP Server is a Model Context Protocol (MCP) server that provides web search capabilities through DuckDuckGo, along with features for content fetching and parsing.

To use the server, install it via PyPI using the command uv pip install duckduckgo-mcp-server, and configure it with Claude Desktop by editing the configuration file to include the MCP server settings.

  • Web search with advanced rate limiting and result formatting - Content fetching with intelligent text extraction - Built-in rate limiting protection - Comprehensive error handling and logging - LLM-friendly output formatting
  1. Performing web searches with formatted results for applications.
  2. Fetching and parsing content from webpages for data analysis.
  3. Integrating search capabilities into other applications using the MCP protocol.

Add to your AI client

Use these steps to connect DuckDuckGo Search MCP Server in Cursor, Claude, VS Code, and other MCP-compatible apps. The same JSON appears in the Use with menu above for one-click copy.

Cursor

Add this to your .cursor/mcp.json file in your project root, then restart Cursor.

.cursor/mcp.json

{
  "mcpServers": {
    "duckduckgo-mcp-server-nickclyde": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-duckduckgo-mcp-server-nickclyde"
      ]
    }
  }
}

Claude Desktop

Add this server entry to the mcpServers object in your Claude Desktop config, then restart the app.

~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)

{
  "mcpServers": {
    "duckduckgo-mcp-server-nickclyde": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-duckduckgo-mcp-server-nickclyde"
      ]
    }
  }
}

Claude Code

Add this to your project's .mcp.json file. Claude Code will detect it automatically.

.mcp.json (project root)

{
  "mcpServers": {
    "duckduckgo-mcp-server-nickclyde": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-duckduckgo-mcp-server-nickclyde"
      ]
    }
  }
}

VS Code (Copilot)

Add this to your .vscode/mcp.json file. Requires the GitHub Copilot extension with MCP support enabled.

.vscode/mcp.json

{
  "servers": {
    "duckduckgo-mcp-server-nickclyde": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-duckduckgo-mcp-server-nickclyde"
      ]
    }
  }
}

Windsurf

Add this to your Windsurf MCP config file, then restart Windsurf.

~/.codeium/windsurf/mcp_config.json

{
  "mcpServers": {
    "duckduckgo-mcp-server-nickclyde": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-duckduckgo-mcp-server-nickclyde"
      ]
    }
  }
}

Cline

Open Cline settings, navigate to MCP Servers, and add this server configuration.

Cline MCP Settings (via UI)

{
  "mcpServers": {
    "duckduckgo-mcp-server-nickclyde": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-duckduckgo-mcp-server-nickclyde"
      ]
    }
  }
}

FAQ

Can I use this server for any web search?

Yes! It is designed to perform searches specifically through DuckDuckGo.

Is there a limit on the number of requests?

Yes, the server has rate limits: 30 requests per minute for search and 20 for content fetching.

How do I handle errors?

The server includes comprehensive error handling and logging to help diagnose issues.