A side-by-side look at the Webfetch and Agent Search MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Webfetch for search & data extraction work as a local process; choose Agent Search MCP for search & data extraction as a local process. You can also run both side by side in one mcpServers block.
free_search, free_search_advanced, free_extract.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Search & Data Extraction | Search & Data Extraction |
| Quality signal | 53/100 · Good | 69/100 · Great |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | No auth required | No auth required |
| Pricing | Free | Free |
| Required env vars | None listed | None listed |
| Verified owner | Community listing | Community listing |
| GitHub stars | 3 | 110 |
| Directory activity | 4 views 0 installs 0 upvotes | 4 views 0 installs 0 upvotes |
| Tools | Not listed | 7 |
| Full listing | View Webfetch | View Agent Search MCP |
No tool names declared yet. Check the project README from the listing page.
free_searchQuick public-web search for current facts and discovery.
Use free_search_advanced for verification or domain filters. Use free_extract for one selected URL.
Returns compact multi-source evidence with confidence, relevance, source_count, stop_reason, evidence_budget, and partialFailures. Provider families are counted once even when several adapters use the same upstream. Optional API providers run only when credentials and policy allow.
@readOnly true @idempotent true — makes outbound HTTP requests to configured search engines. Injection detection and SSRF protection active.free_search_advancedVerification-oriented search with domain filters and waterfall fallback.
Use for claim checking, Chinese-source search, or publisher restrictions. Start with free_search for quick discovery. The response exposes source_count, stop_reason, evidence_budget, and partialFailures.
@readOnly true @idempotent true — runs waterfall progressive search across policy-allowed engines. Makes outbound HTTP requests to search engines and optionally to Jina Reader for content enrichment.free_extractExtract one selected URL into clean Markdown.
Use after search when snippets are insufficient, or for a URL supplied by the user. It fetches one page; it does not search or bulk-extract URLs.
Behavior: Makes an outbound HTTP request to Jina Reader (r.jina.ai) which fetches and converts the page to markdown. Has SSRF protection: blocks private IPs, localhost, and metadata endpoints. 10s request timeout — pages exceeding this will fail with a timeout error. HTTP errors (4xx, 5xx) are returned as structured error responses.fetch_github_readmeFetch README content from a GitHub repository.
Best for: Getting project documentation quickly.
Not recommended for: Non-GitHub URLs — use free_extract instead.
@readOnly true @idempotent true — makes outbound HTTP requests to raw.githubusercontent.com.fetch_csdn_articleFetch content from a CSDN blog article.
Best for: Chinese developer blog content on CSDN.
Not recommended for: Other Chinese sites — use free_extract instead.
@readOnly true @idempotent true — makes outbound HTTP requests to the CSDN article URL.fetch_juejin_articleFetch content from a Juejin article.
Best for: Chinese developer articles on Juejin.
Not recommended for: Non-Juejin content — use free_extract instead.
@readOnly true @idempotent true — makes outbound HTTP requests to juejin.cn API.search_with_synthesisOpt-in deep search with waterfall verification and content enrichment. Returns structured results plus a prompt_hint; it does not call an external LLM.
Use when multi-source evidence needs a synthesis handoff. free_search is the default for discovery; this path uses more tokens and network time.
@readOnly true @idempotent true — runs waterfall search across free+paid engines with content enrichment.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": {
"ashlrai-webfetch": {
"command": "npx",
"args": [
"-y",
"getwebfetch-mcp"
]
}
}
}
{
"mcpServers": {
"lennney-agent-search-mcp": {
"command": "npx",
"args": [
"-y",
"agent-search-mcp"
]
}
}
}