After Effects自动化控制服务

AEMCP是一个通过Model Context Protocol(MCP)和Adobe CEP平台连接AI助手与After Effects的桥梁,使AI能够通过自然语言控制After Effects进行自动化任务、创建工具和调试项目。

  • by hodor
  • JavaScript
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 hodor/ae-mcp

使用说明

AEMCP-特效MCP服务器

通过模型上下文协议(MCP)通过AI助手控制Adobe After Effects。

概述

AEMCP通过在MCP和Adobe的CEP(通用可扩展性平台)之间提供桥梁,使像Claude这样的AI助手能够控制After Effects。这使得人工智能能够通过自然对话创建组合、自动化任务、构建自定义工具和调试复杂项目。

建筑

AI Assistant (Claude) → MCP Server (Node.js) → WebSocket → CEP Panel (in AE) → ExtendScript

特性

AI可用的核心工具

  • run_script -在After Effects中执行任何ExtendScript代码
  • create_scriptui_tool -创建具有完整UI控件的浮动ScriptUI工具窗口
  • appendhtml_to_panel -将HTML/CSS/JS内容添加到AEMCP面板
  • clear_panel_html -从面板中清除HTML内容

AI能做什么

通过这些工具,AI助手可以:

  • 创建和修改构图、图层和效果
  • 使用UI构建自定义自动化工具
  • 调试复杂表达式和时间重映射
  • 分析项目结构和属性
  • 生成批处理脚本
  • 创建可重复使用的工具面板
  • 自动化重复性任务

安装

先决条件

  • 2020年或之后
  • 已安装Node.js 14+
  • 管理员权限(适用于Windows)

⚠️ 重要提示:安装前

  1. 关闭您的AI客户端 (克劳德桌面等)完全
  2. 关闭后效果 如果它正在运行
  3. 确保您具有管理员权限

Windows快速安装

  1. 右击 Install-Windows.bat
  2. 选择“以管理员身份运行”
  3. 按照提示操作

安装程序将:

  • 构建MCP服务器
  • 安装CEP扩展
  • 为After Effects启用调试模式
  • 显示配置路径

手动安装

1.安装依赖项

npm install

2.构建和安装

npm run build
npm run install-extension

这将把扩展安装到:

  • 窗户: C:\Program Files\Adobe\Adobe After Effects 2024\Support Files\CEP\extensions\aemcp
  • 雨衣: /Applications/Adobe After Effects 2024/CEP/extensions/aemcp

3.启用CEP调试(仅限第一次)

窗户: 双击 Enable-Debug.bat

雨衣:

defaults write com.adobe.CSXS.11 PlayerDebugMode 1

4.配置您的AI客户端

对于Claude Desktop:

添加到您的配置文件中:

窗户: %APPDATA%\Claude\claude_desktop_config.json 雨衣: ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "after-effects": {
      "command": "node",
      "args": ["/path/to/ae-mcp/server/build/index.js"]
    }
  }
}

将路径替换为实际安装路径。

对于其他MCP客户:

配置您的客户端以运行:

node /path/to/aemcp/server/build/index.js

5.开始使用

  1. 打开后效果
  2. 首选 Window > Extensions > AEMCP
  3. 面板应显示“已连接”状态
  4. 开始和你的AI助手聊天吧!

使用示例

基本脚本执行

问你的人工智能:“创建一个名为'Main'的1920x1080的新构图,长10秒”

AI将使用:

run_script({
  jsx: "app.project.items.addComp('Main', 1920, 1080, 1, 10, 30)"
})

创建自定义工具

问你的AI:“创建一个批量重命名选定层的工具”

AI将创建一个ScriptUI窗口,其中包含:

  • 命名模式的输入字段
  • 处理按钮
  • 进度反馈
  • 错误处理

调试复杂项目

问你的人工智能:“帮我调试为什么我的时间重映射层在76秒时显示黑色”

AI可以:

  • 分析图层特性
  • 检查时间重映射值
  • 检查表达式
  • 测试不同的解决方案
  • 提供逐步修复

发展

项目结构

ae-mcp/
├── server/           # MCP server (Node.js/TypeScript)
│   ├── src/         # Source files
│   └── build/       # Compiled JavaScript
├── extension/       # CEP panel
│   └── client/      # Panel UI (HTML/JS/CSS)
└── commands/        # (Future) Modular command structure

构建命令

# Build MCP server
npm run build

# Watch mode for development
npm run dev

# Install extension to After Effects
npm run install-extension

调试CEP面板

打开Chrome浏览器并导航到 http://localhost:8092

故障排除

After Effects中未显示面板

  • 确保 .debug 文件存在于扩展文件夹中
  • 检查是否启用了PlayerDebugMode
  • 重新启动After Effects

“CEP面板未连接”错误

  • 打开AEMCP面板(窗口>扩展>AEMCP)
  • 检查面板是否显示“已连接”状态
  • 检查活动日志是否有错误

脚本未执行

  • 检查AEMCP面板中的活动日志
  • 打开Chrome DevTools http://localhost:8092
  • 验证端口3000上的WebSocket连接

ExtendScript限制

  • 没有原生JSON支持(使用字符串构建)
  • 使用显式 return 价值观声明
  • 在try-catch中包装代码以进行错误处理

路线图

  • 优先级0:带选项卡的CEP面板UI大修
  • 优先级1:视觉反馈系统(render_frame、preview_layer)
  • 优先级2:工具持久性和编辑
  • 优先级3:错误上下文和恢复
  • 优先事项4:模板和预设

贡献

  1. 分叉存储库
  2. 创建要素分支
  3. 进行更改
  4. 带有后遗症的测试
  5. 提交拉取请求

安全说明

  • ExtendScript执行被包装在撤消组中
  • 所有脚本都运行错误处理
  • 面板需要本地WebSocket连接
  • 无外部网络访问

许可证

麻省理工学院

支持

对于问题、功能请求或疑问:

  • 在GitHub上打开一个问题
  • 审查 design-v2.md 了解架构细节