MCP server for meta web search using SearXNG, deployed as Azure Functions
Two tools present with basic schemas and descriptions. websearch has a well-structured input schema with 7 parameters (query, max_results, engines, language, time_range, pageno, safesearch), all typed and described. hello_mcp is a trivial placeholder with empty input. Descriptions are minimal (18 and 12 chars respectively), below the 50-200 char LLM-optimized baseline. No output schemas documented. No error handling guidance. No parameter constraints (enums for safesearch, time_range). websearch lacks pagination metadata (total_count, next_cursor) and result limits. No tool annotations (readOnlyHint present via Risk field but not in MCP schema). Overall structure is functional but lacks production-grade polish.
Hello world.
Meta web search using SearXNG.
Tool descriptions are too short (18 and 12 chars). LLM-optimized descriptions should be 50-200 chars, explaining WHAT the tool does, WHEN to use it, and any prerequisites.
No output schema documented for websearch. LLMs need to know what fields to expect (e.g., title, url, snippet, source) to plan downstream calls and extract data correctly.
websearch lacks pagination metadata. Should return total_count or next_cursor and accept limit parameter (currently max_results). Without pagination, large result sets blow context windows.
Parameters safesearch and time_range lack enum constraints. Free-form strings invite hallucinated values. Should declare valid options (e.g., safesearch: [strict, moderate, off]; time_range: [day, week, month, year]).
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 44 | 2026-07-28+ | v2 |
hello_mcp is a placeholder tool with no description and no clear purpose. Either remove it or document its actual function and when an LLM should invoke it.