After Effects自动化服务器

通过MCP桥接面板控制Adobe After Effects,实现效果、预设、关键帧、标记和音频工具的自动化工作流程。

  • by TheLlamainator
  • JavaScript
  • 本地部署
  • 23 星标
  • 更新于
在 GitHub 查看 TheLlamainator/after-effects-mcp

使用说明

After Effects MCP服务器

使用AE内部运行的桥接面板通过MCP控制Adobe After Effects。 该项目针对实际的自动化工作流程进行了优化:效果、预设、关键帧、标记和音频感知工具。


亮点

  • 全合成和分层自动化。
  • 深度效果检查和属性编辑。
  • 高级效果图控件(时间+空间)。
  • 预设搜索/列表/应用工作流。
  • 标记和音频自动化,包括波形到标记的管道。
  • 已安装效果目录发现(list-available-effects).

特征矩阵

区域 能力
构图 创建、检查项目/构图,获取剪辑帧范围
图层 文本/形状/实体/调整创建、变换/属性更新、居中
动画 带图形控件的层关键帧、表达式、效果关键帧
效果 按名称/匹配名称应用,递归列出图层效果,编辑任何效果属性,删除效果
预设 应用 .ffx,列出/搜索预设库
标记 添加单个标记(comp/layer),批量添加标记
音频 设置通道级别,检查音频元数据,分析WAV波形,检测峰值

需求

  • Adobe后期效果
  • Node.js 18+
  • npm

在After Effects中,启用:

  • Edit -> Preferences -> Scripting & Expressions -> Allow Scripts to Write Files and Access Network

快速开始

  1. 克隆并安装:
git clone https://github.com/TheLlamainator/after-effects-mcp.git
cd after-effects-mcp
npm install
  1. 构建:
npm run build
  1. 安装网桥脚本:
npm run install-bridge
  1. 重新启动After Effects并打开:
  • Window -> mcp-bridge-auto.jsx
  • 在MCP使用期间保持此面板打开。

MCP客户端配置

使用绝对路径 build/index.js.

{
  "mcpServers": {
    "AfterEffectsMCP": {
      "command": "node",
      "args": ["<absolute-path-to-repo>/build/index.js"]
    }
  }
}

添加到VS代码

如果您使用支持MCP的VS Code扩展,请在该扩展的MCP服务器设置中添加此服务器。

用途:

  • 命令: node
  • args: ["<absolute-path-to-repo>/build/index.js"]

许多扩展接受的示例代码片段:

{
  "mcpServers": {
    "AfterEffectsMCP": {
      "command": "node",
      "args": ["C:\\Users\\<you>\\Documents\\Projects\\AEMCP\\build\\index.js"]
    }
  }
}

然后:

  1. 重新启动VS代码。
  2. 打开After Effects并保存 Window -> mcp-bridge-auto.jsx 打开。
  3. 调用一个简单的工具,如 get-help 或 run-script 和 getProjectInfo.

添加到克劳德桌面

编辑Claude Desktop配置并添加MCP服务器条目。

典型的Windows配置位置:

  • %APPDATA%\\Claude\\claude_desktop_config.json

例子:

{
  "mcpServers": {
    "AfterEffectsMCP": {
      "command": "C:\\Program Files\\nodejs\\node.exe",
      "args": [
        "C:\\Users\\<you>\\Documents\\Projects\\AEMCP\\build\\index.js"
      ]
    }
  }
}

保存后:

  1. 完全重新启动Claude Desktop。
  2. 打开AE桥接面板。
  3. 验证 tools/list 在日志中或通过调用已知工具。

添加到克劳德代码

在Claude Code MCP配置中配置相同的服务器命令/args。

使用此服务器定义:

{
  "AfterEffectsMCP": {
    "command": "node",
    "args": ["<absolute-path-to-repo>/build/index.js"]
  }
}

然后:

  1. 重新启动Claude Code或重新加载MCP服务器。
  2. 确保After Effects已打开 mcp-bridge-auto.jsx 面板正在运行。
  3. 测试用 get-results 在排队的命令之后。

架构图

flowchart LR
    A[AI Client<br/>VS Code / Claude Desktop / Claude Code] --> B[MCP Server<br/>build/index.js]
    B --> C[Bridge Files<br/>ae_command.json / ae_mcp_result.json]
    C --> D[After Effects Bridge Panel<br/>mcp-bridge-auto.jsx]
    D --> E[Adobe After Effects]
    E --> D
    D --> C
    C --> B
    B --> A

命令流图

sequenceDiagram
    participant Client as MCP Client
    participant Server as MCP Server
    participant Bridge as AE Bridge Panel
    participant AE as After Effects

    Client->>Server: tools/call (example: apply-effect)
    Server->>Server: write ae_command.json
    Server-->>Client: queued response (or waits)
    Bridge->>Bridge: poll command file
    Bridge->>AE: execute command
    AE-->>Bridge: result/error
    Bridge->>Bridge: write ae_mcp_result.json
    Client->>Server: get-results
    Server-->>Client: final result JSON

典型运行时流程

  1. 启动MCP客户端(它启动此服务器)。
  2. 保持AE桥接面板打开。
  3. 调用工具。
  4. 如果响应显示排队,请呼叫 get-results 1-3秒后。

注意:一些AE操作在刀具超时窗口后会稍微完成; get-results 通常包含最终状态。

工具目录

将军

  • run-script
  • get-results
  • get-help

组成和图层实用程序

  • create-composition
  • create-adjustment-layer
  • center-layers
  • get-layer-clip-frames

效果和预设

  • apply-effect
  • add-any-effect
  • mcp_aftereffects_applyEffect
  • apply-effect-template
  • list-layer-effects
  • list-available-effects
  • set-effect-property
  • set-effect-keyframe
  • remove-effect
  • apply-preset
  • list-presets
  • search-presets

标记和音频

  • add-marker
  • add-markers-bulk
  • set-audio-levels
  • get-audio-info
  • analyze-audio-waveform

诊断和帮助

  • test-animation
  • run-bridge-test
  • mcp_aftereffects_get_effects_help

音频到标记工作流

  1. get-audio-info 在目标层上。
  2. 复制 sourceFilePath.
  3. analyze-audio-waveform 可选 numPoints.
  4. 转换 peakTimes 到 markers[].
  5. add-markers-bulk.

项目布局

  • src/index.ts -MCP服务器和工具定义
  • src/scripts/mcp-bridge-auto.jsx -AE桥面板
  • install-bridge.js -桥梁安装工

发展

构建:

npm run build

安装桥架:

npm run install-bridge

直接运行服务器:

node build/index.js

故障排除

服务器未启动

  • 跑 npm run build.
  • 检查MCP日志中的启动异常(例如重复的工具注册)。

命令排队但未完成

  • 确保AE桥接面板打开。
  • 确认AE脚本/网络权限已启用。
  • 重试并呼叫 get-results 在短暂的延迟之后。

结果似乎过时

  • 重新打开桥接面板。
  • 发送新命令,然后调用 get-results.

程序文件安装失败

  • 预期没有提升权限。
  • 用户AppData脚本路径通常就足够了。

许可证

MIT。看 LICENSE.

灵感

https://github.com/Dakkshin/after-effects-mcp

我从他们那里获取了基础代码,但添加了很多