An MCP server that provides AI-powered video animation capabilities using motion brush techniques for generating video content from static images with camera motion effects
This server has a single tool with a minimal definition that lacks critical patterns and documentation. The tool name 'animate_motion_brush' uses a valid verb+noun pattern but is somewhat awkward ('animate_motion_brush' → 'animate_with_motion_brush' would be clearer). Description exists but is generic and fails to explain prerequisites, expected return format clarity, or when to use this vs alternatives. Input schema is visible with three parameters, but lacks crucial details: no enum constraints on camera_motion (free-form string invites hallucination), minimal parameter descriptions, no output schema documented, no error handling guidance, no security considerations for file paths. The code shown is a stub implementation returning mock data, not a real MCP server, there's no MCP protocol scaffolding visible (no tool registration, no async handlers, no transport layer). Without seeing actual MCP transport, tool registration, and proper schema metadata, this cannot be scored as a working MCP server.
Animates a static image using motion brush techniques with specified camera motion effects
No visible MCP server implementation. Code shows a Python class with mock methods, not a registered MCP tool with proper schema and protocol transport.
camera_motion parameter is free-form string without enum constraint. 'ZOOM_IN_PAN_RIGHT' is shown as default but valid values are not enumerated. LLMs will hallucinate invalid motion types.
Output schema is not documented. Return type is inferred as dict with 'rendered_video_url', 'frame_rate', 'motion_score' but no formal schema is provided. LLMs cannot plan downstream steps without knowing the structure.
Parameter descriptions are minimal (under 20 chars for motion_brush_mask). 'Optional path or URL to a motion brush mask for selective animation' is present but lacks format guidance, constraints, or when-to-use context.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 32 | 2026-07-28+ | v2 |
No error handling or recovery guidance. Tool accepts file paths/URLs but provides no validation, no guidance on invalid inputs, no explanation of what happens if input_image_path is unreachable.
File path/URL parameters are not sanitized or validated. Tool accepts 'input_image_path' as string, no path traversal checks visible, no URL validation, no security consideration for untrusted input.
Tool description is generic and does not answer key questions: What are valid camera_motion values? What output format is returned? When should this be called vs alternative animation tools? What are prerequisites (image size, format)? What is the motion_score range/meaning?
No tool composition hints. If animated video URL is returned, downstream tools might need to download, process, or store it, but no guidance on related operations or field chaining is provided.