Search the documentation of supported libraries (langchain, langgraph, nextjs, tailwind, framer, mcp) using DuckDuckGo and fetch content from search results
Single tool with acceptable naming and description, but output schema is completely undocumented and error handling lacks actionable guidance. The tool name 'get_docs' follows verb_noun convention correctly. The description is detailed (194 chars) and explains the multi-step process, but the response type is a raw string with no structure, agents cannot parse or chain results. Error messages are present but generic ('❌ Library not supported', '❌ No results found') without recovery guidance. No input validation constraints (enums for library parameter, length/format for query). The tool operates in isolation with no composition patterns or downstream chaining support.
Search the documentation of a library. Supports langchain, langgraph, nextjs, tailwind, framer, mcp. This function performs the following steps: 1. Normalizes the library name to handle variations 2. Validates the library is supported 3. Performs a site-specific search 4. Fetches and returns the content from search results
Output schema completely undocumented. Tool returns a bare string with no structure (success text, error messages, or result metadata mixed together). LLMs cannot extract structured data or chain results to downstream tools.
Library parameter has no enum constraint. Accepts any string, inviting hallucinated values. Should declare valid options (langchain, langgraph, nextjs, tailwind, framer, mcp) as an enum so LLM picks valid options.
Error messages lack recovery guidance. 'No results found for {query}' gives agent no recourse. Should suggest: 'No results found. Try a simpler query (e.g. "authentication") or check library name with get_docs(query="help", library="langchain").'
Query parameter has no format/length constraints documented. Accepts any string with no guidance on minimal length, special characters, or search syntax. Should state: 'Search query (1-200 characters, can include spaces and operators like AND/OR).'
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 0 | 2026-07-28+ | v2 |
| 2026-03-09 | D | 50 | - | v1 |
Tool response is unstructured plain text. When search returns multiple results (MAX_SEARCH_RESULTS=2), they are concatenated without delimiters, making it impossible for the agent to know where one result ends and another begins.