Build a video thumbnail as a code-generated SVG instead of in a design app

Aleksandr Argunov had Claude Code make a 1920x1080 LinkedIn thumbnail by writing a Node script that renders an SVG, in six prompts and under four minutes, after the Affinity MCP route took seventeen.

Done withClaude Code· Oct 24, 2026

What they did

Argunov wanted to record a tutorial showing an agent making a polished LinkedIn video thumbnail through Affinity's new AI connector, hooked into Claude Code as an MCP server. One long prompt set the headline, subtitle, branding, a restyled cut-out photo of the author and a five minute limit. After several unsatisfying Affinity runs, the author gave Claude Code nearly the same prompt with no design app at all. Claude Code wrote a short Node script that lays out the whole thumbnail as a single SVG, with the background, text, favicon and the photo embedded as base64, and then calls rsvg-convert to turn it into a PNG. Extra image assets came from ChatGPT's image model.

How it went

By the author's notes, the Affinity MCP attempt needed twelve prompts and about seventeen minutes of active work. The script route took six prompts and three minutes fifty-four seconds, and gave a better result, including a new angle of the author's photo, though body proportions were still off. Sonnet 5.5 on high reasoning did better with Affinity than Opus 5.5 on its highest setting, which was so slow the author cancelled it. The author says these are session notes, not a benchmark: the copy changed between runs and more than one model was tried on the Affinity side.

Worth knowing

The point is that a script is plain text the agent can read, tweak one value in and re-run with an identical result each time, which a design file driven through MCP is not. You need an SVG renderer such as rsvg-convert installed. The author uses the same approach to build link preview images for every page at site build time.

Try it

With Claude Code· 9 parts to fill in

Make a [width x height] thumbnail for my [platform] video titled "[headline]" with the subtitle "[subtitle]" and my branding [logo file and site name]. Do not use a design app. Write a small [Node or Python] script that builds the whole image as one SVG, embedding [path to my cut-out photo] as base64, then render it to PNG with [rsvg-convert or another renderer]. Keep every position, colour and font as a named value at the top of the script so I can adjust it. Show me the PNG, fix only obvious problems like clipped text or overlaps, and stop after [number] revisions or when I approve it.

Square brackets are the parts to fill in. The prompt is ours; the story is theirs.

Where they said it

Related