An MCP server designed to help prevent LLM agents from hallucinating by providing grounding tools and prompts. Provides reality-check tools to verify facts, read project files, and perform strategic planning.
The server defines 4 tools with mixed quality. All tools have descriptions and input schemas visible in source code (src/types/tool-types.ts and src/server.ts). However, naming is problematic: 'kill_trip' and 'sober_thinking' are thematic but opaque, they don't follow verb_noun patterns and their actual function is obscured by drug-related metaphors. 'brave_search' follows better naming but 'strategic_plan' is vague. Parameter descriptions exist but are minimal (averaging 40-60 chars vs. baseline 72). Output schemas are partially documented in TypeScript types but not all are clearly visible in the JSON schema definitions. Error handling is basic, tools return isError flags but lack recovery guidance. No tool annotations (readOnlyHint, idempotentHint) are present despite all being read-only operations. The server is functional but falls short of production-grade clarity for LLM tool selection.
Search the web using Brave Search API. Use this tool to find current information, verify facts, or research topics. Provide a search query and optionally specify how many results you want (1-10, default 5).
Performs documentation search using SerpAPI. Use this tool when the user is upset or says you are wrong or mistaken or says phrases like "stop!" or "quit tripping!" or "quit hallucinating", "check the docs", or asks to verify information against official sources. Also use this tool if the user seems upset or is questioning what the agent is doing.
Reads .env, README.md, and CHANGELOG files to get grounded information about the project. Use this tool to ensure that the agent is not hallucinating or making up information or making incorrect assumptions. Use this tool when the user says phrases like "sober up!", "get back to reality", "check the facts", or asks for current project status. Also use this tool if the user seems upset or is questioning what the agent is doing.
Generate comprehensive strategic plans using PlanExe MCP Server. Use for business planning, project roadmaps, workflow optimization, or any complex multi-step planning task.
Tool names 'kill_trip' and 'sober_thinking' use thematic metaphors instead of clear action verbs. LLMs cannot infer function from names alone. Should be 'search_docs' and 'get_project_info' or similar.
Parameter descriptions are brief (20-60 chars) vs. baseline 72 chars. E.g., 'sober_thinking' has no parameter description at all (empty required array). 'strategic_plan' prompt description lacks format/length guidance ('10-5000' chars mentioned in tool description, not param description).
No output schemas explicitly registered in tool definitions. File src/types/tool-types.ts defines TypeScript types (KillTripResultSchema, BraveSearchResultSchema) but these are not visible in the MCP tool registration. agents cannot infer response structure.
Inferred effective spec: 2025-06-18+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 51 | 2025-06-18+ | v2 |
| 2026-03-09 | D | 51 | - | v1 |
No tool annotations (readOnlyHint, idempotentHint, destructiveHint) despite all 4 tools being read-only operations. This metadata helps LLMs understand retry safety and idempotency guarantees.
Error handling returns generic isError flags with text content but no recovery guidance. E.g., 'Tool not found' tells agent nothing about next steps. Should include: 'Tool not found. Available tools: [list]. Try a different tool name.'
kill_trip and sober_thinking appear in different source files (src/server-old.ts and test-tools.js). Unclear which is authoritative. 'server-old.ts' suggests deprecated code path, evidence of incomplete refactoring.