DDGS multi-category search MCP server
multisearch-mcp
A DDGS-based MCP server with five search tools: text, images, news, video, books
- 1 ★ on the repository
- Last commit
- Apache-2.0
Extended access
Why this level
- Starts a Python server that searches text, images, news and video through the DDGS library
- Page text fetching is enabled by a separate environment variable
Install
- Works in
Manual install
uv syncInstall dependencies; for development add uv sync --group dev.
Access and checks
How we reviewExtended accessThe tool runs code or makes network calls and only reads external data.
- Starts a Python server that searches text, images, news and video through the DDGS library
- Page text fetching is enabled by a separate environment variable
This is third-party code. Review the repository files before installing.
What it does
The server wraps the DDGS (duckduckgo_search) library into five category-based MCP tools: text_search, image_search, news_search, video_search, book_search. Each accepts query plus shared options backend, region, safesearch, page, max_results and returns a normalized results object. There is an optional legacy search tool with a category parameter, enabled via an environment flag, and an optional fetch_content tool for page text. It ships with a production-ready multi-stage Dockerfile with a non-root user and a healthcheck, plus ready configs for VS Code, Cursor and Claude Desktop, both locally and via Docker.
Who it is for. For developers who want a general-purpose DDGS-based MCP search tool covering text, images, news, video and books.
Good fit when
- You want one MCP search server covering all five DDGS categories at once
- You plan a containerized deploy: a production-ready Dockerfile and compose are included
- You want ready configs for VS Code, Cursor and Claude Desktop with no manual wiring
Not a fit when
- You specifically need Yandex search: the code and README have no direct integration with Yandex or any specific engine beyond the DDGS library's pass-through backend parameter
- You need official search-engine APIs with keys and guaranteed rate limits
Example request
Find the five latest news items about the new processor launchMCP
- Transport
- stdio
- Authentication
- not required
Environment variables
MULTISEARCH_ENABLE_LEGACY_SEARCH- Enables the legacy multiplexed search tool with a category parameter
MULTISEARCH_ENABLE_FETCH- Enables the fetch_content tool for retrieving page text
Limitations
The server is not tied to a specific search engine: it fully depends on the DDGS library and whichever backends it supports at install time; the code and README do not mention any Russian service directly. Requires Python 3.13+. The legacy search tool and fetch_content are disabled by default and need environment flags.
How to disable. Remove the multisearch-mcp server from your MCP client configuration or stop the Docker container.
FAQ
Is there special Yandex support?
No, the README and code do not mention Yandex directly; there is only a pass-through backend parameter forwarded to the DDGS library.
Can it run in Docker?
Yes, a production-ready Dockerfile and docker-compose.yml with a healthcheck and non-root user are included.
Discussion
No questions or reviews yet.
Related
MCP serversA metasearch MCP server: the agent searches text, images, news, videos and books across many engines and extracts page content
Web search via DuckDuckGo and page reading for the agent with no API keys, with built-in rate limiting
A local MCP server with no API keys: multi-engine web search, page fetching and document reading tuned for LLMs.
MCP server with DuckDuckGo search and page text extraction: several URLs can be passed in one call
A unified search MCP server: one interface to Tavily, Brave, Kagi, Exa, Linkup, Firecrawl and GitHub search
Metasearch for agents: one MCP server and HTTP API merge results from many search providers into unified JSON with deduplication.
README in short
The README describes the five DDGS category tools, the shared parameter and error schema, optional legacy mode and fetch_content, detailed instructions for adding the server to VS Code, Cursor and Claude Desktop both locally and via Docker, and the Dockerfile structure with a healthcheck and non-root user.