Try “Claude Code skills”, “MCP servers for Cursor” or “Codex” · Esc to close

DuckDuckGo MCP Server 🔌 MCP server Open source

Keyless web search and page fetching for agents through DuckDuckGo's HTML results

Web search & scraping MCP servers · Open source ★ 1.5k · +9 this week · MIT · updated 2026-09-04

6.8editor score
View on GitHub ↗
GitHub stars
1.5k
Stars this week
+9
Forks
191
Licence
MIT
Last push
2026-09-04
Maintainer
nickclyde
Installclaude mcp add ddg-search uvx duckduckgo-mcp-server

Third-party MCP servers run with your permissions. Read the source before installing, and prefer pinned versions.

Works with

Built on the open MCP standard, so it works in every app that supports MCP.

About DuckDuckGo MCP Server

What it does

DuckDuckGo MCP Server gives a coding agent web search and page reading without needing an API key. It sends queries to DuckDuckGo's HTML search endpoint and returns titles, URLs and snippets in a compact format suited to LLMs. It can then fetch any result page and strip it down to readable text or Markdown. That makes it a lightweight way to let an agent check current docs, error messages or release notes while it works. It is a community project, not a DuckDuckGo product, and it reads DuckDuckGo's HTML results rather than an official search API. DuckDuckGo has recently started blocking plain HTTP clients. To work around that, the server can fall back to an optional backend that imitates Chrome's TLS fingerprint.

Tools it gives your agent

  • search: DuckDuckGo results with optional region and result count
  • fetch_content: fetch and parse a web page as plain text, the main content or Markdown, with pagination and a short in-memory cache
  • expand_link: turn a shortened ref:// token from search results back into the full URL

Works with

It runs locally over stdio by default, with optional SSE and Streamable HTTP transports that bind to 127.0.0.1:8000. The README covers Claude Desktop and Claude Code, and any other MCP client that can launch uvx should work the same way.

How to connect

Using the Claude Code command from the README (installing the [browser] extra is recommended so the search fallback works):

claude mcp add ddg-search uvx duckduckgo-mcp-server

Cost and limits

Free and MIT-licensed, with no account or key required. Built-in rate limits default to 30 searches and 20 page fetches per minute, and you can adjust both with environment variables. Results depend on DuckDuckGo tolerating automated requests, so searches can come back empty while the endpoint is blocking you.

Safety notes

fetch_content blocks private network, loopback and cloud-metadata addresses by default and checks every redirect. Only disable that with DDG_ALLOW_PRIVATE_URLS=1 on a trusted machine. Fetched pages are untrusted input and may contain prompt-injection text. Keep the HTTP transports on localhost unless you set allowed hosts. Automated scraping of DuckDuckGo may conflict with its terms of service.

web-search duckduckgo web-fetch no-api-key python

Pros

  • No account or API key needed
  • Page fetching with Markdown mode, pagination and SSRF protection
  • Built-in rate limiting and caching

Cons

  • Scrapes DuckDuckGo's HTML endpoint rather than an official API and uses Chrome TLS impersonation to get past blocking, so it can break or conflict with DuckDuck

Wigolo 🔌 MCP serverOpen source

Local-first MCP server giving coding agents search, crawl, extract and research tools

★ 5.4k · +30 this week

6.8 Visit ↗

arXiv MCP Server 🔌 MCP serverOpen source

Search, read and cite arXiv papers section by section, including original LaTeX

★ 3.2k · +12 this week

6.8 Visit ↗

Popular searches