Tegas AI
Server Details
AI video production for marketing and social media: script, scenes, voice-over, subtitles, music.
- Status
- Healthy
- Uptime
- 100.0% over the last 24 hours
- OAuth
- Works in Glama
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- ITtegasai/tegas-mcp
- GitHub Stars
- 0
- Server Listing
- Tegas MCP Server
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 12 tools
Each tool maps to a distinct resource+action: write_scenario (planning), find_heroes vs draw_heroes (free brief vs paid render), upload_music vs upload_reference (distinct media), start_video vs edit_video (create vs mutate). The only mild overlap is video_status vs wait_video, but the descriptions explicitly differentiate (single poll vs poll-until-done). An agent can reliably pick the right tool.
All names share a clean 'tegas_' prefix and mostly follow verb_noun (start_video, edit_video, write_scenario, upload_music). A few deviate into noun-only or noun_noun forms (tegas_account, tegas_voices, tegas_video_status), which are minor inconsistencies but still readable and predictable.
12 tools sit comfortably in the well-scoped range, and each earns its place by covering a distinct step in the video pipeline (account, scenario, heroes, uploads, render, poll, edit). Nothing is redundant or padded.
The surface covers the full create-render-poll-edit-list lifecycle with rich edit operations (scenes, voice, subtitles, music, volumes, watermark). Minor gaps exist: no cancel-render, no delete-video, and no explicit get-single-video beyond status, but the core workflow is complete.
Publisher details
- Operator
- Tegas · Publisher source
- Operator website
- https://tegas.ai
- Vendor relationship
- First-party
- Documentation
- Unknown
- Trust center
- Not available
- Restrictions
- Paid Tegas plan required: video generation and hero sheets spend tokens from the account balance. Scenario writing, voices and account tools work without spending tokens.
Available Tools
12 toolstegas_accountAccount and pricesARead-onlyInspect
Free. Account overview: token balance, whether a plan is active, rate limits and the current price in tokens per second of video for each quality (480p/720p/1080p). Call this first to know the balance, and before starting a video to compute price = tokens_per_second[quality] * duration_sec. If plan.active is false, POST-type tools (scenario, heroes, video) will fail with no_active_plan: tell the user to activate a plan in the Tegas cabinet. If the balance is lower than a price, the start will fail with insufficient_tokens: tell the user to top up tokens in the cabinet.
Inputs: no named parameters. Returns: object
tegas_draw_heroesDraw hero sheetsAInspect
PAID. Draw hero sheets for the brief items chosen by index (from tegas_find_heroes, up to 3).
Cost = price_each_tokens x number of items; pass price_each_tokens from tegas_find_heroes to
avoid recomputing the brief. With confirm=false (default) nothing is drawn: the tool returns
needs_confirmation=true and the price - show it to the user and ask for consent. Only after an
explicit "yes" call again with confirm=true. Drawn sheets are attached to the scenario and used
automatically by tegas_start_video with the same scenario_id. The result carries idempotency_key:
if the call times out or fails with a network error, retry with the same idempotency_key - never
start twice without it. On insufficient_tokens ask the user to top up; on no_active_plan ask them
to activate a plan in the cabinet.
Inputs: items (required), scenario_id (required), confirm, idempotency_key, +1 more. Returns: object
tegas_edit_videoEdit a finished videoADestructiveInspect
Paid: each re-voiced scene costs tokens like a normal generation (about 10 T per scene voice-over); scene clip, subtitle, music and volume changes alone are not charged; a failed edit is refunded. Edit a finished video in place and rebuild it: this REPLACES the whole video end to end and typically takes a few minutes, the same as the original render - it is not a quick patch. Tell the user what you are about to change before calling this, then poll with tegas_wait_video (or tegas_video_status) after the call; do not call this again for the same video until the rebuild finishes.
Pass at least one of the groups below; omit a group entirely to leave it untouched:
- scenes: list of {"index": int, "voiceover_text"?: str, "subtitles_text"?: str, "video_url"?: str}
- one entry per scene to change, each needs at least one of the three fields.
- voice: {"id"?: str, "gender"?: "female"|"male", "language"?: "ru"|"en"|"es"|"fr"|"de"|"tr"} -
changing any of id/gender/language RE-VOICES EVERY SCENE that has voice-over text, not just
the ones listed in `scenes`.
- subtitles: {"enabled"?: bool, "style"?: "tiktok"|"phrases"|"contrast",
"appearance"?: {"alignment"?, "font_size"?, "font_family"?, "text_color"? (hex "#RRGGBB"),
"color_saturation"?}} - you cannot disable subtitles and set their style/appearance in the
same call, that fails with 422 validation_error; disable them in one call and restyle in a
later one.
- music: {"enabled"?: bool, "url"?: str} - url must come from tegas_upload_music (or another
public https URL).
- volumes: {"voice"?: int, "music"?: int, "master"?: int} - each 0..100.
- watermark: bool - the Tegas watermark on the finished video. Must be the ONLY change in the
call, not combined with scenes/voice/subtitles/music/volumes: the renderer rebuilds the
watermark through a separate step, so mixing it with other changes fails with 422
validation_error. Change the watermark in its own call.
Returns video_id, status "processing" and edits_accepted - the list of groups that were actually
applied (e.g. ["voice", "subtitles"], or ["watermark"] for a watermark-only edit). If the video is
still rendering or being rebuilt from a previous edit, this fails with 409 video_busy or edit_in_progress (the edit was NOT accepted) - wait for
status completed (tegas_wait_video) and try again, do not retry immediately in a loop.Inputs: video_id (required), music, voice, scenes, +3 more. Returns: object
tegas_find_heroesFind recurring heroesAInspect
Free (requires an active plan). Brief of recurring characters and the hero product of a
scenario: up to 3 items with index, kind (character/object), name and an image prompt,
plus price_each_tokens - the price of drawing one hero sheet. Hero sheets keep a character
consistent across all episodes of the video. style: photorealistic | 3d_cartoon | 2d_animation
| anime (omit to follow the scenario). Drawing is a separate paid step: tegas_draw_heroes.
Inputs: scenario_id (required), style. Returns: object
tegas_list_videosList recent videosARead-onlyInspect
Free. The user's most recent videos (newest first, limit 1..100) with status, file_url, price_tokens, quality and scenario_id.
Inputs: limit. Returns: object
tegas_start_videoStart a videoAInspect
PAID. Start rendering a video from a Tessa scenario (scenario_id) or your own scenario_text - exactly one of them. Cost = tokens_per_second[quality] x duration_sec (see tegas_account); pass duration_sec returned by tegas_write_scenario so the quote is exact. With confirm=false (default) nothing is started: the tool returns needs_confirmation=true with the price and the balance - show them to the user and ask for consent. Only after an explicit "yes" call again with confirm=true; it then starts the render and returns video_id with status queued plus the idempotency_key used. If the call times out or fails with a network error, retry with the same idempotency_key (it makes the retry free of double charge); never start twice without it. Then call tegas_wait_video. quality 480p | 720p | 1080p; voice - id from tegas_voices (omit for the default); music, subtitles (style tiktok | phrases | contrast); reference_urls - product/character images; watermark - the Tegas watermark on the finished video, omit to keep the account default. Errors: insufficient_tokens -> ask the user to top up in the cabinet; no_active_plan -> ask them to activate a plan; rate_limited with details.active -> wait for a running video to finish.
Inputs: music, voice, confirm, quality, +8 more. Returns: object
tegas_upload_musicUpload a music trackAInspect
Free (requires an active plan). Upload one music track and get a url to reuse in
tegas_edit_video's music.url. Give exactly one of audio_base64 or file_path.
audio_base64 - the audio bytes as base64 (a data:audio/mpeg;base64,... URL is also accepted);
this is the way for any remote agent, because the file never has to be public.
file_path - a path on the FILESYSTEM OF THE MCP SERVER, so it only works for local / self-hosted
runs where the server and the agent are on the same machine, and only when the server enables it
(otherwise the tool answers with code local_files_disabled - then send audio_base64 instead).
Formats mp3, wav, m4a, up to 25 MB.
Bad input comes back as validation_error with details.reason, before anything is uploaded:
one_source_required (gave both or neither), bad_base64, empty, not_audio, too_large; a file_path
that cannot be read is file_not_readable, and a server that forbids local files answers with code
local_files_disabled.
label - a short note (e.g. "background track"), optional, kept to the first 120 characters.
Returns music_id, the stored url, the label and expires_at. Pass the returned url in
music.url of tegas_edit_video (and set music.enabled to true if music was off).
Errors: no_active_plan -> ask the user to activate a plan in the cabinet.
Inputs: label, file_path, audio_base64. Returns: object
tegas_upload_referenceUpload a reference imageAInspect
Free (requires an active plan). Upload one reference image and get a reference_id to reuse:
a product photo, a character, a brand shot. Give exactly one of image_base64 or file_path.
image_base64 - the image bytes as base64 (a data:image/png;base64,... URL is also accepted);
this is the way for any remote agent, because the image never has to be public.
file_path - a path on the FILESYSTEM OF THE MCP SERVER, so it only works for local / self-hosted
runs where the server and the agent are on the same machine, and only when the server enables it
(otherwise the tool answers with code local_files_disabled - then send image_base64 instead).
Formats jpeg, png, webp, heic, up to 10 MB, shorter side at least 360 px, longer at most 4096 px.
Bad input comes back as validation_error with details.reason, before anything is uploaded:
one_source_required (gave both or neither), bad_base64, empty, not_image, too_small,
too_large_dimensions, too_large; a file_path that cannot be read is file_not_readable, and a
server that forbids local files answers with code local_files_disabled.
label - a short note (e.g. "hero", "product"), optional, kept to the first 120 characters.
Returns reference_id, the stored url, the label and a model-written description. The reference
expires together with scenarios (the server's scenario TTL, 7 days by default), so upload it
again for a later video. Pass the returned reference_id in reference_urls of
tegas_write_scenario or tegas_start_video - no public link needed.
Errors: no_active_plan -> ask the user to activate a plan in the cabinet.
Inputs: label, file_path, image_base64. Returns: object
tegas_video_statusCheck video statusARead-onlyInspect
Free. Status of one video: queued | processing | completed | failed, progress 0..100, file_url when completed, error when failed (tokens are refunded automatically on failure).
Inputs: video_id (required). Returns: object
tegas_voicesList voicesARead-onlyInspect
Free. List voice-over voices for a language (ru, en, es, fr, de). Each item has an id
that can be passed as voice to tegas_start_video; when voice is omitted the default
natural voice is used, so calling this is optional.
Inputs: language. Returns: object
tegas_wait_videoWait for a videoARead-onlyInspect
Free. Wait for a video: polls the status every 10 s until completed (returns file_url), failed (returns error; tokens are refunded) or timeout_sec elapses (returns the last status with timed_out=true - call again to keep waiting). A 20-30 s video usually takes a few minutes.
Inputs: video_id (required), timeout_sec. Returns: object
tegas_write_scenarioWrite a scenarioAInspect
Free (requires an active plan). Tessa writes a complete video scenario from an idea in one
call, without asking questions. duration_sec 5..60, aspect 9:16 | 16:9 | 1:1. reference_urls:
public image URLs of a product/character (or reference_id ref_...), optional.
Returns scenario_id (valid for a few days), the scenario text, episodes with per-episode
durations, warnings and the actual duration_sec (may differ from the requested one).
Typical flow: tegas_write_scenario -> (optional) tegas_find_heroes / tegas_draw_heroes ->
tegas_start_video with confirm=false to get the price -> user consent -> confirm=true ->
tegas_wait_video. Keep the returned duration_sec: pass it to tegas_start_video for the quote.
Show the scenario text to the user; call again with a refined idea if they want changes.
Inputs: idea (required), aspect, category, language, +2 more. Returns: object
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
Related MCP Connectors
Marketing videos for your business: 150+ searchable viral templates, scripts, AI characters.
AI video production, idea to final cut: generate, edit and assemble films, ads and social video.
AI video generator: make TikTok, Reels and Shorts videos with voiceover and captions, and post them.
Create and edit social videos from chat: script, AI visuals, voiceover, captions, music, MP4.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceTurns text scripts into complete videos with stock footage, AI narration, and subtitles via MCP tools for AI assistants.MIT
- AlicenseNot gradedqualityBmaintenanceCreate AI personas, generate short videos from a hook/body/CTA script and auto-publish them to YouTube, Instagram, LinkedIn, Threads and Bluesky.1Apache 2.0
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to generate narrated videos from topics or scripts, with stock footage, home videos, or local AI clips.2MIT
- AlicenseNot gradedqualityDmaintenanceGenerate AI UGC video ads from any product URL in 5 minutes. Realistic AI avatars, natural voiceover, proven ad templates. No actors, no editing, no experience required.75 npm1MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.