MCP server for web search using local SearXNG instance
Three tools with complete schemas and descriptions, but significant gaps in parameter documentation and output schema clarity. web_search and multi_search have good descriptions (150-180 chars, within baseline 194 avg), but parameter descriptions are sparse or missing. clear_cache lacks meaningful description (18 chars, below 20-char floor). No output schema documented for any tool. Error handling and recovery guidance absent. Naming follows verb_noun convention (web_search, multi_search, clear_cache) but lacks specificity about what 'search' returns or when to use multi_search vs web_search.
Clear the search results cache. Useful when you need fresh results or to free up memory.
Perform multiple web searches concurrently. Useful for comparing information from different queries or exploring related topics simultaneously.
Search the web using SearXNG. Returns relevant web pages with titles, URLs, and content snippets. Supports filtering and multiple concurrent searches.
clear_cache description is 18 characters ('Clear the search results cache. Useful when you need fresh results or to free up memory.'), below 20-char floor. Lacks actionable context for LLM selection.
No output schema documented for any tool. LLMs cannot plan downstream calls or extract required fields (e.g., does web_search return domain, publishedDate, snippet?). Baseline: 100% of A+ tools document return types.
Parameter descriptions missing or minimal. 'language' (web_search) has description 'Language code for search results (e.g., "en", "es", "fr")' but no format spec or validation hint. 'categories' lacks guidance on valid values. Baseline: 100% of A+ tools have param descriptions.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 51 | 2026-07-28+ | v2 |
No error handling or recovery guidance. If SearXNG is unreachable, offline, or returns malformed JSON, the tool will fail silently. No guidance for LLM on retry strategy, fallback, or user-fixable issues.
multi_search vs web_search distinction unclear. Description says 'concurrent searches' but doesn't explain when to prefer multi_search over calling web_search multiple times. LLM may choose wrong tool.