DuckDuckGo Search MCP ๐
A blazing-fast, privacy-friendly Model Context Protocol (MCP) server for web search and URL content extraction using DuckDuckGo.
Subscribe for updates & tutorials[!IMPORTANT]DuckDuckGo Search MCP supports the Model Context Protocol (MCP) standard, making it compatible with various AI assistants and tools.
โจ Features
[!IMPORTANT]Unlike many search tools, this package performs actual web scraping rather than using limited APIs, giving you more comprehensive results.
๐ Quick Start
npx -y @oevortex/ddg_search
[!TIP]This will download and run the MCP server directly without installation โ perfect for quick use with AI assistants.
๐ ๏ธ Installation Options
Global Installationnpm install -g @oevortex/ddg_search
Run globally:
ddg-search-mcp
Local Installation (Development)
git clone https://github.com/OEvortex/ddg_search.git
cd ddg_search
npm install
npm start
๐งโ๐ป Command Line Options
npx -y @oevortex/ddg_search --help
[!TIP]Use the
--version
flag to check which version you're running.
๐ค Using with MCP Clients
[!IMPORTANT]The most common way to use this tool is by integrating it with MCP-compatible AI assistants.
Add the server to your MCP client configuration:
{
"mcpServers": {
"ddg-search": {
"command": "npx",
"args": ["-y", "@oevortex/ddg_search"]
}
}
}
Or if installed globally:
{
"mcpServers": {
"ddg-search": {
"command": "ddg-search-mcp"
}
}
}
[!TIP]After configuring, restart your MCP client to apply the changes.
๐งฐ Tools Overview
web-search
- query (string, required): The search query
- page (integer, optional, default: 1): Page number
- numResults (integer, optional, default: 10): Number of results (1-20)
fetch-url
- url (string, required): The URL to fetch
- maxLength (integer, optional, default: 10000): Max content length
- extractMainContent (boolean, optional, default: true): Extract main content
- includeLinks (boolean, optional, default: true): Include link text
- includeImages (boolean, optional, default: true): Include image alt text
- excludeTags (array, optional): Tags to exclude
url-metadata
- url (string, required): The URL to extract metadata from
๐ Project Structure
bin/ # Command-line interface
src/
index.js # Main entry point
tools/ # Tool definitions and handlers
searchTool.js
fetchUrlTool.js
metadataTool.js
utils/
search.js # Search and URL utilities
package.json
README.md
๐ค Contributing
Contributions are welcome! Please open issues or submit pull requests.
[!NOTE]Please follow the existing code style and add tests for new features.
๐บ YouTube Channel
๐ License
Apache License 2.0
[!NOTE]This project is licensed under the Apache License 2.0 โ see the LICENSE file for details.