使用说明
DuckDuckGo MCP服务器
一个简单的模型上下文协议(MCP)服务器,使用 duckduckgo_search 图书馆。
特性
- 网页搜索:使用DuckDuckGo搜索网络,可自定义区域和结果限制
- 图像搜索:使用大小和类型过滤器搜索图像
- 图像下载:将图像从URL下载到本地计算机
安装
使用紫外线(推荐)
- 安装 紫外线 如果你还没有:
curl -LsSf https://astral.sh/uv/install.sh | sh
-
克隆此存储库或下载文件
-
创建虚拟环境并安装依赖项:
uv venv
uv pip install -r requirements.txt
使用pip
-
克隆此存储库或下载文件
-
安装依赖项:
pip install -r requirements.txt
用法
运行服务器
使用uv(来自项目目录):
uv run python server.py
或者先激活虚拟环境:
source .venv/bin/activate # On Windows: .venv\Scripts\activate
python server.py
使用标准Python:
python server.py
在Claude Desktop中配置
将此配置添加到您的Claude Desktop配置文件中:
MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
视窗: %APPDATA%/Claude/claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json
使用紫外线(推荐):
{
"mcpServers": {
"duckduckgo-search": {
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/websearch_mcp",
"run",
"python",
"server.py"
]
}
}
}
在虚拟环境中直接使用Python:
{
"mcpServers": {
"duckduckgo-search": {
"command": "/absolute/path/to/websearch_mcp/.venv/bin/python",
"args": ["/absolute/path/to/websearch_mcp/server.py"]
}
}
}
可用工具
网络搜索
使用DuckDuckGo搜索网络。
参数:
query(必填):搜索查询max_results(可选):最大结果数(默认值:10)region(可选):地区代码(默认值:全球为“wt wt”)- 示例:“us en”、“uk en”、”de de”、“fr fr”
例子:
Search the web for "Python MCP servers" with max 5 results
图像搜索
使用DuckDuckGo搜索图像。
参数:
query(必填):图像搜索查询max_results(可选):最大结果数(默认值:10)size(可选):图像大小过滤器- 选项:“小”、“中”、“大”、“壁纸”
type(可选):图像类型过滤器- 选项:“照片”、“剪贴画”、“gif”、“透明”、“线条”
例子:
Search for "cute puppies" images, large size, photo type, max 5 results
download_image
将图像从URL下载到本地计算机。
参数:
url(必填):要下载的图像的URLfilename(可选):下载图像的自定义文件名download_dir(可选):保存图像的目录(默认:“./downloads”)
例子:
Download image from https://example.com/image.jpg to ./my-images/
依赖项
- duckduckgo_search -DuckDuckGo搜索库
- 主控程序 -模型上下文协议SDK
- HTTPX -用于下载图像的HTTP客户端
许可证
有关详细信息,请参阅LICENSE文件。
备注
- 图像下载到
./downloads默认情况下 - 如果下载目录不存在,将自动创建下载目录
- 网络搜索尊重DuckDuckGo的速率限制
- 所有搜索都是匿名的(没有跟踪)