duckduckgo-mcp-server  by nickclyde

Web search and content fetching for LLMs

Created 6 months ago
475 stars

Top 64.4% on SourcePulse

GitHubView on GitHub
Project Summary

This project provides a Model Context Protocol (MCP) server that integrates DuckDuckGo web search and content fetching capabilities, designed for consumption by LLM applications like Claude Desktop. It offers LLM-friendly output formatting, intelligent content extraction, and built-in rate limiting for both search and fetching operations.

How It Works

The server exposes two primary tools: a search tool that queries DuckDuckGo and a content fetching tool that retrieves and parses webpage content. It employs intelligent text extraction to clean and format fetched content, removing ads and irrelevant information. Advanced rate limiting is implemented to manage request frequency, ensuring smooth operation and preventing blocks.

Quick Start & Requirements

  • Installation: uv pip install duckduckgo-mcp-server
  • Usage: Configure Claude Desktop by adding "ddg-search": {"command": "uvx", "args": ["duckduckgo-mcp-server"]} to mcpServers in its configuration file.
  • Development: Use mcp dev server.py for local development.
  • Dependencies: Python, uv.

Highlighted Details

  • Search rate limited to 30 requests/minute.
  • Content fetching rate limited to 20 requests/minute.
  • Results are cleaned, ads removed, and formatted for LLM consumption.
  • Handles redirects and truncates long content.

Maintenance & Community

Contributions via issues and pull requests are welcome. Potential improvements include additional search parameters, enhanced parsing, caching, and alternative rate limiting strategies.

Licensing & Compatibility

Licensed under the MIT License, permitting commercial use and integration with closed-source applications.

Limitations & Caveats

The project is primarily focused on DuckDuckGo and may not support other search engines. Content parsing effectiveness can vary depending on webpage structure.

Health Check
Last Commit

6 months ago

Responsiveness

Inactive

Pull Requests (30d)
1
Issues (30d)
1
Star History
88 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.