DuckDuckGo MCP Server 精选
一个模型上下文协议 (MCP) 服务器,通过 DuckDuckGo 提供网页搜索功能,并具有内容获取和解析的附加功能。
Tools
search
Search DuckDuckGo and return formatted results. Args: query: The search query string max_results: Maximum number of results to return (default: 10) ctx: MCP context for logging
fetch_content
Fetch and parse content from a webpage URL. Args: url: The webpage URL to fetch content from ctx: MCP context for logging
README
DuckDuckGo 搜索 MCP 服务器
一个模型上下文协议 (MCP) 服务器,通过 DuckDuckGo 提供网络搜索功能,并具有内容获取和解析的附加功能。
<a href="https://glama.ai/mcp/servers/phcus2gcpn"> <img width="380" height="200" src="https://glama.ai/mcp/servers/phcus2gcpn/badge" alt="DuckDuckGo Server MCP server" /> </a>
功能
- 网络搜索: 使用高级速率限制和结果格式化搜索 DuckDuckGo
- 内容获取: 检索和解析网页内容,具有智能文本提取功能
- 速率限制: 内置针对搜索和内容获取的速率限制保护
- 错误处理: 全面的错误处理和日志记录
- LLM 友好输出: 专门为大型语言模型消费而格式化的结果
安装
通过 Smithery 安装
要通过 Smithery 为 Claude Desktop 自动安装 DuckDuckGo 搜索服务器:
npx -y @smithery/cli install @nickclyde/duckduckgo-mcp-server --client claude
通过 uv
安装
使用 uv
直接从 PyPI 安装:
uv pip install duckduckgo-mcp-server
用法
与 Claude Desktop 一起运行
- 下载 Claude Desktop
- 创建或编辑您的 Claude Desktop 配置:
- 在 macOS 上:
~/Library/Application Support/Claude/claude_desktop_config.json
- 在 Windows 上:
%APPDATA%\Claude\claude_desktop_config.json
- 在 macOS 上:
添加以下配置:
{
"mcpServers": {
"ddg-search": {
"command": "uvx",
"args": ["duckduckgo-mcp-server"]
}
}
}
- 重启 Claude Desktop
开发
对于本地开发,您可以使用 MCP CLI:
# 使用 MCP Inspector 运行
mcp dev server.py
# 在本地安装以使用 Claude Desktop 进行测试
mcp install server.py
可用工具
1. 搜索工具
async def search(query: str, max_results: int = 10) -> str
在 DuckDuckGo 上执行网络搜索并返回格式化的结果。
参数:
query
: 搜索查询字符串max_results
: 要返回的最大结果数(默认值:10)
返回值: 包含搜索结果的格式化字符串,包括标题、URL 和摘要。
2. 内容获取工具
async def fetch_content(url: str) -> str
从网页获取和解析内容。
参数:
url
: 要从中获取内容的网页 URL
返回值: 来自网页的清理和格式化的文本内容。
功能详情
速率限制
- 搜索:每分钟限制 30 个请求
- 内容获取:每分钟限制 20 个请求
- 自动队列管理和等待时间
结果处理
- 删除广告和不相关的内容
- 清理 DuckDuckGo 重定向 URL
- 格式化结果以实现最佳 LLM 消费
- 适当截断长内容
错误处理
- 全面的错误捕获和报告
- 通过 MCP 上下文进行详细的日志记录
- 速率限制或超时时的优雅降级
贡献
欢迎提出问题和拉取请求! 一些潜在的改进领域:
- 附加搜索参数(区域、语言等)
- 增强的内容解析选项
- 频繁访问内容的缓存层
- 附加的速率限制策略
许可证
该项目已获得 MIT 许可证的许可。
推荐服务器
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Playwright MCP Server
提供一个利用模型上下文协议的服务器,以实现类人浏览器的自动化,该服务器使用 Playwright,允许控制浏览器行为,例如导航、元素交互和滚动。
@kazuph/mcp-fetch
用于获取网页内容和处理图像的模型上下文协议服务器。这使得 Claude Desktop(或任何 MCP 客户端)能够适当地获取网页内容和处理图像。
YouTube Transcript MCP Server
这个服务器用于获取指定 YouTube 视频 URL 的字幕,从而可以与 Goose CLI 或 Goose Desktop 集成,进行字幕提取和处理。
serper-search-scrape-mcp-server
这个 Serper MCP 服务器支持搜索和网页抓取,并且支持 Serper API 引入的所有最新参数,例如位置信息。
The Verge News MCP Server
提供从The Verge的RSS feed获取和搜索新闻的工具,允许用户获取今日新闻、检索过去一周的随机文章,以及在最近的Verge内容中搜索特定关键词。
Tavily MCP Server
使用 Tavily 的搜索 API 提供 AI 驱动的网络搜索功能,使 LLM 能够执行复杂的网络搜索、获得问题的直接答案以及搜索最近的新闻文章。
mcp-pinterest
用于图像搜索和信息检索的 Pinterest 模型上下文协议 (MCP) 服务器

Brev
在云端运行、构建、训练和部署机器学习模型。

Crawlab MCP Server