After Effects MCP server — let Claude (and any MCP client) edit videos through afterAI: AI upscaling, cinematic color grade, animated subtitles, zoom effects and beat-synced phonk edits, all rendered in After Effects in the cloud.
Three tools with complete schemas and descriptions, but significant gaps in parameter constraints, output documentation, and error guidance. edit_video has 12 parameters with minimal validation hints; check_status and afterai_info lack output schema documentation. No enums for constrained fields (colorCorrectionStyle, subtitleStyle, spokenLanguage, subtitleLanguage). Error messages are helpful but lack recovery guidance for some failure modes. Naming is clear (verb_noun pattern), but parameter descriptions could be more prescriptive about formats and constraints.
Explains what afterAI does, the available edit options and how to get an API key and plan.
Look up the live status of a submitted edit by its job id (the id returned by edit_video). Returns progress percent, the current stage and, when done, the download link.
Submit a raw clip to afterAI's After Effects cloud pipeline. Returns a job id and a tracking URL. Spends one credit from your plan. The finished video is emailed to the account that owns the API key. Use check_status to follow progress. videoUrl must be a public, direct link to the raw clip.
No enum constraints for style parameters (colorCorrectionStyle, subtitleStyle, spokenLanguage, subtitleLanguage). LLMs will hallucinate invalid values like '5' or 'french' instead of valid style IDs.
Output schemas not documented. check_status returns data.headline, data.percent, data.sub, data.drive_link but these fields are not formally declared. afterai_info returns JSON but structure is undocumented. LLMs cannot plan downstream calls without knowing response shape.
Parameter descriptions lack format/constraint details. 'spokenLanguage' says 'e.g. en, bg' but does not specify ISO 639-1 format or valid range. 'watermarkText' has no length limit guidance. LLMs cannot validate inputs without explicit constraints.
edit_video error handling does not guide recovery for 402 (out of credits) or 403 (no plan). Messages include URLs but lack actionable next steps like 'retry after subscribing' or 'check plan status first'.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 58 | 2026-07-28+ | v2 |
check_status returns 'No status yet for job X' when job not found, but does not suggest alternatives (e.g., 'verify job ID' or 'list recent jobs'). Error lacks recovery guidance.