
mcp-retriever
io.github.keiranhaaxv0.0.24Updated Oct 8, 2026
One MCP server for web search, page extraction, and cited research.
Overview
Lets an assistant run web searches across multiple providers, extract and crawl pages, and return cited research results.
- What it does
- Combines two or three search providers into one fused ranking with deduplicated URLs via web_search_fused, and returns per-provider status when one fails. Extracts page content, crawls sites, and can recover 404 or 410 pages from Wayback Machine snapshots when archive fallback is enabled. Optional spending caps, cooldowns, and paged access to large results help control usage.
- When to use it
- Use it when an assistant needs web search and page reading with citations, or when you want to query several search providers at once and merge their rankings. It suits research and retrieval workflows where provider keys should stay out of client configuration files.
- Requirements
- Runs locally over stdio and requires Node.js 22 or newer. Needs at least one provider key (Tavily, Brave, Exa, You.com, GitHub, Linkup, Firecrawl, or Context.dev) or your own SearXNG instance. Keys are stored in a credentials file rather than client configs; restart the client after setup.
Installation
In SourceWeft
- Open mcp-retriever in the dashboard and add it to a workspace.
- 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
mcp-retriever
One MCP server for web search, page extraction, and cited research. Use your own providers, combine their results, and keep API keys out of client configs.
- Search together: query two or three providers, deduplicate URLs,
and merge rankings with
web_search_fused. - Read more: extract pages, crawl sites, and recover 404/410 pages from Wayback Machine snapshots when archive fallback is enabled.
- Control usage: optional spending caps for provider-reported usage, cooldowns, and paged access to large results.
Supports Tavily, Brave, Exa, You.com, SearXNG, GitHub, Linkup, Firecrawl, and Context.dev. Configure only what you use.
Quickstart
Requires Node.js 22+ and a provider key, or your own SearXNG instance.
Choose providers, save keys privately, and connect your MCP client. The wizard writes Claude Desktop and Cursor entries, or shows the command/configuration for Claude Code and Codex. Billable key checks require consent.
[Setup wizard and provider selection]
Keys are stored in ~/.config/mcp-retriever/credentials.env, not in
client configs. Restart your client after setup.
Client connection and key management
Add, test, or remove keys:
Screenshots show a demo session with fixture credentials and a mocked key-check response, not a live provider validation.
Example
Call web_search_fused with two configured search providers:
Results include source providers and merged rankings. If a provider fails, available results are returned with per-provider status.
Documentation
- Configuration: keys, manual client setup, providers, and spending controls.
- Search and read: retrieving pages and handling large results.
- Tool groups: choose which capabilities to expose.
- Deployment: remote HTTP access and operations.
- Contributing: build from source and run checks.
Each server instance shares one trust boundary. Do not use its result store for mutually untrusted clients. Spending caps depend on provider-reported usage, not estimated costs.
License and origins
MIT.
Formerly named mcp-omnisearch; a maintained fork of Scott Spence's
mcp-omnisearch. When
upgrading this fork, rename OMNISEARCH_* settings to RETRIEVER_*,
omnisearch:// resources to retriever://, and _meta.omnisearch to
_meta.retriever. Preserve the old result store and spending ledger
when moving to ~/.cache/mcp-retriever/results; Docker/MCPO clients
must also change /omnisearch to /retriever.
Source: README.md at commit e0fd4d6
Tools
0Version history
1- v0.0.24LatestOct 8, 2026

