An MCP server that provides web search and web fetch capabilities. It supports web search across multiple engines (SearXNG, Google, Bing, Brave, Arxiv) and web page content fetching with HTML to Markdown conversion.
Two tools with reasonable naming (verb_noun pattern) and documented schemas. web_search has comprehensive parameter descriptions and enum constraints (search_depth). web_fetch has clear parameter documentation. However, both tool descriptions are moderately detailed but lack explicit guidance on when to use each tool vs. alternatives, and neither documents output schema structure. Parameter descriptions are present but some lack format/constraint details (e.g., 'query' lacks length guidance). No error handling guidance visible in definitions. Missing tool annotations (readOnlyHint, idempotentHint) despite both being read-only operations.
Fetch a website URL and extract its content, with support for HTML to Markdown conversion and content slicing
Search the web using configured search engines with support for multiple query types (general, news, academic) and depth-based query expansion
Output schemas not documented. Neither tool specifies what fields are returned or their types. LLMs cannot plan downstream operations or extract required data without knowing response structure.
Tool descriptions lack selection guidance. Both descriptions explain what the tool does but not when to use it instead of alternatives or what prerequisites exist. 'Search the web using configured search engines...' does not tell an LLM when to call web_search vs. web_fetch.
Missing tool annotations. Both tools are read-only (Risk: READ_ONLY noted) but lack explicit readOnlyHint annotations in the schema. This prevents clients from optimizing caching or retry logic.
Parameter 'query' in web_search lacks format constraints. No length limits, character restrictions, or examples of valid queries documented. LLMs may pass excessively long or malformed queries.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 51 | <=2025-11-25 | v2 |
No error handling guidance in tool definitions. If a search fails or a URL is unreachable, the definitions do not indicate what the LLM should do next (retry, try alternative engine, ask user).