Encode text to base64 or decode base64 to text. Supports standard and URL-safe variants with metadata.
Single tool 'utility_encode_base64' has a well-structured description (280+ chars) with clear use cases and anti-patterns documented. Input schema is present with 'data' (required, string) and 'action' (optional, string) parameters. However, the 'action' parameter lacks an enum constraint, it accepts 'encode' or 'decode' but is defined as free-form string, inviting hallucinated values. Output schema is documented in the description (result, action, inputLength, outputLength, urlSafe) but not formally in JSON Schema. Parameter descriptions are minimal ('The data to encode or decode' is adequate but could specify encoding assumptions). No error handling guidance provided. Tool naming follows verb_noun pattern correctly.
Use this when you need to encode text to base64 or decode base64 back to plaintext. Returns the result string with encoding metadata. 1. result -- the encoded or decoded string 2. action -- whether encode or decode was performed 3. inputLength -- character count of the input 4. outputLength -- character count of the output 5. urlSafe -- boolean indicating if URL-safe variant was used Example output: {"result":"SGVsbG8gV29ybGQ=","action":"encode","inputLength":11,"outputLength":16,"urlSafe":false} Use this FOR embedding binary data in JSON, preparing email attachments (MIME), or decoding base64 tokens from APIs. Use this BEFORE sending data through channels that only support ASCII. Do NOT use for hashing -- use crypto_generate_hash instead. Do NOT use for JWT decoding -- use security_decode_jwt instead. Do NOT use for URL slug creation -- use text_generate_slug instead.
'action' parameter is free-form string but should be an enum ('encode'|'decode'). LLMs will hallucinate invalid values without constraint.
Output schema documented in description text only, not in formal JSON Schema. LLMs cannot parse unstructured docstrings reliably.
No error handling guidance. Tool description lacks recovery hints (e.g., 'Invalid action: must be encode or decode').
'action' parameter description is minimal. Should specify default behavior, valid values, and when each is appropriate.
Inferred effective spec: 2025-06-18+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 61 | 2025-06-18+ | v2 |