# Tolstoy Studio

> Create marketing videos and images for ecommerce products with Tolstoy Studio. Use when the user wants to make a product video (PDP, TikTok/Reels, ad), a product or lifestyle image, or animate a product photo into a clip. Calls the Tolstoy Studio MCP, which runs Tolstoy's creative-director agent server-side.

- Skill: `gotolstoy/tolstoy-studio` (Agent Skill)
- Install (CLI): `npx skillmds@latest add gotolstoy/tolstoy-studio`
- Raw SKILL.md: https://api.skillmd.com/api/skills/gotolstoy/tolstoy-studio/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Marketing & Growth
- Author: GoTolstoy (https://skillmd.com/u/gotolstoy)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/gotolstoy/tolstoy-studio

---


# Tolstoy Studio — create product content

Tolstoy Studio turns a plain-language brief into brand-ready marketing media. The `generate_studio_content` tool hands the brief to Tolstoy's **Studio Agent**, which already owns scriptwriting, model casting, scene direction, pacing, and brand-safety. **Your job is to convey the user's intent and pick the output format — not to engineer the creative.**

## What you can make
- **PDP product video** — short, product-forward video for a product detail page.
- **Social / UGC video** — TikTok / Reels / Shorts style, hook-first.
- **Ad creative** — video or image sized for paid placements.
- **Product / lifestyle image** — on-model or in-scene stills.
- **Animate a product photo** — turn a static product image into a short motion clip.

## How to drive it well

1. **Pass the brief verbatim.** Relay the user's product/brand intent as written. Do NOT rewrite named brands/products into generic descriptions, and do NOT append lighting/camera/scene boilerplate — the Studio Agent adds all that. A tight, honest brief beats a long engineered prompt.

2. **Choose `assetType`:** `"video"` for clips, `"image"` for stills.

3. **Choose `aspectRatio` by destination:**
   | Destination | aspectRatio |
   |---|---|
   | TikTok / Reels / Shorts / mobile PDP | `9:16` (video default) |
   | Instagram / Facebook feed | `4:5` or `1:1` |
   | YouTube / desktop / on-site widget | `16:9` |
   | Square / generic | `1:1` (image default) |
   If the user didn't say where it's going, use the default, mention it, and ask only if genuinely ambiguous.

4. **Reference images = public URL only.** If the user gives a public HTTPS image URL of the product, pass it in `referenceImageUrls` (up to 4) so the output features the real product. To **animate** a photo: `assetType: "video"` + the photo URL in `referenceImageUrls` + a brief like "subtle motion, keep the product centered." If they paste/attach an image with no URL, describe what you see in the prompt instead — the tool does not accept uploads.

5. **Refine with `iterate_studio_content`, don't regenerate.** For "punchier hook", "make a 16:9 too", "warmer tone", call `iterate_studio_content` with the `chatId` from the prior result. It keeps the full creative context; a fresh generate loses it.

6. **Report back.** Generation is asynchronous — share the returned `chatId` and tell the user it's rendering in the Tolstoy canvas.

## Examples

> "Make a TikTok for my matcha whisk — photo: https://cdn.example/whisk.jpg"
> → `generate_studio_content` `{ assetType: "video", aspectRatio: "9:16", prompt: "TikTok-style video for my matcha whisk", referenceImageUrls: ["https://cdn.example/whisk.jpg"] }`

> "Animate this product shot: https://cdn.example/serum.jpg"
> → `generate_studio_content` `{ assetType: "video", aspectRatio: "9:16", prompt: "Animate this product with subtle motion, product stays centered", referenceImageUrls: ["https://cdn.example/serum.jpg"] }`

> "Make it 16:9 with a stronger hook"
> → `iterate_studio_content` `{ chatId, message: "16:9 version with a stronger opening hook" }`

## Notes
- Insufficient-credits error → tell the user to add credits in Tolstoy billing.
- This skill **creates** content; it does not publish to a store or ad platform.

