Local web search with multi-engine deep research and on-device re-ranking. No API keys.
MCPpedia last refreshed this data
io.github.nkapila6/mcpsurfr is an MCP server that local web search with multi-engine deep research and on-device re-ranking. No API keys. Its tool list has not been published yet over stdio, sse and http, requires no API key, and scores 62/100 on MCPpedia's security, maintenance and efficiency rubric.
Config is the same across clients - only the file and path differ.
{
"mcpServers": {
"mcpsurfr": {
"args": [
"--from",
"git+https://github.com/nkapila6/mcpsurfr",
"mcpsurfr"
],
"command": "uvx"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
Local web search with multi-engine deep research and on-device re-ranking. No API keys.
Run this in your terminal to verify the server starts. Then let us know if it worked - your result helps other developers.
uvx 'mcpsurfr' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories - click any category to see the underlying evidence.
No known CVEs.
Checked mcpsurfr against OSV.dev.
Click any tool to inspect its schema.
Be the first to review
Have you used this server?
Share your experience - it helps other developers decide.
Sign in to write a review.
Others in search
Open-source web scraper for AI agents with scrape, crawl, and map tools
MCP server for advanced web search using Tavily
MCP server for enterprise local codebase indexing, semantic search, and code dependency graphs.
The official MCP server implementation for the Perplexity API Platform
MCP Security Weekly
Get CVE alerts and security updates for io.github.nkapila6/mcpsurfr and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
Local web search for your LLM over MCP. No API keys, and results are ranked on your machine.
Formerly mcp-local-rag.
flowchart LR
Q["query + keywords"] --> S["ddgs<br>several engines, no keys"]
S --> R["re-rank<br>on device"]
R --> F["fetch top pages<br>main text, PDFs"]
F -->|search| P["best passages<br>~1k tokens"]
F -->|rag_search_ddgs<br>deep_research| W["full pages<br>shared budget"]
What's in it:
auto mode asks several engines at once and skips blocked ones.search returns just the paragraphs that answer the question, about a tenth of the tokens, and deep_research can do the same per search term. When nothing matches well, search can ask you whether you want the full pages instead.