Local-first MCP image generation server with multi-model support and embedded studio UI
Strong schema definitions with proper JSON Schema types, enums, and constraints across all 8 tools. Tool names follow verb_noun convention (generate, edit, list, read, create, append, finalize). Descriptions are present and actionable (avg ~80 chars). All parameters have type definitions and descriptions. Key gaps: descriptions could be more LLM-optimized (some lack 'when to use' context); error handling guidance is minimal; no confirmation pattern for destructive operations (generate/edit/create_upload); output schemas documented in contracts but not visible in server.ts registration.
Append Upload Chunk
Create Upload
Edit Image
Finalize Upload
Generate Image
List Assets
List Image Models
Destructive operations (imagegen_generate, imagegen_edit, imagegen_create_upload) lack confirmation/dry-run pattern. Agents can trigger expensive image generation without verification.
Tool descriptions lack 'when to use' context and recovery guidance. E.g., imagegen_generate says 'Generate Image' but doesn't explain when to call it vs imagegen_edit, or what to do if generation fails.
Error handling responses not visible in source. No evidence of actionable error messages (e.g., 'Invalid model: got X, must be one of Y'). toolErrorResponse() function called but implementation not shown.
Inferred effective spec: 2025-06-18+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 61 | 2025-06-18+ | v2 |
Read Asset Bytes
Output schema (toolResultSchema) referenced but not visible in server.ts. Cannot verify that responses include all IDs needed for chaining (e.g., asset_id for downstream read_asset_bytes calls).
imagegen_read_asset_bytes uses 'asset_id' parameter but no validation shown. If asset_id is invalid, error guidance should suggest calling imagegen_list_assets first.