A side-by-side look at the After Effects MCP and VideoGen MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose After Effects MCP for multimedia process work as a local process; choose VideoGen MCP for multimedia process over a hosted endpoint. You can also run both side by side in one mcpServers block.
run-script, get-results, get-help.VIDEOGEN_API_KEY, VIDEOGEN_BASE_URL, VIDEOGEN_OAUTH_ISSUER, VIDEOGEN_OAUTH_SUPABASE_PROJECT_URL, VIDEOGEN_OPENAI_APPS_CHALLENGE_TOKEN.get_getting_started_guidance, get_async_tasks_guidance, get_workflows_guidance.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Multimedia Process | Multimedia Process |
| Quality signal | 63/100 · Good | 84/100 · Excellent |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Remote HTTP/SSE |
| Auth | No auth required | API key required |
| Pricing | Free | BYOK (pay the provider) |
| Required env vars | None listed | VIDEOGEN_API_KEYVIDEOGEN_BASE_URLVIDEOGEN_OAUTH_ISSUERVIDEOGEN_OAUTH_SUPABASE_PROJECT_URLVIDEOGEN_OPENAI_APPS_CHALLENGE_TOKEN |
| Verified owner | Community listing | Verified |
| GitHub stars | 22 | 4 |
| Directory activity | 6 views 0 installs 0 upvotes | 9 views 0 installs 0 upvotes |
| Tools | 57 | 50 |
| Full listing | View After Effects MCP | View VideoGen MCP |
run-scriptRun a read-only script in After Effectsget-resultsGet results from the last script executed in After Effectsget-helpGet help on using the After Effects MCP integrationcreate-compositionCreate a new composition in After Effects with specified parameterscreate-adjustment-layerCreate an adjustment layer in the specified composition (or active comp).center-layersCenter one layer, selected layers, or all layers in a composition.get-layer-clip-framesGet a layer's clip start/end frames, source frame range, and duration in frames.setLayerKeyframeSet a keyframe for a specific layer property at a given time.setLayerExpressionSet or remove an expression for a specific layer property.test-animationTest animation functionality in After Effectsapply-effectApply an effect to a layer in After Effectsadd-any-effectAdd any After Effects effect to a layer by matchName or display name.get_getting_started_guidanceHow to authenticate, verify with get_me, introduce VideoGen with workflow example prompts, choose workflows vs media tools, and follow VideoGen id conventions. Call when connecting, onboarding, the user asks what VideoGen can do, or how to set up the API or MCP. Equivalent to reading the `guidance://getting-started` MCP resource — provided as a tool for clients that don't read resources directly.get_async_tasks_guidanceHow to handle async workflows, tool executions, and exports: statuses, hosted vs local wait caps, polling with get_* tools, and when webhooks apply outside MCP. Call before polling or when a start tool returns a still-running snapshot. Equivalent to reading the `guidance://async-tasks` MCP resource — provided as a tool for clients that don't read resources directly.get_workflows_guidanceCanonical run → remix → export flow and when to use each workflow tool. Prefer script_to_video for longer narrated / informational videos; keep storyboard_to_video to ≤3 scenes unless the user asks for more. Call before starting a full video project. Equivalent to reading the `guidance://workflows` MCP resource — provided as a tool for clients that don't read resources directly.get_tools_vs_workflows_guidanceWhen to use standalone media tools (automatic model routing for a single asset) versus workflows (full editable professional video). Call when choosing between generate_* tools and workflow tools. Equivalent to reading the `guidance://tools-vs-workflows` MCP resource — provided as a tool for clients that don't read resources directly.script_to_videoPreferred for narrated / informational / explainer videos from text, especially ~1 minute or longer. Turn a verbatim narration script into an editable video with AI-generated visuals and captions. Prefer this over storyboard_to_video unless the user wants a short shot-directed storyboard. For avatar narration, pass actorEntityId and optionally set avatarQuality.voiceover_to_videoBuild an editable video with AI-generated visuals from an uploaded voiceover audio file.slideshow_to_videoBuild an editable narrated video from an uploaded PDF or slideshow file. Upload the file first with upload_file, then pass its fileId. For avatar narration, pass actorEntityId and optionally set avatarQuality.storyboard_to_videoBuild an editable video from an ordered storyboard (frame-by-frame shot list). Every scene needs a visual prompt and may include spoken words. To show a saved product, actor, or visual style, pass productEntityIds, actorEntityIds, or visualStyleEntityId on each scene that should use that entity's reference images (create_entity and add_entity_reference first). A prompt alone does not attach those images. Much more credit-heavy than script_to_video: use at most 3 scenes unless the user explicitly asks for more. Prefer script_to_video for ~1 minute+ narrated / informational videos. If the user has not named a workflow, ask with pros/cons before calling this.prompt_to_video_clipGenerate one short AI video clip from a prompt inside an editable project.list_workflow_runsList workflow runs, most recent first.get_workflow_runFetch the current status and result of a single workflow run.cancel_workflow_runRequest cancellation of an in-progress workflow run.Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"a-y-ibrahim-after-effects-mcp": {
"command": "npx",
"args": [
"-y",
"after-effects-mcp"
]
}
}
}
{
"mcpServers": {
"videogen-mcp": {
"command": "npx",
"args": [
"-y",
"@videogen/mcp"
],
"env": {
"VIDEOGEN_API_KEY": "YOUR_VIDEOGEN_API_KEY_HERE",
"VIDEOGEN_BASE_URL": "YOUR_VIDEOGEN_BASE_URL_HERE",
"VIDEOGEN_OAUTH_ISSUER": "YOUR_VIDEOGEN_OAUTH_ISSUER_HERE",
"VIDEOGEN_OAUTH_SUPABASE_PROJECT_URL": "YOUR_VIDEOGEN_OAUTH_SUPABASE_PROJECT_URL_HERE",
"VIDEOGEN_OPENAI_APPS_CHALLENGE_TOKEN": "YOUR_VIDEOGEN_OPENAI_APPS_CHALLENGE_TOKEN_HERE"
}
}
}
}