MCP server for transferring motion from reference videos to character avatars using pose-guided temporal video motion transfer techniques
This MCP server is severely deficient across all definition quality dimensions. The single tool 'execute_skill_action' has a generic, uninformative description. No input schema is visible in the source code, only a mock server that prints JSON metadata without implementing actual MCP protocol semantics. The tool lacks parameter definitions, constraints, and output schema documentation. The implementation does not appear to handle tool invocation at all; it only prints a status message at startup. This is a stub/mock implementation, not a functional MCP server.
Execute the pose-guided temporal video motion transfer skill
No input schema defined or visible for execute_skill_action. The tool accepts parameters but they are not declared with types, descriptions, or constraints in the MCP protocol.
Tool description is too generic ('Execute the pose-guided temporal video motion transfer skill'). It does not explain WHAT the tool does in operational terms, WHEN to use it, what parameters it accepts, or what it returns. Under 50 chars of meaningful context.
No parameter descriptions visible. The example_usage.py shows calls with source_character_image_url and reference_motion_dance_video_url, but these parameters are not documented in the MCP server's tool definition. LLMs cannot infer parameter meaning from names alone.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 17 | 2026-07-28+ | v2 |
No output schema documented. The client.py example shows the tool returns a complex object with fields like motion_transfer_id, skeletal_joints_tracked, temporal_smoothness_score_pct, identity_texture_preservation_pct, output_fps, and rendered_video_stream_url. None of this structure is formally declared in the MCP protocol.
No error handling or recovery guidance. If motion transfer fails, the LLM receives no guidance on whether to retry, what went wrong, or how to proceed. No distinction between transient and permanent failures.
Tool name 'execute_skill_action' is overly generic and does not follow verb_noun convention clearly. It does not convey that this is a video motion transfer operation. A name like 'transfer_motion_to_character' or 'execute_motion_transfer' would be more specific.
The MCP server implementation (mcp_server.py) only prints a startup message and does not implement the actual MCP protocol for handling tool invocation requests, parameter validation, or response marshaling. This is a non-functional stub.