This server has minimal tool definitions with critical gaps. Both tools have NO input parameters documented and lack meaningful descriptions that guide LLM selection. The 'greet' tool has no description at all (violates pattern:tool-description). The 'safe_header_info' tool has a brief description but it does not explain WHEN to use it or what the output structure is. Neither tool documents its return schema. Input schemas are empty objects with no validation. No parameter descriptions exist. The server demonstrates no error handling guidance, no output shaping, and no consideration for LLM-optimized composition. This is below the median for community MCP servers.
Safely get header information without raising errors.
Tool 'greet' has no description whatsoever. LLMs cannot determine when to invoke this tool or why it exists relative to other tools.
Both tools declare empty input schemas (Input: {}). No parameter validation, no typing, no LLM guidance on valid inputs. Violates baseline that 100% of A+ tools have documented parameter types.
No output schemas documented for either tool. 'greet' returns a string, 'safe_header_info' returns a dict, but LLMs have no structured specification of the response format. Violates baseline that 100% of A+ tools document return types.
Tool naming lacks action verbs. 'greet' is a generic action without clear domain context. 'safe_header_info' is a descriptor (safe_...) rather than a verb-noun pattern like 'get_header_info' or 'retrieve_request_headers'. Baseline shows 90% of A+ tools start with action verbs (get, list, create, search, update).
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 30 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 27 | - | v1 |
Description for 'safe_header_info' is vague (28 chars). It does not explain WHAT the tool returns (field names, structure), WHEN to use it instead of alternatives, or any prerequisites. Baseline for A+ tools is 50 - 200 chars with clear intent guidance.
No error handling or recovery guidance. If a tool fails or returns unexpected data, the LLM has no guidance on what to do next (retry, ask user, call alternative tool). Violates pattern:recovery-guide.
Tools expose request headers directly without sanitization. This may leak sensitive authentication headers or internal metadata into LLM context. No evidence of filtering or security boundary. Violates pattern:secret-injection.