================== /// MCP /// /// DUC /// ================== [server:online] [protocol:ready]
duckduckgo-mcp-server
by nickclyde
A Model Context Protocol (MCP) server that adds DuckDuckGo web-search and content-fetching tools with rate-limiting and LLM-ready formatting.
337
67
Open Source01
search
Performs a web search on DuckDuckGo and returns formatted results containing titles, URLs, and snippets.
02
fetch_content
Fetches and parses content from a webpage, returning cleaned and formatted text.
Installation
1. Clone the repo
git clone https://github.com/nickclyde/duckduckgo-mcp-server.git
cd duckduckgo-mcp-server
2. Create a virtual environment (recommended)
python3 -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
3. Install Python dependencies
pip install -r requirements.txt
# or, if the project is published on PyPI
# pip install duckduckgo-mcp-server
4. (Optional) Environment variables
MCP_PORT=8000 # TCP port the server will listen on (default 8000)
MCP_HOST=0.0.0.0 # Bind address (default 127.0.0.1)
# No API keys are required because DuckDuckGo does not need authentication.
5. Run the server
uvicorn mcp_server.main:app --host ${MCP_HOST:-0.0.0.0} --port ${MCP_PORT:-8000}
6. Verify
curl "http://localhost:8000/search?q=openai"
curl "http://localhost:8000/fetch?url=https%3A%2F%2Fexample.com"
Documentation
License: MIT License
Updated 7/30/2025