mcpsurfr — Claude Code MCP server: what it does, how to install
Local web search MCP server without API keys. Queries multiple search backends and ranks relevant passages directly on your device.
claude mcp add mcpsurfr -- docker run -i --rm ghcr.io/nkapila6/mcpsurfr:v1.1.1What mcpsurfr does
This server enables agents to browse the live web without external API subscriptions. It sends queries through the ddgs package, gathering hits from backends like DuckDuckGo, Brave, Startpage, or Wikipedia. If Google responds with blocks, the engine falls back to its auto multi-engine routine automatically.
Ranking happens on your own CPU using a compact MobileBERT model running on pure numpy. The server strips boilerplate such as navigation headers, cookie notices, and footers while preserving source code blocks and tables. Instead of feeding entire web pages into your context window, the primary search tool extracts only relevant paragraphs.
Running the packaged container requires Docker installed on your host. When you need larger document payloads, adjust the environment variable MCPSURFR_MAX_CHARS in your server configuration.
What it helps with
- search the public web without third-party search API credentials
- extract relevant text passages instead of loading full web pages
- aggregate multi-query research across several search engines at once
- clean web content while preserving table formatting and code blocks
Example prompts for the agent
- Use mcpsurfr to search for recent syntax updates in Python
- Run deep_research on the latest developments in local embedding models
- Search Brave for troubleshooting steps regarding Docker networking errors
How to install mcpsurfr
Platform CLI
claude mcp add mcpsurfr -- docker run -i --rm ghcr.io/nkapila6/mcpsurfr:v1.1.1Platform CLI
codex mcp add mcpsurfr -- docker run -i --rm ghcr.io/nkapila6/mcpsurfr:v1.1.1Config file
{
"mcpServers": {
"mcpsurfr": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/nkapila6/mcpsurfr:v1.1.1"
]
}
}
}Config file
{
"servers": {
"mcpsurfr": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/nkapila6/mcpsurfr:v1.1.1"
]
}
}
}Platform CLI
gemini mcp add mcpsurfr docker run -i --rm ghcr.io/nkapila6/mcpsurfr:v1.1.1Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more
Questions about mcpsurfr
How to install mcpsurfr in Claude Code?
Run this command in your terminal:
claude mcp add mcpsurfr -- docker run -i --rm ghcr.io/nkapila6/mcpsurfr:v1.1.1
Does mcpsurfr require any paid API keys?
No API keys are needed because it routes queries through public search backends using the ddgs library.
How does mcpsurfr minimize token usage in prompts?
Its primary search tool parses pages into snippets and returns only the matching passages rather than dumping full page text into the model context.