search
Search the web with DuckDuckGo and return result titles, URLs, and snippets.
queryrequiredregionmax_results
io.github.CloudCorpRecordsPublished by GitHub account CloudCorpRecordsv0.1.0Updated Nov 7, 2026
Web search through DuckDuckGo and readable page fetching, no API key needed.
Keyless web search via DuckDuckGo plus readable page fetching, exposed as two MCP tools for local use.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Follow the launch instructions in the repository.
privatesearch looks things up on the web without an account, an API key, or a search subscription. It asks DuckDuckGo's public HTML endpoint a question and hands back the titles, addresses, and excerpts of what came up, and it can also open a page and return the words on it as plain readable text. It works from the command line or as an MCP server for agents.
Or run the container image:
The container defaults to the MCP server (see below). Pass CLI arguments to use it as a CLI instead.
Exit codes: 0 on success, 1 when a search or fetch fails (the
error names the problem), 2 for usage errors.
One bin serves both faces. The mcp subcommand starts a stdio MCP
server:
MCP client configuration:
Search reads the result blocks of the HTML endpoint's response page; when the endpoint returns no blocks the result list is empty rather than an error. Fetch failures (non-2xx responses, unreachable hosts) are reported as tool errors.
MIT — see LICENSE.
Source: README.md at commit e0b9700
Search the web with DuckDuckGo and return result titles, URLs, and snippets.
queryrequiredregionmax_resultsFetch a web page and return its readable text content.
urlrequired90% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
npx @reneturcios/privatesearch search "trail running shoes"docker run -i ghcr.io/cloudcorprecords/privatesearch# Search the web; results print as title / URL / snippet blocksprivatesearch search "composting basics"privatesearch search "composting basics" --max-results 5 --region uk-enprivatesearch search "composting basics" --json
# Fetch a page as readable text (markup, scripts, and styles removed)privatesearch fetch-content https://example.com/some/article
privatesearch --versionnpx -y @reneturcios/privatesearch mcp{ "mcpServers": { "privatesearch": { "command": "npx", "args": ["-y", "@reneturcios/privatesearch", "mcp"] } }}npm installnpm run build # tsc -> dist/npm test # node test runner over test/*.test.ts, no network (fake fetch fixtures)npm run dev # run the CLI from source via tsx