DEV Community

iLoveVideoEditor
iLoveVideoEditor

Posted on

Build a Reviewable AI Video Agent with MCP

An AI video agent should not begin with a render call.

It should first prove that it understands the engine it is about to use, the
composition it selected, and the constraints that determine whether the output
will be readable and safe to publish.

The minimum dependable loop is:

brief
-> discover
-> inspect
-> validate
-> preview
-> approve
-> render
-> verify
Enter fullscreen mode Exit fullscreen mode

That sequence is less dramatic than a one-prompt demo. It is also much closer
to a system a real team can operate.

The complete tool sequence

iLoveVideoEditor exposes 14 typed tools through its MCP server. A reviewable
run uses a subset in an explicit order:

ilovevideoeditor_list_templates
-> ilovevideoeditor_get_template
-> ilovevideoeditor_get_layer_capabilities
-> ilovevideoeditor_measure_text
-> ilovevideoeditor_local_preview
-> ilovevideoeditor_local_capture
-> ilovevideoeditor_local_analyze
-> human approval
-> ilovevideoeditor_render_template or ilovevideoeditor_render_json
-> ilovevideoeditor_get_render_status
-> ilovevideoeditor_get_download_url
Enter fullscreen mode Exit fullscreen mode

The model still reasons. It simply reasons against a real contract instead of
inventing template variables, effects, transitions, or render behavior.

Install the server

Configure the published package in an MCP-compatible client:

{
  "mcpServers": {
    "ilovevideoeditor": {
      "command": "npx",
      "args": ["-y", "@ilovevideoeditor/mcp-server"],
      "env": {
        "VF_API_KEY": "vf_live_..."
      }
    }
  }
}
Enter fullscreen mode Exit fullscreen mode

Keep the real key in the client's secret environment. Never paste it into a
prompt, article, screenshot, evaluation fixture, or committed configuration.

The sequence in this article was checked against
@ilovevideoeditor/mcp-server v1.0.2.

Step 1: start read-only

The first call should not spend credits or create a job.

Use ilovevideoeditor_list_templates to discover candidates, then call
ilovevideoeditor_get_template to inspect the required text, image, color, and
file variables.

This catches a common planning error: an agent creates a detailed storyboard
that cannot be mapped to the selected template.

A compatible template must support more than the general visual style. It must
also support:

  • the target aspect ratio;
  • the required media types;
  • the planned copy density;
  • the number and purpose of scenes;
  • the brand constraints;
  • the intended call to action.

If tool discovery or schema inspection is unstable, adding a paid render call
only makes the failure harder to diagnose.

Step 2: validate capabilities instead of guessing

When a brief asks for a motion effect or transition, call
ilovevideoeditor_get_layer_capabilities before adding it to the plan.

Do the same for typography. A sentence can be grammatically correct and still
be unusable in a 9:16 composition. ilovevideoeditor_measure_text lets the
agent shorten, split, or restructure copy while the decision is still cheap.

The output of this stage should be a small, reviewable artifact:

{
  "scene": "cta",
  "purpose": "Close with one action",
  "copy": "Start your first reviewable render",
  "templateVariable": "ctaText",
  "durationSeconds": 2.5,
  "assumptions": [],
  "reviewRequired": ["Confirm destination URL"]
}
Enter fullscreen mode Exit fullscreen mode

This is a better approval boundary than a raw prompt and a cheaper approval
boundary than a finished render.

Step 3: give the agent eyes

A structurally valid payload can still produce a weak video.

Start a local preview, capture representative frames, and analyze them before
submitting a cloud render. The visual pass should look for concrete failures:

  • clipped or overflowing text;
  • unsafe margins;
  • weak contrast;
  • missing media;
  • unintended crops;
  • an empty or visually weak scene;
  • a call to action that appears too briefly.

The report should be specific enough to drive a correction:

{
  "scene": "cta",
  "time": 11.4,
  "checks": {
    "textOverflow": false,
    "safeMargins": true,
    "contrast": "pass",
    "missingMedia": false
  },
  "reviewRequired": ["Confirm destination URL"]
}
Enter fullscreen mode Exit fullscreen mode

Visual inspection does not eliminate human review. It gives the reviewer a
smaller and better-defined set of decisions.

Step 4: keep success states separate

One green status is not enough for branded video.

Treat these as separate states:

  1. Schema valid — the request matches the tool and composition contract.
  2. Render completed — the engine produced the expected file.
  3. Visual checks passed — the composition meets the defined quality rules.
  4. Human approved — claims, media, timing, and CTA were reviewed.
  5. Distribution authorized — the output may be sent to its destination.

A completed render does not prove that a price is current, a product claim is
supported, a face or voice is licensed, captions are accessible, or the
destination URL is correct.

Those decisions remain explicit.

Step 5: render only after approval

After the storyboard and preview are approved, use
ilovevideoeditor_render_template or ilovevideoeditor_render_json.

Then poll the job with ilovevideoeditor_get_render_status and retrieve the
completed output with ilovevideoeditor_get_download_url.

The run record should contain:

  • the normalized brief;
  • selected template and version;
  • variable map;
  • storyboard;
  • captured review frames;
  • reviewer decision;
  • render job ID and status history;
  • final destination.

Store the decisions, not the secrets. Redact API keys, private source URLs,
customer identifiers, and sensitive transcript text from prompts, screenshots,
logs, and fixtures.

A safe first experiment

The first proof can stop before rendering:

  1. install the MCP server;
  2. list the available tools;
  3. discover templates;
  4. inspect one template;
  5. measure one short line of text;
  6. stop.

Once that path is stable, add local preview, a captured frame, and one approved
render.

Explore the current tool surface and installation paths:

https://ilovevideoagents.com/tools?utm_source=devto&utm_medium=organic_content&utm_campaign=reviewable-video-agents&utm_content=ext-a02-tutorial


Disclosure: iLoveVideoEditor builds the MCP server and rendering system
described in this article. Product behavior and counts were checked against the
repository fact registry and MCP server v1.0.2 on 2026-08-11.

Top comments (0)