Model Context Protocol Server for LLM Tool Integration
Single tool 'web_search' has a basic description and partial schema, but critical gaps prevent production use. Description is adequate (54 chars, within 10-1024 range) but lacks WHEN to use it and prerequisites. Input schema visible with 'query' (required, string) and 'num_results' (optional, integer, default 5), but NO output schema documented, LLMs cannot plan downstream calls. Parameters lack detailed format/constraint descriptions (e.g., what constitutes a valid query? max length?). Tool implementation is a placeholder returning mock results, not functional. No error handling guidance, no recovery paths. No tool annotations (readOnlyHint, etc.). Naming 'web_search' is acceptable (verb_noun) but generic.
Search the web for information
No output schema documented. LLMs cannot infer what fields the tool returns, preventing downstream tool chaining and forcing guesswork on result structure.
Tool implementation is a placeholder returning mock results. The tool does not actually perform web searches, it returns hardcoded example data regardless of input.
Parameter descriptions lack actionable constraints. 'query' has no length limits, format rules, or examples. 'num_results' has no min/max bounds (e.g., 1-100).
No error handling guidance. Tool description does not explain what happens on invalid queries, API failures, or rate limits. No recovery paths for LLM.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 39 | <=2025-11-25 | v2 |
No tool annotations. Missing readOnlyHint (this is a read-only tool), which prevents agents from reasoning about side effects and retry safety.