Cavalry动画软件连接服务

通过MCP服务器将Claude连接到Cavalry动画软件,实现通过自然语言创建图层、设置属性、动画关键帧渲染等功能。

  • by kacperchlebowicz
  • JavaScript
  • 本地部署
  • 31 星标
  • 更新于
在 GitHub 查看 kacperchlebowicz/Cavalry-mcp

使用说明

骑兵mcp

连接Claude的MCP服务器 骑兵 动画软件。创建层、设置属性、使用关键帧制作动画、渲染帧等——所有这些都是通过自然语言完成的。

运作原理

Claude <--MCP (stdio)--> cavalry-mcp <--HTTP POST--> Stallion <---> Cavalry

MCP服务器通过以下方式向Cavalry发送JavaScript 种马 bridge(在Cavalry内部运行的HTTP服务器 127.0.0.1:8080).

先决条件

  • 骑兵 (启用Stallion脚本时: 脚本>种马)
  • Node.js>=18

设置

npm install
npm run build

在Claude桌面中配置

添加到您的 claude_desktop_config.json:

{
  "mcpServers": {
    "cavalry": {
      "command": "node",
      "args": ["/absolute/path/to/cavalry-mcp/dist/index.js"]
    }
  }
}

可用工具

工具 说明
cavalry_ping 检查骑兵+种马是否可达
cavalry_run_script 在Cavalry中执行任意JavaScript
cavalry_create_layer 创建一个图层(textShape、basicShape、null等)
cavalry_set_attribute 在图层上设置属性
cavalry_get_attribute 读取属性值
cavalry_connect 在层之间连接属性
cavalry_keyframe 在特定帧处设置关键帧
cavalry_magic_easing 将缓和应用于关键帧属性
cavalry_get_scene_layers 列出场景中的所有层
cavalry_get_selected_layers 获取当前选定的图层
cavalry_select_layers 按ID选择图层
cavalry_delete_layers 按ID删除图层
cavalry_get_composition_info 获取分辨率、帧范围、FPS
cavalry_set_current_frame 移动播放头
cavalry_render_png 将当前帧渲染为PNG
cavalry_set_generator 在图层(椭圆、矩形等)上设置生成器
cavalry_duplicate_layer 复制图层
cavalry_get_bounding_box 获取图层的边界框
cavalry_save_scene 保存场景
cavalry_open_scene 打开.cv场景文件
cavalry_add_dynamic_attribute 向图层添加动态属性

示例对话

你: 创建一个弹出的文本,上面写着“Hello World”

克劳德将:

  1. 创建textShape图层
  2. 设置文本内容、字体大小和颜色
  3. 为反弹添加位置关键帧
  4. 应用BounceOut缓震

常见图层类型

basicShape, textShape, null, colorPlane, group, subMesh, linearGradient, duplicator, connectShape, noiseDeformer, stagger, trail, javaScriptUtility, javaScriptShape, imageAsset, videoAsset, soundAsset

通用属性路径

  • position.x, position.y --图层位置
  • rotation --旋转度
  • scale.x, scale.y --规模
  • opacity --图层不透明度(0–100)
  • fontSize --文本层字体大小
  • fill.color --填充颜色(十六进制字符串)
  • stroke.color, stroke.width --笔划属性

许可证

麻省理工学院