MCP server for Leonardo AI API - Free daily credits for AI image generation
Three tools with complete schemas and basic descriptions, but significant gaps in parameter documentation and error guidance. generate_image has a comprehensive schema with 8 parameters, all with types and descriptions, but lacks output schema documentation. check_credits and list_models have empty input schemas (no parameters), which is correct but minimal. Descriptions are present but brief (10-50 chars), below the 50-200 char baseline for LLM-optimized docs. No error handling guidance, no recovery paths, and no tool annotations. Parameter constraints exist (enums, min/max) but descriptions lack actionable format guidance. Output structures are inferred from handler code but not formally documented.
Check your Leonardo AI account and remaining credits
Generate an image using Leonardo AI
List available Leonardo AI models
Output schemas not documented. Handlers return unstructured objects (e.g., {success, generation_id, images, credits_used}) but LLMs cannot plan downstream calls without knowing response structure.
Descriptions too brief (10-50 chars vs. 50-200 baseline). 'Check your Leonardo AI account and remaining credits' lacks WHEN to use, WHAT it returns, and prerequisites (API key required).
No error recovery guidance. Handlers return {success: false, error: message} but do not tell LLM what to do next (retry? ask user? check API key?). Missing error classification.
generate_image accepts save_path parameter but no validation or error handling for invalid paths, permission errors, or disk full. LLM cannot distinguish recoverable from fatal failures.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 43 | 2026-07-28+ | v2 |
No pagination or result limits documented. generate_image returns up to 4 images; check_credits returns single user record. If API changes to return 100+ items, context window risk is unmitigated.