comfyui-magic-hour
MagicHourAI Custom ComfyUI Node
Nodes (4)
ComfyUI × Magic Hour
Run frontier video models — Sora 2, Veo 3.1, Kling 3.0, Seedance, MiniMax H3 — inside your ComfyUI workflow, plus face swap and hosted image generation. No GPU needed; everything renders on Magic Hour's infrastructure.
These models can't run locally. This node puts them in your graph next to everything that can.
Nodes
| Node | In | Out | |---|---|---| | Magic Hour · Text to Video | prompt | video path | | Magic Hour · Image to Video | IMAGE + prompt | video path | | Magic Hour · Image Generator | prompt | IMAGE | | Magic Hour · Face Swap (Photo) | 2× IMAGE | IMAGE |
Video nodes write an .mp4 into your ComfyUI output folder and return its path.
Install
ComfyUI Manager: search "Magic Hour" → install.
Manually:
cd ComfyUI/custom_nodes
git clone https://github.com/YOUR_GITHUB/comfyui-magic-hour
Restart ComfyUI.
API key
Free at magichour.ai/developer — no credit card, 400 credits on signup plus 100/day.
Paste it into the node, or better, set it once so you don't leak it when sharing workflows:
export MAGIC_HOUR_API_KEY="your_key_here"
Models
Labels in the dropdown tell you the plan you need and what each model is for.
Free plan
| Model | Credits/sec | Durations | Notes |
|---|---|---|---|
| wan-2.2 | 24 | 3–15s | physics & camera motion |
| ltx-2.3 | 24 | 1–30s | fastest, good for iterating |
| minimax-h3 | 24 | 1–30s | native audio, max 1080p |
Paid plans
| Model | Credits/sec | Durations | Notes |
|---|---|---|---|
| seedance-1.5 | 30 | 4–12s | smooth, precise motion |
| kling-2.6 | 36 | 5 or 10s | action & motion blur |
| kling-3.0 | 48 | 3–15s | best cinematic, up to 4k |
| veo3.1-lite | 48 | 4–56s | Veo quality, cheaper |
| seedance-2.0-mini | 96 | 4–15s | max 720p |
| veo3.1 | 96 | 4–56s | highest realism |
| veo3.1-audio | 96 | 4–56s | Veo + native audio |
| sora-2 | 120 | 4/8/12/24/36/48/60s | max 720p |
| seedance-2.0 | 144 | 4–15s | reference-to-video, max 720p |
| seedance-2.5 | 288 | 4–30s | best quality, max 720p |
Resolution
Gated by plan, not by model:
| Resolution | Plan | |---|---| | 480p | Free | | 720p | Creator+ | | 1080p | Pro+ | | 4k | Business |
If you pick something above your plan, the node steps down and retries rather than failing — you get a video and a note in the console.
Behaviour worth knowing
- Invalid durations are corrected, not rejected. Every model accepts a different set of clip lengths; ask Sora for 10 seconds and you get 8, with a console note.
- Cost is printed before each run, e.g.
wan-2.2 · 5s · 480p = ~120 credits. - Failed jobs are auto-refunded by Magic Hour — an error costs you nothing.
- Nodes block while polling. A 5s clip usually lands in about a minute; longer or higher-res takes more.
- Model list changes often. If something new appears in the web app, add it to
VIDEO_MODELSandMODEL_CONSTRAINTSinnodes.py.
Links
Docs · API reference · OpenAPI spec · Pricing
License
MIT