WIA Motion: product video campaigns
by wiamotion.ai · remote · no sign-in to list tools · v1.0.0 · published by ai.wiamotion
Create product video campaigns from 1-4 product photos and track them. Requires an API key.
3 tools: 2 change things and 1 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things2Claude Code: ask: see these tools
- Only reads1Claude Code: allow: see these tools
1 check matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http wiamotion https://mcp.wiamotion.ai/mcp --header 'Authorization: <your-authorization>'Findings
Matches of fixed checks, with the text they matched.
- Infocreate_campaign
The description is 2,123 characters long, over the 2,000 this check looks for.
What this check looks forMatched text
description ends: "...text/bgm are ignored for creator. Returns a job_id — poll it with check_campaign."
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
3 tools
Changes things 2Claude Code: ask
check_campaignCheck status/progress/artifacts of a wiamotion campaign job by job_id (from create_campaign).No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Check status/progress/artifacts of a wiamotion campaign job by job_id (from create_campaign).
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
create_campaignCreate a wiamotion product video campaign from 1-4 product photos.1 finding
Why it is in this group
- The name "create_campaign" says "create": a word for a change.
- The input takes a statement or command to run (input.script), which can change anything it can reach.
Findings
- Info
The description is 2,123 characters long, over the 2,000 this check looks for.
What this check looks forMatched text
description ends: "...text/bgm are ignored for creator. Returns a job_id — poll it with check_campaign."
Description, as the server wrote it Create a wiamotion product video campaign from 1-4 product photos. Produces finished 1080x1920 video(s) + thumbnail(s) + multi-language metadata (never a raw/unfinished clip) and deducts credits from the caller's account. Package tiers: "trial" (1 video, watermarked, 25cr, 3-language metadata), "starter" (1 video, 50cr, 254-language metadata), "launch" (3 videos — hook/how-to/brand mood — 254-language metadata, 125cr), "story" (everything in launch plus one 60-90s cinematic brand short on a premium engine, 400cr). DIRECT YOUR OWN CINEMATOGRAPHY: write distinct scene prompts (English, one short cinematic camera direction each) — this is what makes the result good, the server will not invent creative direction for you. Videos are subtitle-free by default (globally reusable); on-screen text (hook_text / endcard_text) is OPT-IN — omit both unless you specifically want burned-in copy for one language. For "starter"/"trial" use scenes[] (2-4 scenes, one video). For "launch"/"story" use hook_scenes[]/howto_scenes[]/brand_scenes[] (2-4 scenes each, one set per video role) — omit any of these to fall back to a generic template for that video. For "story" additionally use story_scenes[] (8-12 scenes) for the brand short — think in classic beats: hook, development, climax, resolution into the endcard. The server always appends a standard anti-distortion guard to every scene prompt server-side (keeps the product/printed text exactly as in the reference photo, no warping) — do not add your own "no distortion" wording, just describe the shot. Prefer image_urls over images_base64 when the photos are already hosted somewhere — base64 request bodies are capped at 8MB total (~1MB/photo) and get rejected past that. "creator" (200 credits, 2026-09-25) = a realistic on-screen presenter holds the product and speaks YOUR script with lip-sync (~12s, up to 15s): pass persona (who appears), setting (where), language, script (what they say — hook first, then proof), optional gender (voice) and direction (gestures/beats). scenes/hook_text/bgm are ignored for creator. Returns a job_id — poll it with check_campaign.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: true
Only reads 1Claude Code: allow
list_packagesList wiamotion campaign packages — credit cost, video count/duration, resolution.No findings
Why it is in this group
- The name "list_packages" says "list": a word for reading.
Description, as the server wrote it List wiamotion campaign packages — credit cost, video count/duration, resolution. Call before create_campaign to pick a package.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.0.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http wiamotion https://mcp.wiamotion.ai/mcp --header 'Authorization: <your-authorization>'Run in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__wiamotion__list_packages"
],
"ask": [
"mcp__wiamotion__create_campaign",
"mcp__wiamotion__check_campaign"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as wiamotion. Review it before you use it.