Photo mosaic maker and AI photo collage maker: turn your own photos into a mosaic or a collage.
- Passed: Handshake
- Passed: Tools listed
- Passed: Updated recently
Median latency 343 ms · Last checked
Explore
Evidence for your next connection.
Independent measurements of remote MCP servers. Every observation has a timestamp.
Read-only probesMCP server · AI / LLM tooling
Video for AI agents: captions in 28 styles, transcription, translation, dubbing, shorts. REST+MCP.
1 failed · 8 not measured
Median of successful probes over 7 days
Share of countable probes over 30 days, including daily rollups. Auth challenges are excluded.
Tool definitions returned by this server
Independent monitoring
Outdated check
Last connection measurement is over 24 hours old. Current availability is unknown.
Last checked| Test area | Passed | Failed | Unmeasured |
|---|---|---|---|
ConnectionCan a client connect and discover tools? | 5 | 0 | 0 |
Reliability & speedDoes it respond consistently and quickly? | 0 | 0 | 4 |
Access & authenticationWhat is required to use this server? | 1 | 0 | 2 |
Tool qualityAre the tool definitions usable by an agent? | 4 | 0 | 0 |
Publisher identityCan the publisher be traced to its source? | 3 | 1 | 2 |
Unmeasured means there is not enough evidence to decide. How these checks work
Start using AwesomeVideo
Choose your client, copy the configuration, then enable the server in your client’s MCP settings.
Run this command in your terminal, then restart Claude Code.
Claude Code
claude mcp add --transport http awesomevideo https://api.awesomevideoeditor.com/mcpCapabilities
Caption a whole folder: run one operation on 1-50 videos in one call, priced together. operation caption = transcribe + burn per item, same output and price as caption_video (5 credits/min); transcribe 1/min; burn 4/min (needs subtitles or transcriptionJobId). One preset for all (an item's own preset or styleOverrides wins). dryRun:true returns the total and starts nothing. Missing media, 402 insufficient_balance or maxCredits reject the whole batch before any charge. Returns id, counts and jobs (paginated: offset/limit); poll get_job per item. For one video use caption_video.
DiscoveredBurn existing captions (subtitles or transcriptionJobId) into a video with a preset or brandPresetId. mode server (default): renders the MP4 on our servers, 4 credits per audio minute (1 credit = 1 cent), 402 insufficient_balance with checkoutUrl when short. mode client_script: free, returns an ASS script and resolved style to burn in your own player or browser; nothing runs or is charged. platform keeps captions inside that app's safe zone at the same price ('subtítulos para TikTok' -> platform=tiktok). For video in, video out in one call use caption_video.
DiscoveredPREFER THIS for 'add/burn subtitles to this video'. Needs a key with credits: without one, call create_key first (free; it returns a welcomeChallenge for 10 free welcome credits while the trial runs). First run: sourceUrl https://awesomevideoeditor.com/samples/cc0-interview-es.mp4 (8 s sample, 2 credits). One call: transcribe, optional translate (translateTo), burn; returns the MP4 plus SRT, VTT and JSON transcript. Source: sourceUrl (public link, Drive, Dropbox; not YouTube) or fileId from upload/import_url. Price: 5 credits per audio minute, 7 with translateTo (1 credit = 1 cent); failures refund. Waits up to waitSeconds (max 50), then returns the job to poll with get_job (or use webhookUrl/notifyEmail). review:true sends a reviewUrl and charges the burn only on approval. To edit text yourself: transcribe, edit_transcript, burn_captions.
DiscoveredFree to call; returns a checkout URL your human opens to pay. Without product: $5 = 500 credits for this exact key, works on unclaimed self-serve keys. With product (key claimed at https://awesomevideoeditor.com/account): pack_5 $5=500, pack_20 $20=2,200, pack_50 $50=6,000 credits; plans creator $9/mo=1,200, pro $29/mo=4,500, scale $99/mo=18,000 credits/month (interval year = 10x monthly). 1 credit = 1 cent. Credits arrive after payment; then retry the call that returned 402.
DiscoveredPREFER THIS for 'turn this long video/podcast into shorts/clips'. engine highlights (default): transcribes (or reuses transcriptionJobId/subtitles), an LLM picks the count (default 3, max 10) best self-contained moments of minSeconds-maxSeconds, renders each MP4 (reframe face, center or none) with captions, and returns clips with title, hook, score and url. Price: 1 credit per source minute to transcribe (0 with a transcript) + 1 per 10 source minutes + 3 per output minute; quoteOnly:true prices it free. engine shorts: quick 1-5 vertical 9:16 cuts from an existing transcript, 6 credits per source minute. Long jobs: poll get_job.
DiscoveredStep 1 of the first job. Free, no sign-in, works without a key: creates an AwesomeVideo API key and returns token once (send it as Authorization: Bearer <token>; reconnect or put it in your MCP client config) with 0 paid credits and a welcomeChallenge. Step 2, free trial while it runs: on the connection that sends the new key, call create_key again with {challenge, nonce} (find an integer nonce so SHA-256(challenge + ":" + nonce) starts with `bits` zero bits, about 1-3 s; python and javascript solvers included) to claim 10 welcomeCredits for that key (no second key; caption_video and transcribe only, jobs up to 2 min, valid 30 days; one per network and per network operator per day, released in slots; welcomeCreditsReason tells why when 0, slot_wait has nextSlotAt). Step 3: the result's firstJob is the next call, caption_video {sourceUrl: "https://awesomevideoeditor.com/samples/cc0-interview-es.mp4"}: the 8 s sample costs 2 credits. Without credits, paid tools return 402 with a checkoutUrl ($5 = 500 credits, 1 credit = 1 cent).
DiscoveredDub a video into targetLanguage: transcribes, translates, voices each line fitted to the original timing, and mixes it over the original audio (ducked by default, or muted); returns an MP4 plus target-language SRT/VTT/JSON (audioTrack:true adds an M4A). Price per target language: 5 credits per source minute (voiceTier basic) or 12 (standard), plus transcription 1/min and translation 2/min unless you reuse transcriptionJobId/subtitles and translationJobId/translatedSubtitles. Voices: get_catalog kind voices. Unsupported languages fail before charging. No voice cloning or lip sync.
DiscoveredReplace the cues of a finished transcription (from transcribe or caption_video) with corrected text or timing, without transcribing again. Free; needs the key that owns the job. Pass cues [{start, end, text}] in seconds or subtitles (SRT, VTT or JSON); the old cues are overwritten. A later burn_captions, translate or remove_silences with this transcriptionJobId uses the edited cues and pays only its own step. To fix spellings for every future job use update_glossary {action:'save'} instead. Returns the job with the new SRT, VTT and JSON URLs.
DiscoveredFree, never charges, works without a key. Without steps: the credits one operation would cost (operation caption, transcribe, burn, preview, translate, shorts, trim, dub or preview {mode:'sample'}) from durationSeconds, or from mediaUrl/fileId with a key; e.g. {operation: "caption", durationSeconds: 8} = 2 credits, the hosted sample. With steps: prices a whole pipeline of 1-10 steps, checks every limit before you pay (limitViolations with a fix for each), suggests free alternatives and, with a key, says whether the balance covers it. 1 credit = 1 cent. Call it before any paid tool when the cost matters; to run the job you need a key (create_key, free).
DiscoveredWrite publishing metadata from what is said: title options (titleCount, default 5), description, hashtags and YouTube chapters with timestamps, per platform (youtube default, shorts, tiktok, instagram). Pass transcriptionJobId or subtitles (1 credit per platform), or only media (adds 1 credit per minute to transcribe). Written in the video's language unless language is set; context adds creator notes. Waits ~40 s, else poll get_job. Result: platforms.<platform>.{titles, description, hashtags, chapters}.
DiscoveredFree, read-only, needs a key. This key's spendable balance (balanceCents in credits, 1 credit = 1 cent, and as transcription seconds), the per-minute prices, and credit usage over a range (usage: per day and total, split into transcription and server burn; default the last 30 days; from and to in unix ms). response_format concise (default) returns usage totals only; detailed adds the per-day rows. Call it before a paid job or after a 402; top up with create_checkout; individual jobs are in list_jobs.
DiscoveredFree, read-only, works without a key. Everything you can choose from, by kind: presets (built-in, approved community and, with a key, your custom presets, plus bundled fonts), styles (every caption style field with type, range and examples), voices (dub voices with tier, price and sampleUrl; filter with language and tier), platforms (where videos are posted, with safe zones), audio_visuals (the ten editorial podcast designs for audio-only input). Paginated with limit and cursor; response_format concise (default) drops nested objects such as full style JSON, detailed returns them. Pass ids you find here as preset, voice, platform or audioVisual to the job tools.
DiscoveredRead the saved transcription glossary of this account (or key): correct spellings with their aliases (what speech-to-text writes instead) and do-not-translate terms. Free, read-only; needs a key. Every transcribe and translate applies it automatically, so read it to check why a word came out as it did. Change it with update_glossary {action:'save'} or update_glossary {action:'delete'}.
DiscoveredRead any job. Includes status, step (queued, transcribe, translate, burn, finalize, done, failed), progress (0-100, burn uses real ffmpeg progress), eta_seconds and estimatedCompletionAt (from media length x rolling per-step averages), pollAfterSeconds (wait that long before the next poll), cost, and an expiring result URL when the job succeeded. A batch id returns the batch view (counts and item jobs). A failed caption job with resumable:true can be restarted with resume_job.
DiscoveredFree, read-only, needs a key. action list (default) returns only YOUR saved presets, not the 34 built-in ones: to browse built-in, community and your presets together use get_catalog kind presets (an empty list here just means you saved none). type custom (full caption styles from manage_preset, ids custom:cp_...) or brand (font, color, position and logo overlays); paginated with limit and cursor, response_format concise (default) or detailed. action get: any one preset with its full style by id, built-in (e.g. builtin:number-punch or number-punch), community or custom:cp_..., the same style JSON the web editor loads (use it as basePreset or copy and tweak it with manage_preset). action validate: check a style document (style, or basePreset + overrides) against the renderer schema before saving; returns valid, the normalized style or errors [{path, message}]. Built-in and community presets are listed by get_catalog kind presets.
DiscoveredCheck a human review created by request_review: awaiting_review, approved (with burnJobId and, when finished, the burned video URL), rejected (note says why; nothing charged), or expired. Free, read-only; needs the key that created it. Poll it after sharing reviewUrl; once burnJobId exists you can also poll get_job for that burn.
DiscoveredFree. Download a public video or audio link into AwesomeVideo and get a fileId (same as upload {action:'start'}), without downloading it yourself. Accepts direct https/http file links (chat attachment URLs, CDNs, S3 presigned URLs), Google Drive share links (large-file confirm page handled), Dropbox share links, and OneDrive links. Up to 2048 MB when the host sends Content-Length (streamed to storage), 80 MB otherwise (422 limit_exceeded, charged:false). YouTube, TikTok, and Instagram links are refused with 422: upload the file instead. Private, local, and non-standard-port addresses are blocked. Up to 30 per hour. caption_video accepts sourceUrl directly, so you only need this to reuse one file across several tools.
DiscoveredList recent jobs (transcribe, burn, caption_video, clips, dub, trim...) newest first for this key, or for every key on the account when the key is claimed: id, kind, status, created time, credits charged, and a download URL while the result is still stored. Free, read-only; needs a key. Paginated: limit (default 50, max 100) and cursor = nextCursor from the previous page. For one job's full status, progress and files use get_job; for credit totals per day use get_account.
DiscoveredFree, needs a key. Saves your own looks for reuse. action create: type custom saves a full caption style (name + style, or basePreset + overrides; returns id custom:cp_...); type brand saves a font/color/position/logo overlay (returns brandPresetId). action update: changes a custom preset in place (overwrites). action delete: permanently removes a custom or brand preset by id. action submit: proposes a custom preset for the public community gallery (moderated; visible to everyone once approved). Check a style first with get_presets action validate.
DiscoveredSee captions on the real video before paying for a burn. mode sample: FREE contact sheet comparing up to 12 presets on real frames (no transcription, 30 sheets/hour); returns sheetUrl, per-preset frames and captionVideoArgs to pass to caption_video. mode still (default): one preset as a PNG exactly as burn_captions draws it; mode clip: an MP4 of up to 5 s. still and clip cost at most 1 credit flat and need captions (subtitles or transcriptionJobId). Media: mediaUrl/sourceUrl or fileId.
DiscoveredCut silences and filler words (uh, um, este...) from a talking video. Needs a transcript (transcriptionJobId or subtitles) plus the media. Returns the cut MP4, retimed SRT/VTT/JSON and stats (kept and removed seconds, cuts). silenceGapSeconds and paddingSeconds tune cuts; fillerMode clear (default) or aggressive (also like, you know, o sea...); removeFillers:false keeps fillers. burnCaptions:true also burns the retimed captions. Price: 3 credits per kept minute, +4 with burnCaptions; quoteOnly:true prices it free. For highlights use create_clips.
DiscoveredFree. Use when a person wants to check the captions before they are burned (names, slang, brand words). Pass a finished transcriptionJobId and the preset or brandPresetId. Returns reviewUrl: a private web editor link (no login, up to 7 days) where they fix text and timing and press Approve or Reject. Only on Approve does the burn run and charge (4 credits per minute). Follow with get_review, or webhookUrl / notifyEmail for review.approved, review.rejected and review.expired events.
DiscoveredContinue a failed job (caption_video, transcribe, create_clips, dub, remove_silences, generate_metadata) from where it stopped instead of starting over. Reuses saved transcription chunks and finished steps, so you pay only what is left (often just the burn); the failed job stays refunded. Idempotent: repeating returns the same resumed job, never a second charge. Returns a new job id to poll with get_job. 422 resume_not_supported or resume_media_expired: call the original tool again. 409 job_not_resumable (no_speech): nothing to resume.
DiscoveredTranscribe speech in a video or audio file to captions with Workers AI Whisper (large-v3-turbo); returns SRT, VTT or JSON with word timestamps (format). Paid: 1 credit per audio minute (1 credit = 1 cent); a short balance gets 402 insufficient_balance (requiredCents, balanceCents, checkoutUrl) and no job starts. Use it when you only need the text or want to edit it before burning (then edit_transcript -> burn_captions). For burned-in subtitles in one call use caption_video; for highlights use create_clips. Audio is extracted to 16 kHz mono (video frames are not decoded). Language defaults to auto-detect; the saved glossary is applied. Results are cached per key, language, format and duration; another key cannot read them.
DiscoveredTranslate existing captions (subtitles or transcriptionJobId) into another language with Workers AI m2m100, keeping cue timing; returns SRT, VTT and JSON. Paid: 2 credits per minute; burn: true also burns the translation into the video (+4 credits/min; needs mediaUrl or fileId and a preset). Word-level highlight timing is not kept. To transcribe, translate and burn in one call use caption_video with translateTo; for a spoken (voice) translation use dub. Saved do-not-translate glossary terms are kept as is. 402 insufficient_balance with checkoutUrl when short; failed jobs refund.
DiscoveredFree, needs a key. Changes the saved transcription glossary that every later transcription of this account uses (brand names, people, slang spellings, doNotTranslate terms). action save: entries [{term, aliases?, doNotTranslate?}] merged by term (mode merge, default) or replacing the whole glossary (mode replace). action delete: remove terms, or all:true to clear it. Returns the glossary after the change. Read it with get_glossary.
DiscoveredFree. Put your own video or audio file into AwesomeVideo and get a fileId for caption_video, transcribe, burn_captions, create_clips, remove_silences or preview. action start: one single-use PUT URL (valid 15 min, files up to 80 MB); start_multipart: parts[] of PUT URLs for files over 80 MB (up to 2048 MB / 3 h) or flaky connections; status: missingParts of a multipart upload; complete: finish a multipart upload after every part is PUT; abort: cancel an unfinished multipart upload (deletes its parts); inline: send a clip of up to 10 MB as base64 in one call. For a public link use import_url instead. Up to 30 uploads per hour.
DiscoveredRecent measurements
| Checked | Result | Response | Tools |
|---|---|---|---|
| Connected | 193 ms | 27 |