A side-by-side look at the Open WebSearch and Surface MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Open WebSearch for search & data extraction work as a local process; choose Surface for search & data extraction as a local process. You can also run both side by side in one mcpServers block.
search, fetchLinuxDoArticle, fetchCsdnArticle.SURFACE_API_KEY, SURFACE_BASE_URL.Rows where the two servers differ are marked.
| Spec | S Surface | |
|---|---|---|
| Category | Search & Data Extraction | Search & Data Extraction |
| Quality signal | 65/100 · Great | 74/100 · Great |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | No auth required | API key required |
| Pricing | Free | Freemium |
| Required env vars | None listed | SURFACE_API_KEYSURFACE_BASE_URL |
| Verified owner | Community listing | Verified |
| GitHub stars | 1,857 | 0 |
| Directory activity | 3 views 0 installs 0 upvotes | 1 views 0 installs 0 upvotes |
| Tools | 6 | Not listed |
| Full listing | View Open WebSearch | View Surface |
searchSearch the web using multiple engines (e.g., Baidu, Bing, DuckDuckGo, CSDN, Exa, Brave, Juejin(掘金), Startpage, Sogou(搜狗)) with no API key required. searchMode meanings: omit or set auto to use the server configured SEARCH_MODE; request forces request-based search; playwright forces browser-based search.fetchLinuxDoArticleFetch full article content from a linux.do post URLfetchCsdnArticleFetch full article content from a csdn post URLfetchGithubReadmeFetch README content from a GitHub repository URLfetchWebContentFetch content from a public HTTP(S) URL (supports Markdown files and normal web pages)fetchJuejinArticleFetch full article content from a Juejin(掘金) post URLNo tool names declared yet. Check the project README from the listing page.
Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"aas-ee-open-websearch": {
"command": "npx",
"args": [
"-y",
"open-websearch@latest"
]
}
}
}
{
"mcpServers": {
"surface": {
"command": "npx",
"args": [
"-y",
"github:Surface-ops/surface"
],
"env": {
"SURFACE_API_KEY": "YOUR_SURFACE_API_KEY_HERE",
"SURFACE_BASE_URL": "YOUR_SURFACE_BASE_URL_HERE"
}
}
}
}