Privatesearch

io.github.CloudCorpRecordsPublished by GitHub account CloudCorpRecordsv0.1.0Updated Nov 7, 2026

Web search through DuckDuckGo and readable page fetching, no API key needed.

Overview

AI-generated overview

Keyless web search via DuckDuckGo plus readable page fetching, exposed as two MCP tools for local use.

What you can do
  • Search the web through DuckDuckGo and get titles, unwrapped destination URLs and snippets, with optional result count and region code
  • Fetch a web page and return its readable text with scripts, styles, head material and tags removed
When to use it
Useful when an assistant needs to look things up on the web or read a page's text without setting up a search API account, key or subscription.
Requirements
Runs as a local stdio process, either via npx with the npm package or via the published container image; no account, API key, environment variables or headers are declared. Network access to DuckDuckGo and to fetched pages is required.
Before you install
Search queries and fetched URLs go to DuckDuckGo and the target sites, so they are visible to those third parties. Fetch failures are reported as tool errors, while an empty search result list is returned instead of an error. No write, send or delete actions are exposed.

Installation

In SourceWeft

  1. Open Privatesearch in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

privatesearch

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.

Install

bash
npx @reneturcios/privatesearch search "trail running shoes"

Or run the container image:

bash
docker run -i ghcr.io/cloudcorprecords/privatesearch

The container defaults to the MCP server (see below). Pass CLI arguments to use it as a CLI instead.

CLI

bash
# 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 --version

Exit codes: 0 on success, 1 when a search or fetch fails (the error names the problem), 2 for usage errors.

MCP server

One bin serves both faces. The mcp subcommand starts a stdio MCP server:

bash
npx -y @reneturcios/privatesearch mcp

MCP client configuration:

json
{  "mcpServers": {    "privatesearch": {      "command": "npx",      "args": ["-y", "@reneturcios/privatesearch", "mcp"]    }  }}

Tools

ToolInputWhat it returns
searchquery (string, required), max_results (integer, optional), region (string, optional, a DuckDuckGo region code such as us-en)The matching results: for each one a title, the destination URL (redirect wrappers are unwrapped), and a snippet excerpt.
fetch_contenturl (string, required)The page's readable text: script, style, and head material removed, tags stripped, entities decoded.

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.

Development

bash
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

License

MIT — see LICENSE.

Source: README.md at commit e0b9700

Tools

2

fetch_content

Fetch a web page and return its readable text content.

Parametersurlrequired

Version history

1
  1. v0.1.0LatestOct 30, 2026

Score

90% 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.

  • Reached in the last 30 days25 pts
  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts