Case study · Creative tooling
LiveTFS Creative Suite
One place to generate images, video, voice and music — saved to the cloud.
- Custom MCP server
- KIE.ai
- ElevenLabs
- Remotion
Producing media with AI usually means juggling a dozen separate tools — one for images, another for video, others for voice, music and captions — each with its own login and quirks, and files that quietly expire after a couple of weeks. This pulls all of it into one place: a single connector my AI assistant can reach for any kind of media, a permanent library so nothing is ever lost, and an automated editor that turns a raw clip into a finished, captioned Reel.

The problem
Running paid ad campaigns means producing a constant stream of media — hero images, b-roll, voiceovers, music beds, captioned video. Doing that across separate tools is slow; the cost of each generation is invisible until the bill arrives; and most providers' files expire, so last month's assets are gone the moment you want to reuse them.
I wanted one toolset any of my AI assistants could reach — in the chat and inside my video editor — that never loses an asset and won't quietly run up a big bill.
Under the hood
How it's actually built. The plain version is above — everything from here down is the technical detail.
Two connected systems
It's two pieces that work together. The Creative Suite is a custom MCP server — it exposes around 25 tools to my AI assistants (in the claude.ai chat and in Claude Code), each one wired to the best provider for the job. The automated editoris a Remotion pipeline that pulls from the Suite's library and assembles finished video. The MCP server is the probabilistic-meets-deterministic seam: the assistant decides what to make; code owns the calling, the cost guard, and the storage.
One connector, every model
Instead of a login per tool, there's one connector that reaches the right model for each job — and the assistant picks cheap models for drafts, premium for finals.
| Make | What's wired in |
|---|---|
| Images | 10 models — cheap drafts (z-image) → premium photoreal (nano-banana), text-in-image, and reference-based editing |
| Video | 17 models — Veo, Kling, Wan, Hailuo, Runway, Grok, Gemini Omni; talking-head avatars; text-to-video and image-to-video |
| Voice | ElevenLabs text-to-speech, plus my own cloned voice for content that sounds like me |
| Music | Suno (with persona + stem-separation) and ElevenLabs Music (commercially licensed for paid ads) |
| Dialogue & audio | multi-speaker spots, voice isolation (clean a noisy recording), transcription, and dubbing a voiceover into other languages |
| Utilities | background removal, video upscaling (Topaz), and a permanent asset library |
It never loses an asset
Most AI providers hand back a URL that expires in ~14 days. Here, every generation is automatically copied into permanent cloud storage (Vercel Blob) and returned as a URL that lives forever. The filename encodes the type, model and prompt, so the library is searchable without a separate database.
The payoff is cross-session memory: an image generated in one chat is still there next week — and reachable from a differenttool. That's exactly how the video editor reuses assets instead of paying to regenerate them.
It won't run up a surprise bill
AI video is expensive, and it's easy to fire off a $2 generation by accident. Every tool estimates its cost before calling, and anything at or above a $1 threshold is blocked until it's explicitly confirmed. The assistant announces the price, waits for a yes, and only then spends. Cost control is in the code, not left to good intentions.
Same face, same voice, every video
A campaign falls apart if the presenter looks slightly different in every clip. The Suite solves that two ways: a reusable visual character and voice (registered once via Gemini Omni, then reused across every generation), and my own cloned voice through ElevenLabs — so content can sound like me, not a stock narrator. One English voiceover can then be dubbed into other languages while keeping the same voice, for international ad versions.
From raw clip to finished Reel
The second half is an automated editor built on Remotion (video composed in code). Drop in a raw clip, give it one instruction, and it runs the whole pipeline:
| Stage | What happens |
|---|---|
| Transcribe | ElevenLabs Scribe → the words with word-level timings (for captions) |
| Polish | clean the source audio so the voice sits clearly over the mix |
| Analyse | a skill turns the transcript into a structured reel spec — chapters, stats, captions |
| Generate | pull a fresh music bed + documentary b-roll from the connector (or generate new) |
| Assemble | wire every asset into the spec and render with Remotion → a finished MP4 |
| Iterate | tweak one line in the spec (a stat, a chapter, a music swap) → re-render |
Every per-video choice lives in one editable spec file — move a chapter boundary, change a stat, swap the b-roll or the music, and re-render. It's the same content-layer discipline I use everywhere: a human-editable source the render is built from, so nothing is buried in the design. This is what produced the finished Reels for live Meta ad campaigns.
Honest status
The Suite is live and in daily useas the engine behind TFS ad content. It currently runs single-user (URL-obscured rather than full OAuth — the next hardening step), and the catalogue tracks the providers as they change: models get added, deprecated ones removed. It's built to be the one place creative gets made, not a finished product I sell — it's evidence of how I wire multiple AI services into one reliable system.
Want to see it run?
I'll walk you through the connector, the asset library, and a Reel built end to end — and how the same pattern would wire AI media into your own pipeline.

