An MCP server that checks the vibe of user input by eliciting emotional feedback and using LLM sampling to generate whimsical descriptions
Single tool 'vibe_check' has critical definition gaps. Input schema is empty object {} with no parameters documented. Description is whimsical but uninformative (23 chars, below 20-char threshold). No parameter descriptions, no output schema documentation, no error handling guidance. Tool relies on undocumented elicitation and sampling capabilities that are not exposed in the schema. This violates core patterns: tool-description, constrained-input, and response-shaper.
Herein lies the answer when the question is vibe.
Input schema is empty object {}, no parameters defined or documented. Tool accepts no declared inputs but internally requires elicitation and sampling capabilities.
Description is 23 characters ('Herein lies the answer when the question is vibe.'), vague, whimsical, and below the 20-char minimum threshold. Does not explain WHAT the tool does, WHEN to use it, or what it returns.
No output schema documented. LLM cannot predict what fields or structure the tool returns, preventing downstream tool chaining and forcing the LLM to parse unstructured responses.
Tool relies on elicitation and sampling capabilities (GetElicitationCapability, GetSamplingCapability) that are not declared in the tool schema or description. LLM has no way to know these are required or available.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 29 | <=2025-11-25 | v2 |
No error handling guidance. Tool returns generic errors ('elicitation capability not available', 'sampling capability not available') without recovery hints or actionable next steps for the LLM.