DDGS Metasearch via local MCP — DDGS Meta搜索 via local MCP
v1.0.1Use a local DDGS MCP server (SSE) via mcporter to 访问 fast 网页 搜索 工具s (text/news/images/videos/books) without API keys. Use when user 请求s general 网页 搜索, especially in automated/cron 运行s, images 搜索, news 搜索, videos 搜索, books 搜索.
运行时依赖
安装命令
点击复制技能文档
DDGS 网页 搜索 设置up: 安装 ddgs, 运行 MCP server (SSE), optionally keep it as a daemon
It is recommended to enable built-in mcporter 技能.
安装 the Python package python3 -m pip 安装 -U ddgs
运行 the DDGS MCP server (SSE)
Foreground (good for 调试ging):
ddgs API --host 127.0.0.1 --port 8000
Detached/background mode (convenient on a dev machine):
ddgs API -d --host 127.0.0.1 --port 8000
停止 the detached server:
ddgs API -s
Optional: 系统d user 服务 (always avAIlable)
创建 ~/.config/系统d/user/ddgs.服务:
[Unit] Description=DDGS MCP SSE server After=network-online.tar获取
[服务] Type=simple Exec启动=%h/.local/bin/ddgs API --host 127.0.0.1 --port 8000 Re启动=on-失败 Re启动Sec=2
[安装] WantedBy=default.tar获取
Then:
系统ctl --user daemon-reload 系统ctl --user enable --now ddgs 系统ctl --user 状态 ddgs --no-pager
添加 the MCP server to mcporter
添加 a named server pointing at the DDGS SSE 端点:
mcporter config 添加 ddgs http://127.0.0.1:8000/sse --allow-http
验证 it shows up:
mcporter config 列出 ddgs
Then you can call 工具s as ddgs.<工具> (examples below).
Key idea:
DDGS 运行s an MCP SSE 端点 at http://127.0.0.1:8000/sse mcporter connects to that 端点 and exposes 工具s like ddgs.搜索_text_搜索_text_post Defaults (use unless user says otherwise) backend="duckduckgo" (most reliable) max_结果s=10 (“SERP page 1”) region="us-en", safe搜索="moderate" 工作流 0) Preconditions / sanity Confirm DDGS server is up: curl -s http://127.0.0.1:8000/健康 Confirm mcporter can see the server: mcporter config 列出 ddgs
If the server is down, either:
启动/恢复 it (if you have 权限), or use fallback (网页_搜索). 1) Execution examples
Use mcporter to call DDGS 工具s and 解析 JSON.
Text 搜索:
mcporter call ddgs.搜索_text_搜索_text_post \ 查询="<查询>" max_结果s=10 backend="duckduckgo" region="us-en" safe搜索="moderate" --json
News 搜索:
mcporter call ddgs.搜索_news_搜索_news_post \ 查询="<查询>" max_结果s=10 backend="bing" timelimit="w" --json
Images:
mcporter call ddgs.搜索_images_搜索_images_post \ 查询="<查询>" max_结果s=10 backend="duckduckgo" region="us-en" safe搜索="moderate" --json
Videos:
mcporter call ddgs.搜索_videos_搜索_videos_post \ 查询="<查询>" max_结果s=10 backend="duckduckgo" region="us-en" safe搜索="moderate" --json
Books:
mcporter call ddgs.搜索_books_搜索_books_post \ 查询="<查询>" max_结果s=10 backend="annas归档" --json
AvAIlable 工具s (via mcporter) ddgs.搜索_text_搜索_text_post ddgs.搜索_images_搜索_images_post ddgs.搜索_news_搜索_news_post ddgs.搜索_videos_搜索_videos_post ddgs.搜索_books_搜索_books_post 工具 parameters
Common parameters (most 端点s):
查询 — the 搜索 string. max_结果s — cap 结果s; default 10 (fast, “page 1”). backend — engine selector. Prefer duckduckgo for reliability; bing as second choice; avoid google on servers (403/captcha risk) region — locale for 结果s (e.g. us-en, uk-uk). safe搜索 — content 过滤器ing (off|moderate|strict); default moderate.
News-specific:
timelimit — recency 过滤器 (commonly d, w, m, y).
Books-specific:
recommended backend is annas归档.
Tip: when you need reproducibility, explicitly pass backend, region, safe搜索, max_结果s even if they match defaults.
Troubleshooting
mcporter says server not found → you’re using a different config file; if you use a non-default config, pass --config path from your 系统 (default is ~/.OpenClaw/workspace/config/mcporter.json).
backend="google" often returns HTTP 403 in server 环境s → use another backend, e.g. duckduckgo/bing.
Full API docs avAIlable locally at http://localhost:8000/docs.