Skip to main content
Glama

Create carousel from video

create_carousel_from_video

Make a carousel from a video — a link (TikTok, Instagram Reels, YouTube Shorts, VK, RuTube…), the file as base64 (≤20 MB) or an upload_id (≤30 MB, see get_video_upload_url). Uniscript watches the video, gets the point and builds the carousel. Takes about 30–60 s. Uses 1 carousel.

Input Schema

NameRequiredDescriptionDefault
langNoForce slide language (en, ru, uk, es, fr, de, it, pt, pl, tr…). Default: detected from topic.
modeNovalue = useful content (default); promo = advertises a business (fill brand/about).
themeNoColor theme id (list_options). Default: uniscript.
imagesNoYour own photos to build the carousel from (https links or base64), like 'Your photos' in the app.
layoutNoeditorial = photo on top, text below; overlay = text over full photo; frame = framed photo.
slidesNoNumber of slides. Default: AI decides.
filenameNoWith video_base64: original file name, e.g. clip.mp4.
strategyNoCarousel structure id (list_options), e.g. listicle, howto, myths.
body_fontNoBody font name (list_options.fonts).
mix_stockNoWith images/photo_ids: also allow Uniscript stock photos (default: only yours).
photo_idsNoAlready uploaded photo_ids (upload_image) to build from.
upload_idNoA file uploaded via get_video_upload_url (up to 30 MB).
video_urlNoLink to the video: TikTok, Instagram Reels, YouTube Shorts, VK, RuTube…
hook_styleNoPremium cover background style id (list_options.hook_styles), like the 'Hook style' option in the app.
video_base64NoThe video file itself as base64 (up to 20 MB).
headline_fontNoHeadline font name (list_options.fonts).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the non-read-only, non-destructive, non-idempotent profile, so the bar is lower. The description adds two things annotations can't convey: latency ('about 30–60 s') and cost ('Uses 1 carousel'), plus hard size ceilings per input path — genuinely useful pre-call context. It stops short of saying whether a retry consumes another carousel credit, which is the natural follow-up question.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded: the resource and accepted inputs come first, then pacing and cost. Three sentences with no filler, though the middle line ('Uniscript watches the video, gets the point and builds the carousel') is brand-voice padding rather than operational information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 16 all-optional parameters and no output schema, the description should state the minimum viable call and what comes back (carousel id? URL?). It covers latency, cost and input sizes but leaves the agent guessing whether video_url alone suffices and what handle the call returns — a real gap for a zero-required-parameter tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already explains all 16 parameters, including the 20 MB / 30 MB limits and the list_options references. The description mostly restates the input-source trio and adds no new syntax, defaults, or interaction rules (e.g. whether images can be combined with video_base64), so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('Make a carousel from a video') and immediately enumerates the accepted video sources (link, base64, upload_id), which distinguishes it from build_carousel, create_carousel and video_to_idea. An agent can tell this is the video-input path without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It routes the agent usefully to get_video_upload_url for the upload_id path and to list_options for theme/strategy/fonts, so usage is implied for those sub-flows. But it never says when to pick this over the sibling build_carousel/create_carousel (e.g. 'use this when you have a video, use create_carousel when you have a topic'), so the core selection decision is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.