DuckDuckGo MCP Server
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Integrations
Allows performing web searches using the DuckDuckGo API, with support for configuring the number of results and SafeSearch settings
duckduckgo-search MCP Server
English | 中文
A Model Context Protocol server for DuckDuckGo Search
This is a TypeScript-based MCP server that provides DuckDuckGo search functionality. It demonstrates core MCP concepts through:
- Integration with DuckDuckGo Search
- Easy-to-use search tool interface
- Rate limiting and error handling support
Features
Search Tool
duckduckgo_search
- Perform web searches using DuckDuckGo API- Required parameter:
query
(search query, max 400 characters) - Optional parameter:
count
(number of results, 1-20, default 10) - Optional parameter:
safeSearch
(safety level: strict/moderate/off, default moderate) - Returns formatted Markdown search results
- Required parameter:
Rate Limits
- Maximum 1 request per second
- Maximum 15000 requests per month
Development
Prerequisites
- Node.js >= 18
- pnpm >= 8.0.0
Installation
Build and Run
Build the server:
For development with auto-rebuild:
Setup in Claude Desktop
To use with Claude Desktop, add the server config:
On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
Debugging
Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector, which is available as a package script:
The Inspector will provide a URL to access debugging tools in your browser.
You must be authenticated.
A Model Context Protocol server that provides DuckDuckGo search functionality for Claude, enabling web search capabilities through a clean tool interface with rate limiting support.