Zero-dependency AI tool discovery and routing for MCP, OpenAI, Anthropic, and Gemini catalogs
Single tool 'search_tools' has a well-defined schema with proper types, constraints (minLength, min/max), and clear descriptions. The tool name uses verb_noun pattern (search_tools) and the description is concise (97 chars, within 10-1024 baseline). Input schema is complete with required fields and additionalProperties=false. However, the tool lacks output schema documentation, the execute() function returns a structured object but this is not formally documented in the tool definition. No error handling guidance for LLMs (e.g., what to do if query is too vague). The tool is a meta-tool for discovery, not a domain-specific tool, which limits applicability for typical agent scenarios.
Find the smallest set of available tools relevant to a capability or task.
Output schema not documented. The execute() function returns {catalogSize, query, tools: [{description, id, name, namespace, score, tags}]} but this structure is not declared in the tool definition. LLMs cannot plan downstream calls or extract fields without knowing the response shape.
No error handling guidance. If the query is empty, malformed, or returns no matches, the tool fails silently or returns an empty array. Descriptions should guide LLMs: 'If no tools match, try a broader query or check available tool categories.'
Limited context for tool selection. The description 'Find the smallest set of available tools relevant to a capability or task' does not explain WHEN to call this tool vs. other discovery methods, or what 'smallest set' means (fewest results? lowest tokens?). LLMs need explicit guidance on tool selection criteria.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 53 | 2025-06-18+ | v2 |
No pagination or result limits documented in description. The tool accepts limit (1-25) but the description does not state the default (5) or explain why 25 is the cap. LLMs may not understand the constraint and could request more results than available.