Two minimal tools with bare-bones definitions. Input schemas lack property descriptions; 'text' and 'headers' parameters have no guidance on format, constraints, or examples. Output schemas are undocumented. No error handling guidance. Tool names are verb-based (parse, stringify) but generic; they don't convey domain context (e.g., 'parse_http_headers' would be clearer). No pagination, no composition hints, no recovery guidance.
Parse an HTTP header block into a map. Names are lowercased; repeated headers collect into arrays. set-cookie is always an array.
Serialize a header map back to `Name: value` lines, CRLF-separated.
Parameter descriptions missing entirely. 'text' and 'headers' parameters have no descriptions explaining format, constraints, or examples.
Output schemas undocumented. parse() returns a Headers object; stringify() returns a string. LLMs need to know what fields to expect in the response to plan downstream calls and extract data correctly.
No error handling guidance. Error responses are generic ('headers failed: <message>').
Tool names lack domain context. 'parse' and 'stringify' are generic; 'parse_http_headers' and 'stringify_http_headers' would be clearer and help LLMs disambiguate if similar tools exist.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 47 | 2026-07-28+ | v2 |
Input schema properties lack type constraints. 'headers' parameter in stringify is typed as 'object' with no additionalProperties, minProperties, or pattern constraints. LLMs may pass invalid structures.