- Brand
- Viewmax
- Category
- AI
- Primary Subcategory
- AI Video Generation
Integration details
Description
Everygen helps creators generate and edit social-ready videos, images, voiceovers, scripts, ads, and captions directly from ChatGPT. Users can create standalone media or combine scripts, narration, generated scenes, and captions into finished short-form videos.
- Integration type
- Plugin
- Verification status
- Not applicable
- Platform
- ChatGPT
- Primary Subcategory
- AI Video Generation
- Secondary Subcategories
- None listed
- Brand
- Viewmax
- Access
- Account required
- First tracked
- 2026-08-22
- Tool count
- 54
- Geography
- US
The Primary Subcategory used for this profile’s headline score.
Other Subcategories where the Integration is listed.
ChatGPT Plugin discovery is coming soon
ChatGPT can surface a Plugin when it matches a user's request.Your Plugin Discovery Score measures how often yours appears.
No spam. Unsubscribe any time.
What discovery looks like

Get alerts for Everygen
Get updates when Everygen’s Discoverability Score or category rank changes.
Competing in ChatGPT AI Video Generation
View Category54 tools agents can invoke
Add a product to the user's saved products by URL (scrapes product info) or manually. Called by the ad builder widget.
add_ad_product
Add auto-generated captions/subtitles to a video. Transcribes the audio with Whisper, overlays styled captions using a preset, and exports a new captioned video via Remotion Lambda. Call this DIRECTLY — no picker — whenever the user's message already tells you the look and/or placement: map their words to the closest preset (each preset's look is described on the preset parameter) and put a named placement on position ('at the bottom' → bottom). Open select_caption_style first only when the user wants to browse styles or gave no hint of a look; open place_captions only when they want to drag the exact placement themselves. IMPORTANT: If the user has not provided a video yet, you MUST call upload_media_widget FIRST and say 'Upload your video here.' Do NOT list platforms, do NOT explain options, do NOT mention 'direct video URL'. Just open the upload widget. Returns the final captioned video URL in the media result card.
add_captions
Analyze a YouTube channel's top-performing Shorts to learn their writing style. Returns a style profile (stylePrompt) that can be passed to generate_script to produce scripts matching that channel's tone, pacing, and structure. Costs 1 credit (first time) or 5 credits (subsequent).
analyze_channel_style
Analyze a video directly from the user's link (YouTube, Instagram, TikTok, X/Twitter, Facebook, Facebook Ad Library). Public YouTube links are analyzed directly; completed results include sourceUrl, not a reusable video file. For requests to analyze or recreate a linked video, call this FIRST with the supplied URL; do not require an upload or browser playback. Returns immediately with a jobId. Poll get_video_analysis_status every 5-10 seconds until generations[0].status is completed or failed. Pending is normal: continue polling, and do not request an upload or claim analysis failed while pending. If the job fails, report the returned error accurately; an upload is a fallback, not a prerequisite for social links. When complete, returns: visualMedium, visualStyle, aspectRatio, recommendedModel, recommendedOrientation, recreationMethod (story_video | ugc_ad | cinematic_broll | mixed), recreationGuide (step-by-step workflow to follow), and for story videos: storyFormat, storyIdea, narrationTranscript, dominantCameraStyle. Also returns a scene-by-scene breakdown with per-scene visualMedium, visualStyle, dense visual descriptions, audio/dialogue, camera motion, transitions, and self-contained generationPrompts (use these ONLY when recreationMethod is NOT story_video). Credits scale with the full clip length (a short clip is 2 credits; longer videos cost more). Supports videos up to 8 hours — analyze the whole video, not a short prefix of it. Recreation confirmation: after analysis, show the exact proposed spoken dialogue/narration in scene order, separately from visual directions (or explicitly state there is no speech). For a faithful recreation, preserve the source wording by default; for an adaptation, label the rewritten lines. Flag uncertain transcript words instead of inventing them. Summarize the planned visuals, avatar/voice, total duration, and any changes from the source, including omissions or a shorter sample. Ask the user to approve this concrete script and scope, then STOP and WAIT before generating images, voiceovers, audio, or video. A request to recreate, an avatar/voice selection, or cost approval alone is not script approval. Never silently replace the dialogue or reduce a full recreation to a test clip. Reuse explicit approval of the displayed script and scope; ask again only if either changes. Analysis-only requests need no generation approval.
analyze_video
The primary way to browse and search the user's generated images and videos. Filter by type and status (completed / failed / in_progress), search prompts by keyword, sort newest/oldest, and page through the full generation history with nextCursor. Returns an interactive gallery. Use this to find past generations, recover lost generation ids, or show the user their library. To load the next page, call again with the same filters plus cursor set to the previous response's nextCursor.
browse_library
Cancel a queued Everygen video generation that hasn't started yet. Refunds the credits if it was charged. Only works while the generation is still waiting in the queue.
cancel_generation
Convert speech in an audio file to a selected Everygen voice. Pass a voiceId from list_voices. For local files, first upload audio with prepare_generation_input_upload using kind referenceAudio.
change_voice
Story workflow gate (Phase P): verifies every generation prompt is within the 2500-character hard limit (2300 target) BEFORE calling generate_image / generate_video — over-limit prompts are rejected with an error. Pass all master prompts at once. Free and instant.
check_prompt_budget
Story workflow gate (Phase S3): checks narration text for AI-narrator tells — zero contractions, uniform sentence lengths, missing punch/long lines, banned filler phrases. Run on the formatted VO text before generating the voiceover; fix errors and re-run until ok. Free and instant.
check_voice_cadence
Verify a previously uploaded MCP generation input, create a Everygen asset record, and return a mediaInput object ready for generate_video.
complete_generation_input_upload
Assemble multiple clips into ONE final video, rendered server-side. Give an ORDERED list of clips; each clip may carry its own audioUrl (a voiceover) which overlays that clip and mutes the clip's own sound. Story workflow finals use TWO passes: pass 1 glues the masters (one clip per master, window = its locked plan duration, NO audioUrl on any clip); pass 2 is a SINGLE clip { videoUrl: the glued video, audioUrl: the one voiceover, durationSeconds: the plan's target total } which overlays the narration and mutes everything else. Never put audioUrl on a multi-clip payload for a story final — the audio would end with that clip. Also use it to put a fresh voiceover over an uploaded or de-captioned video (a single clip with an audioUrl). (Legacy plan_story_scenes conversations only: one clip per scene with its per-scene voiceover.) All URLs must be Everygen URLs from earlier steps (generate_video final URLs, generate_voiceover audioUrl, uploads, or caption-removal results). Max 3 minutes total. For story videos, do NOT call this until the user has reviewed the master clips and explicitly approved the final render. To add captions, run add_captions on the composed result afterward. Returns a self-polling video card.
compose_video
Save a reusable character from an image. IMPORTANT: to create a character you must FIRST have an image — call generate_image (or upload_media) to produce one, show it to the user, then call create_character with that image URL. The result renders the saved character image for confirmation. If description is omitted it's auto-generated (appearance only). A public image URL can also be fetched and saved.
create_character
Delete one of the user's saved characters by id. Ownership-checked; only the caller's own characters can be deleted.
delete_character
Estimate Everygen credit cost for image or video generation. Video model defaults match generate_video (MiniMax H3 when references are present and model is omitted). Only call when the user explicitly asks about cost or pricing.
estimate_generation_cost
Generate a marketing video ad using the selected product, avatar, voice, format, and script. CRITICAL: the script must be SHORT enough to fit the selected duration - about 2-3 sentences for 8 seconds, 3-4 for 10 seconds. Do NOT write a long monologue. The character must finish speaking before the video ends. This tool builds the full marketing prompt with format-specific templates and role-tagged reference media. One call = ONE continuous clip (MiniMax H3 and Seedance max 15s) - for longer ads make one call per scene with the same avatar and voiceId (see the long-ad workflow). firstFrameUrl pins the opening frame (whenever other references are attached - which is any ad with a product or avatar - it is applied as a locked reference image with a first-frame lock in the prompt, since providers reject a hard first frame combined with references). referenceImageUrls/referenceVideos/referenceAudios attach extra references like the in-app studio composer; video and audio references work with MiniMax H3 and Seedance and require durationSeconds (use the values returned by the upload widget). Returns a video result card that self-polls. COST: this call starts ad generation and consumes credits when accepted. The confirmed parameter is currently ignored; do not call once just to request an estimate.
generate_ad
Generate a custom avatar image from a text prompt, or save an uploaded image as an avatar. Called by the ad builder widget.
generate_ad_avatar
Generate a full audio scene with BytePlus Seed Audio 1.0 from a descriptive text prompt. Use for music, ambience, sound effects, and multi-role dialogue — NOT for plain narration voiceovers (use generate_voiceover). Optional references: up to 3 audioUrl clips referenced as @Audio1/@Audio2/@Audio3, OR one imageUrl for voice/style guidance (never both). Returns a stable R2 URL and renders the same inline audio player card as generate_voiceover.
generate_audio
Generate a still image with Everygen. Use Nano Banana 2 by default, GPT Image 2.5 Flare for fast OpenAI generations, GPT Image 2.5 Sunburst when editing precision matters, and Nano Banana Pro for highest-quality photorealism. Pass useSearch:true only with a Gemini model. Use this only for explicit still-image requests. If the user may want motion, use generate_video instead.
generate_image
Generate 2-8 independent images in one call and return every result in input order. Use this for clean plates, variants, storyboards, placement frames, or any job with multiple prompts. Each item can choose its own model, aspect ratio, resolution, search setting, and HTTPS reference images.
generate_image_batch
Generate a voiceover script using AI. Returns a written script optimized for short-form video (TikTok, Reels, Shorts). Provide a topic, product description, or paste a YouTube URL to analyze and write a script based on the video. Optionally pass a format and/or a channelStylePrompt (from analyze_channel_style) to match a specific channel's voice. For multi-scene story videos use the story formats (animal-story, bodycam, custom-story) — they apply the viral story formula where each paragraph maps to one video scene. The script can then be used with generate_voiceover to create audio.
generate_script
MODEL SELECTION: Before generating video, use the model the user explicitly named or approved. If they have not chosen one, consult list_supported_models, recommend suitable options for this video, explain the tradeoffs, and STOP to ask which model they want. Script approval, voice selection, a recreation analysis recommendation, or a generic go ahead is not model approval. Reuse their choice for subsequent scenes; ask again before changing models. Always pass the chosen model explicitly for every scene. Do not include captions or subtitle wording in video-generation prompts unless the user explicitly asks the video model to generate them. Start an Everygen video generation and return generation ids for polling. Model routing: MiniMax H3 or Seedance 2.5 when the call has reference images/videos/audio (recommend MiniMax H3 and wait for the user to choose it); Seedance 2.5 for face/identity/lip-sync; Kling 3.0 for premium quality, story, or audio; Kling 3.0 Turbo for fast text-to-video only (it rejects referenceImageUrls — use firstFrameUrls, or switch to MiniMax H3 / Seedance 2.5); Veo 3.1 for cinematic/photorealistic. For ads/product videos use generate_ad instead. IMPORTANT: pass orientation="portrait" when the user asks for 9:16, and orientation="landscape" when they ask for 16:9. Seedance and MiniMax H3 accept ratio strings. For story videos, follow the story workflow (get_story_workflow phase "start") — it locks camera medium, continuity, and durations before any generate_video call, and every prompt must pass check_prompt_budget first. LEGACY: scenes planned by plan_story_scenes pass storyPlanId + sceneIndex instead of a prompt (the server injects the exact planned prompt; those scenes default to Kling 3.0) — only to finish conversations that already hold a planId. COST: this call starts generation and consumes credits when accepted. The confirmed parameter is currently ignored; do not call once just to request an estimate. Unsupported durations are snapped; when that happens the result includes duration (what ran). Report that length.
generate_video
MODEL SELECTION: Before generating video, use the model the user explicitly named or approved. If they have not chosen one, consult list_supported_models, recommend suitable options for this video, explain the tradeoffs, and STOP to ask which model they want. Script approval, voice selection, a recreation analysis recommendation, or a generic go ahead is not model approval. Reuse their choice for subsequent scenes; ask again before changing models. Always pass the chosen model explicitly for every scene. Do not include captions or subtitle wording in video-generation prompts unless the user explicitly asks the video model to generate them. Start 2-8 distinct video clips in one reliable server-side batch and return every accepted generation id in scene order. Use this instead of making multiple parallel generate_video calls for explainers, stories, montages, or any composition with multiple scene prompts. One scene object equals one clip; do not claim a scene was submitted unless it appears in sceneGenerations. COST: this call starts all accepted clip generations and consumes credits for each. The confirmed parameter is currently ignored; do not call once just to request an estimate.
generate_video_batch
Generate a WAV voiceover audio file from text using an Everygen voice and return a stable R2 URL. The result includes a timing field (speechEndSeconds, tailSilenceSeconds, sentenceEnds, beatEnds) — the story workflow reads it as the timeline spine and passes it to lock_story_durations. durationSeconds includes trailing silence; timing.speechEndSeconds is where speech actually ends.
generate_voiceover
Check a caption removal job and return its status and result video URL. This call may finalize a completed job or settle and refund a failed or stale job.
get_caption_removal_status
Check an add_captions render and return progress and its final video URL. This call may copy a completed video into the user's storage or refund and settle a failed render.
get_caption_render_status
Check a compose_video render and return progress and its final video URL. This call may refund credits if the render has failed.
get_compose_status
Return the authenticated Everygen account's current credit balance. Only call when the user explicitly asks about their credits or balance.
get_credit_balance
The Everygen GTA 6 VIDEO WORKFLOW — the required pipeline for GTA 6 YouTube Shorts (GTA 6 video/short, GTA VI, "remix this GTA clip", "remove the captions and re-voice", GTA 6 news short, "make GTA 6 footage", Vice City AI video, gameplay-style AI short — NOT found-footage animal stories (get_story_workflow) or UGC product ads). Three lanes: REMIX (existing GTA footage: clean captions, rescript, re-voice), GENERATE (GTA 6-style AI footage), NEWS (sourced narration over library + AI broll). Call with phase "start" FIRST when the user wants a GTA 6 video, then fetch the phase each step tells you to. Returns the instructions for that phase: start (entry + core rules + state/gates), script (Phase 0 + script system + voice), sourcing (REMIX sourcing/cleaning + NEWS library fill + timing), prompts (GTA 6 LOOK bible + anchors + prompt templates + audits), delivery (validate → approve → compose → captions + error recovery). Free — reading instructions never charges credits.
get_gta6_video_workflow
Fetch status and final URLs for Everygen image generation ids. A timed-out generation may be marked failed and refunded during this check. Does not render a card - the generate_image result card updates itself.
get_image_generation_status
The Everygen NURSERY RHYME WORKFLOW — the required pipeline for nursery-rhyme kids' videos (nursery rhyme / kids' song video, kids musical, bedtime story video, "Wheels on the Bus" / "Row Your Boat", toddler sing-along, baby song animation, "[rhyme] for kids"). Call with phase "start" FIRST when the user wants a nursery-rhyme or kids' song video, then fetch the phase each step tells you to. Returns the instructions for that phase: start (entry + core rules + state), song (Phase 0 → lyrics → song masters: formats, IP gate, kid-safety, plan tables, narration, engines, MUSIC LEDGER, MASTER QC, audition), visuals (Phase C → V: NURSERY LOOK, variety draw, cast, STYLE CARD, storyboard + BEAT SHEET, window prompts, audits), delivery (Phase Z: validate → approve → compose → seam verify → captions → deliver, plus error recovery). Free — reading instructions never charges credits.
get_nursery_rhyme_workflow
The Everygen STORY WORKFLOW — the required pipeline for found-footage narrated story videos (animal stories, doorbell/CCTV/bodycam stories, "AI story video", story recreations). Call with phase "start" FIRST when the user wants a story video, then fetch the phase each step tells you to. Returns the instructions for that phase: start (entry + core rules + state), story (script + voice), storyboard (whole-film plan), continuity (camera medium + identity locks), model (model + duration lock), plates (reference frames), realism (anti-AI-look gates), prompts (master prompt templates), delivery (final compose + captions), failures (error recovery), contracts (T→V quick index). Free — reading instructions never charges credits. On ChatGPT, its render phases require one generate_video_batch call for all 2–8 masters.
get_story_workflow
Check a video analysis job started by analyze_video. Read generations[0].status: pending means keep polling every 5-10 seconds; failed is terminal and includes an error; completed includes the full analysis at the top level. Read recreationMethod and recreationGuide before choosing a recreation workflow. Do not treat pending as failure. Recreation confirmation: after analysis, show the exact proposed spoken dialogue/narration in scene order, separately from visual directions (or explicitly state there is no speech). For a faithful recreation, preserve the source wording by default; for an adaptation, label the rewritten lines. Flag uncertain transcript words instead of inventing them. Summarize the planned visuals, avatar/voice, total duration, and any changes from the source, including omissions or a shorter sample. Ask the user to approve this concrete script and scope, then STOP and WAIT before generating images, voiceovers, audio, or video. A request to recreate, an avatar/voice selection, or cost approval alone is not script approval. Never silently replace the dialogue or reduce a full recreation to a test clip. Reuse explicit approval of the displayed script and scope; ask again only if either changes. Analysis-only requests need no generation approval.
get_video_analysis_status
Fetch status and final URLs for Everygen video generation ids. Checking a stalled job may reconcile its provider state, including completion or failure settlement. Does not render a card - the generate_video result card updates itself.
get_video_generation_status
Fetch one phase of a workflow's instructions (built-in or custom). slug + phase come from list_workflows; start with phase 'start'. Free.
get_workflow
List the user's saved reusable characters (most recent first), optionally filtered by a search term matching name or description. Renders the saved characters as a gallery.
list_characters
Deprecated - use browse_library instead, which searches, filters, and pages the user's full generation history. Only use this if browse_library is unavailable. Lists only the most recent Everygen image and video generations.
list_generations
List Everygen image and video models, capabilities, limits, and credit pricing. Use when the user asks about models or when you need to verify a model name, resolution, or capability. Do not call proactively before every generation - use defaults when possible.
list_supported_models
Show an interactive voice picker (built-in Everygen voices with previews) and let the user choose. Call this when a voiceover/voice-change is requested without a clearly specified voice, then WAIT for the user to tap 'Use' on a voice before generating — do not pick a voice yourself or call generate_voiceover/change_voice until they choose. Do NOT list, enumerate, or describe the voices in your text reply — the picker already shows them all; reply with just one short line telling the user to pick one and tap Use.
list_voices
List every Everygen media workflow available (built-in + custom-uploaded) with its slug, what it's for, trigger phrases, and phases. Call this FIRST for any made-to-brief video or requested thumbnail, then call get_workflow(slug, phase:'start'). Free — reading never charges credits.
list_workflows
Reload saved products, avatars, voices and defaults for the ad builder. Does not save products or start generation.
get_ad_builder_data
Story workflow gate (Phase M): partitions the voiceover timeline into N whole-second master durations that sum to the speech length, land cuts on sentence/beat ends, and fit the chosen model's allowed durations. Pass the timing fields from generate_voiceover's result plus beats (master count N) and the model's allowed durations (or just the model name to use the built-in fallback table when list_supported_models is unavailable). Omit both for non-manual-duration models — windows lock as free whole seconds and generation durations round UP into the model's set. If ok is false, follow suggestedBeats. Free and instant.
lock_story_durations
Story workflow gate (Phase S3): rewrites digits and symbols into speakable words (911 → nine one one, 2019 → twenty nineteen, 3:45 → three forty-five, $20 → twenty dollars, # → number). Run on the narration before generating the voiceover and use the returned normalizedText verbatim. Free and instant.
normalize_tts_text
LEGACY story pipeline — for NEW story videos use get_story_workflow (phase "start") instead; do not start new stories with this tool. Plans a multi-scene story video from an approved script with hex-coded consistency passes and one camera-prefixed Sora prompt per scene. Returns a planId and scenes[] — each with index, voiceoverText and prompt. To generate a planned scene's clip, call generate_video with storyPlanId=planId and sceneIndex=scene.index — NOT the prompt text (the server injects the exact planned prompt; retyping it drops the hex codes and breaks character consistency). Only use this to finish conversations that already hold a planId from it.
plan_story_scenes
Open a widget so the user drags a sample caption over the clip to choose WHERE the captions appear (e.g. lower third vs centered). Call this ONLY when the user wants to place the captions visually themselves. If they already named a zone in words ('at the bottom', 'lower third', 'centered'), skip this widget and pass the matching position (top/middle/bottom) to add_captions instead. Without either, captions use the preset's default (centered). The widget sends back the add_captions call with the chosen captionPosition; just follow it. Optional.
place_captions
Create a short-lived upload URL for a local image, video, or audio file that will be used as a Everygen video-generation input. Local MCP/CLI clients should upload the file with PUT, then call complete_generation_input_upload.
prepare_generation_input_upload
Remove burned-in captions/subtitles from a video. Call select_caption_area FIRST so the user can visually pick the caption region — unless the user already said where the captions sit, in which case call this directly (the default roi covers the bottom 35% of the frame, where burned-in captions usually are). Model: TURBO (fast, good quality) or HD (slower, best quality). Defaults to TURBO. Pass the roi from select_caption_area when the user picked one.
remove_captions
Show the ad format picker widget. Call this FIRST when the user wants to create an ad but hasn't specified a format. The user picks a format (UGC Product, UGC Talking, Hyper Motion, etc.), then you call start_ad with that format. If the user already named a specific format, skip this and call start_ad directly.
select_ad_format
Opens an interactive widget where the user can see their video and drag a box around the BURNED-IN captions they want REMOVED. This is part of the caption-REMOVAL flow only — it has nothing to do with choosing where NEW captions go (that is add_captions' position parameter). Call it before remove_captions when the user has NOT said where the existing captions sit; skip it and call remove_captions directly when they have (e.g. 'the captions are at the bottom' — the default region covers the bottom 35%). Pass the video URL (from upload_media_widget or a previous Everygen result). The user will drag a box and click 'Remove Captions', which sends back the roi coordinates. Then call remove_captions with those coordinates.
select_caption_area
Opens an interactive picker with animated preview cards of every caption style so the user can BROWSE and tap one. Open it ONLY when the user asks to see the styles ('show me the caption styles', 'what do the captions look like?') or gave no hint of a look at all. If their message already names or describes a style ('Hormozi', 'bold white', 'neon', 'karaoke', 'minimal subtitles'), do NOT open this — call add_captions directly with the closest preset from its style list. If the user has not provided a video yet, call upload_media_widget FIRST. The user taps a style and clicks 'Add Captions', which sends the chosen preset back; then call add_captions with that preset and the video URL.
select_caption_style
Open the interactive ad builder widget to create a marketing video ad. The user picks a product, avatar, voice, format, and writes a script, then taps 'Use' to hand the selections back. WAIT for the user to make their selections - do NOT call generate_ad until they tap 'Use'. If the user provides a product URL, pass it as productUrl - the product will be extracted, saved, and pre-selected in the widget.
start_ad
How do I improve a ChatGPT Plugin's discoverability?
The levers are the listing surface agents actually read: names, descriptions, keywords, tool metadata, and registry health. Which lever matters depends on where discovery breaks, which is what continuous measurement shows.
What are Everygen alternatives on ChatGPT?
As of 2026-10-02, Everygen competes with AdKraft, AdsTurbo, AI Video Maker, Arcade, Camtasia, Clueso, Frameo, Glinded for Birthday Videos, Glinded for Memorial Videos, HeyGen, Hypernatural, Incarn, Instavar Video Templates, invideo, Krikey AI Animation, Malloy Studio, Martini, Motionvid, Runway, Screel, Sequencer, Slipa, sync. labs, Synthesia, TalkGen, Treza, VEED Video Generator, VideoGen, Videomagic, VideoZero, Visla Video Maker in ChatGPT AI Video Generation, ranked by public Discoverability Score.
Where is this profile measured?
This profile uses the geography attached to the latest public registry snapshot: US. Locale tags are intentionally omitted.