
@ericthered926/duckduckgo-mcp-server
DuckDuckGo MCP Server
A Model Context Protocol (MCP) server that provides DuckDuckGo search functionality for AI assistants.
Attribution: This project is a fork of zhsama/duckduckgo-mcp-server, originally created by zhsama. This fork adds English localization, news search, region support, time filtering, and modern tooling.
Features
- Web Search - Search the web with region-specific and time-filtered results
- News Search - Search recent news articles with source and date information
- Token Optimization - Configurable result limits, snippet truncation, and formatting for low-VRAM LLMs
- SafeSearch - Content filtering (strict, moderate, off)
- Region Support - Localized results for different countries
- Time Filtering - Filter results by day, week, month, year
- Rate Limiting - Configurable rate limits to prevent abuse
- Configurable Logging - Debug, info, warn, error, or none
Installation
Prerequisites
- Node.js >= 18.0.0 (tested with Node 24)
- npm
Install & Build
npm install
npm run build
Available Tools
duckduckgo_web_search
Performs a web search using DuckDuckGo.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
query | string | Yes | - | Search query (max 400 characters) |
limit | number | No | DDG_MAX_RESULTS | Override default result limit (1-20) |
count | number | No | DDG_MAX_RESULTS | [Deprecated: use limit] Number of results |
safeSearch | string | No | "moderate" | Filter: "strict", "moderate", or "off" |
region | string | No | "wt-wt" | Region code (e.g., "us-en", "uk-en", "de-de") |
time | string | No | "all" | Time range: "day", "week", "month", "year", "all" |
Example:
{
"query": "TypeScript best practices",
"count": 5,
"region": "us-en",
"time": "month"
}
duckduckgo_news_search
Search for recent news articles.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
query | string | Yes | - | News search query (max 400 characters) |
limit | number | No | DDG_MAX_RESULTS | Override default result limit (1-20) |
count | number | No | DDG_MAX_RESULTS | [Deprecated: use limit] Number of results |
safeSearch | string | No | "moderate" | Filter: "strict", "moderate", or "off" |
time | string | No | "all" | Time range: "day", "week", "month", "year", "all" |
Example:
{
"query": "artificial intelligence",
"count": 10,
"time": "week"
}
Supported Regions
| Code | Region |
|---|---|
wt-wt | Worldwide |
us-en | United States |
uk-en | United Kingdom |
ca-en | Canada (English) |
au-en | Australia |
de-de | Germany |
fr-fr | France |
es-es | Spain |
it-it | Italy |
jp-jp | Japan |
br-pt | Brazil |
mx-es | Mexico |
in-en | India |
Other region codes following the xx-xx format may also work.
Configuration
Environment Variables
Token Optimization (for low-VRAM LLMs)
| Variable
Related servers

n8n
by n8n-io
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
NOASSERTION★ 198,904

@modelcontextprotocol/server-everything
OfficialMCP server that exercises all the features of the MCP protocol
★ 89,105

@modelcontextprotocol/server-filesystem
OfficialMCP server for filesystem access
SEE LICENSE IN LICENSE★ 89,105