# Kling Motion Control > Transform static images into realistic 30s videos with Kling 2.6 Motion Control—precise motion transfer, 4K output, 24fps, advanced camera modes for pro video creation.[1][2][4][6] ## Overview - **Model ID**: `kling-motion-control` - **Category**: video - **Provider**: tencent - **Source Type**: Closed Source Model - **Status**: model_ready - **Screenshot**: `https://assets.modelslab.ai/generations/f8506650-29ee-4c93-92d6-f9ad0a023c06.webp` ## API Information This model can be used via our HTTP API. See the API documentation and usage examples below. ### Endpoint - **URL**: `https://modelslab.com/api/v7/video-fusion/motion-control` - **Method**: POST ### Parameters - **`prompt`** (required): Text prompt words, which can include positive and negative descriptions - Type: textarea - **`init_image`** (required): Reference Image. The characters, backgrounds, and other elements in the generated video are based on the reference image The video content must meet the following requirements: Keep the character’s proportions consistent between the image and the reference video. Avoid using a full-body reference video with a half-body image. Ensure the character’s entire body and head are clearly visible and not obstructed. Character Selection is supported for up to 1 character. For best results, choose characters with larger proportions in the frame. Supports uploading images of realistic/stylised characters (including humans, humanoid animals, certain pure animals, and characters with partial humanoid body proportions). - Type: file - **`init_video`** (required): The video content must meet the following requirements: Ensure the character’s entire body and head are clearly visible and not obstructed. Upload a single character motion reference. For motion reference with two or more characters, the motion of the character occupying the largest portion of the frame will be used for generation. Real human actions are recommended, while certain stylised humanoid or humanoid body proportions can be recognized. Avoid cuts and camera movements in the motion reference. Avoid overly fast motions; steady, moderate movements yield the best results. The video file supports. mp4/. mov, with a file size not exceeding 100MB, and only supports side lengths between 340px and 3850px. If the above verification fails, an error code and other information will be returned. The lower limit of video duration should not be less than 3 seconds, and the upper limit of duration is related to the character orientation reference (character_orientation): When the orientation of the character matches that of the character in the video, the video can last up to 30 seconds; When the orientation of the character is consistent with the character in the picture, the video duration can reach up to 10 seconds; - Type: file - **`character_orientation`** (required): Use "image" when the character in your reference image and reference video are facing/posing in the same direction. This keeps the character looking the same way as in your image. Use "video" when you want the character to follow the motion and direction shown in your reference video, even if it differs from the image orientation. This allows for longer videos (up to 30 seconds). - Type: select (options: image, video) - **`model_id`** (optional): - Type: text ## Usage Examples ### cURL ```bash curl --request POST \ --url https://modelslab.com/api/v7/video-fusion/motion-control \ --header "Content-Type: application/json" \ --data '{ "key": "YOUR_API_KEY", "model_id": "kling-motion-control", "prompt": "make this image accurately animate to the video", "init_image": "https://assets.modelslab.ai/generations/8d4def68-7edd-449c-b5ce-2ba4a5108f43.jpg", "init_video": "https://assets.modelslab.ai/generations/5c570825-d8dc-421c-876d-e0ce3ee6b7bc.mov", "character_orientation": "image" }' ``` ### Python ```python import requests response = requests.post( "https://modelslab.com/api/v7/video-fusion/motion-control", headers={ "Content-Type": "application/json" }, json={ "key": "YOUR_API_KEY", "model_id": "kling-motion-control", "prompt": "make this image accurately animate to the video", "init_image": "https://assets.modelslab.ai/generations/8d4def68-7edd-449c-b5ce-2ba4a5108f43.jpg", "init_video": "https://assets.modelslab.ai/generations/5c570825-d8dc-421c-876d-e0ce3ee6b7bc.mov", "character_orientation": "image" } ) print(response.json()) ``` ### JavaScript ```javascript fetch("https://modelslab.com/api/v7/video-fusion/motion-control", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ "key": "YOUR_API_KEY", "model_id": "kling-motion-control", "prompt": "make this image accurately animate to the video", "init_image": "https://assets.modelslab.ai/generations/8d4def68-7edd-449c-b5ce-2ba4a5108f43.jpg", "init_video": "https://assets.modelslab.ai/generations/5c570825-d8dc-421c-876d-e0ce3ee6b7bc.mov", "character_orientation": "image" }) }) .then(response => response.json()) .then(data => console.log(data)); ``` ## Integration Options ### CLI Install: `curl -fsSL https://modelslab.sh/install.sh | sh` or `brew install modelslab/tap/modelslab` ```bash modelslab auth login # Authenticate modelslab models search "kling-motion-control" # Find this model modelslab models detail --id kling-motion-control # Get model details modelslab generate image --prompt "..." --model kling-motion-control # Generate with model modelslab config set generation.default_model kling-motion-control # Set as default ``` - Website: https://modelslab.sh - GitHub: https://github.com/ModelsLab/modelslab-cli ### MCP Servers (Model Context Protocol) For Claude Code, Cursor, VS Code, Windsurf, and any MCP-compatible agent. - Generation: `https://modelslab.com/mcp/v7` (API key auth, 23 tools) - Agent Control Plane: `https://modelslab.com/mcp/agents` (Bearer token auth, 10 tools) Claude Code config (`~/.claude/settings.json`): ```json { "mcpServers": { "modelslab-v7": { "url": "https://modelslab.com/mcp/v7", "headers": { "Authorization": "Bearer YOUR_API_KEY" } } } } ``` - Documentation: https://docs.modelslab.com/mcp-web-api/overview ### Agent Skills Install skill files directly into AI coding agents: ```bash npx skills add modelslab/skills --all # All skills npx skills add modelslab/skills --skill image-generation # Specific skill npx skills add modelslab/skills --all -a claude-code -a cursor # Target agents ``` - GitHub: https://github.com/ModelsLab/skills - Documentation: https://docs.modelslab.com/agent-skills ### SDKs - Python: `pip install modelslab` - TypeScript: `npm install modelslab` - PHP: `composer require modelslab/modelslab` - Go: `go get github.com/modelslab/modelslab-go` - Dart: `dart pub add modelslab` ## Links - [Model Playground](https://modelslab.com/models/kling-motion-control/kling-motion-control) - [API Documentation](https://docs.modelslab.com) - [ModelsLab Platform](https://modelslab.com)