Turn a source image into a complete Windows application branding asset set — agent-agnostic, usable by any AI agent or as a standalone CLI.
Three tools with clear naming and reasonable descriptions, but significant gaps in schema completeness and parameter documentation. list_branding_targets has no input schema (empty object). build_branding_prompt has a well-structured schema with enums and defaults, but several parameters lack detailed format guidance. generate_windows_branding has comprehensive schema coverage but parameter descriptions are sparse on constraints (e.g., padding range 0-0.4 is mentioned but not in description text). Output schemas are not documented. Error handling returns structured dicts but lacks recovery guidance. No tool annotations (readOnlyHint/destructiveHint) despite clear risk profiles.
Compose an English image-generation prompt from a structured brand brief. Use this when the user has no source image yet and wants one generated. This tool does NOT call any image-generation API itself — it only returns a prompt string.
Generate Windows/macOS/web branding assets from a source image.
List available branding targets and what each one produces.
list_branding_targets has no input schema (empty object {}). Tool is discoverable but LLMs cannot validate inputs.
Output schemas not documented for any tool. LLMs cannot plan downstream calls or extract required fields (e.g., what fields does generate_windows_branding return?). Violates pattern:tool requirement.
Parameter descriptions lack format constraints. 'padding' accepts 0-0.4 but description does not state this range. 'targets' array accepts specific enum values but description is vague ('One or more of...'). LLMs cannot validate without explicit constraints in text.
No tool annotations (readOnlyHint/destructiveHint/idempotentHint). generate_windows_branding is clearly destructive (WRITE risk, creates files), but LLMs have no machine-readable signal. Missing current spec pattern.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 63 | 2026-07-28+ | v2 |
Error handling returns structured dicts but lacks recovery guidance. E.g., 'Invalid input' error does not suggest next steps (search_users, validate format, etc.). Violates pattern:recovery-guide.