MCP server for Ainimate app - provides tools for animation project management, scene creation, element manipulation, and animation sequencing
ainimate-mcp has basic tool definitions with schemas present, but suffers from inconsistent naming conventions, minimal descriptions, and missing parameter documentation. Tool names mix kebab-case (get-current-scene) and snake_case (get_current_project), violating naming consistency. Descriptions are generic and under 50 chars for most tools, providing insufficient context for LLM selection. Parameter descriptions exist but are sparse (e.g., 'Scene ID' vs actionable guidance). No output schemas documented. Error handling and recovery guidance absent. The create-animation tool has a complex nested schema but lacks clarity on frame interpolation behavior.
Creates an animation sequence with interpolated frames
Creates a new layer in a scene
Creates a shape element in a scene layer
Creates a text element in a scene layer
Retrieves the currently active layer
Retrieves the currently active scene
Retrieves the current project state
Inconsistent tool naming: mix of snake_case (get_current_project) and kebab-case (get-current-scene, create-layer). LLMs require consistent naming conventions to reliably invoke tools.
Minimal tool descriptions (10-35 chars). Descriptions like 'Retrieves the current project state' and 'Creates a new layer in a scene' lack context for when/why to use each tool vs alternatives. Baseline: 194 chars average for A+ tools.
No output schemas documented. LLMs cannot plan downstream calls or extract required fields (e.g., does get_current_project return project_id, name, layers array?). Baseline: 100% of A+ tools document return types.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 54 | 2026-07-28+ | v2 |
create-animation has complex nested schema (elements array with startPosition/endPosition objects) but lacks description of interpolation behavior, frame timing, or easing functions. Parameter relationships undocumented.
No error handling or recovery guidance. Tools lack descriptions of failure modes, retryability, or next steps if a call fails (e.g., 'If layer not found, call get-current-scene first').