跳转到内容
返回
本页目录

使用文档

MCPAnimation 使用文档

MCPAnimation 的安装、连接、工具用法与限制

MCPAnimation 是一个自包含的 Unreal Editor 插件,通过 HTTP MCP 向 AI 客户端提供动画蓝图、状态机、Skeleton、AnimSequence、Montage、AnimNotify 与 BlendSpace 的发现、读取和编辑能力。插件支持 Unreal Engine 5.2 及以上版本,不依赖其他用户制作的插件。

连接方式

默认端点为 http://127.0.0.1:8760/mcp。若端口被占用,服务器会继续尝试后续端口;请以编辑器中显示的实际端点为准。服务器实现 initialize、tools/list、tools/call 和 ping。

工具(29 个)

发现与只读详情

工具用途
ListAnimBlueprints稳定分页列出 Animation Blueprint。
GetAnimBPOverview读取 Animation Blueprint、AnimGraph 和状态机概览。
GetStateMachineDetail有界读取状态、过渡与 Conduit 摘要。
ListSkeletons / GetSkeletonDetail发现 Skeleton,并读取骨骼、虚拟骨骼、兼容骨骼、Blend Profile 与 Slot Group。
ListAnimSequences / GetAnimSequenceDetail发现 AnimSequence,并读取时长、采样率、Notify、float curve 和压缩状态。
ListMontages / GetMontageDetail发现 Montage,并读取 Section、Slot、片段、Notify 与混合设置。
ListNotifyClasses发现原生及 Blueprint AnimNotify/AnimNotifyState 类。
ListBlendSpaces / GetBlendSpaceDetail发现 BlendSpace,并读取轴与采样点。

Animation Blueprint 与状态机编辑

工具用途
CreateAnimBlueprint为指定 Skeleton 创建 Animation Blueprint。
AddState / RemoveState添加或移除状态。
SetStateAnimation仅在能确认唯一直接驱动状态结果的 Sequence Player 时设置动画。
AddTransition在两个状态之间创建过渡。
SetTransitionRule设置受支持的过渡规则。
CompileAnimBlueprint编译并返回包括 AnimGraph、状态图和过渡图在内的诊断。

Montage、Notify 与 BlendSpace 编辑

工具用途
CreateMontage从 AnimSequence 创建 Montage。
AddMontageSection / SetMontageSection / RemoveMontageSection管理 Montage Section。
AddNotify / RemoveNotify在 AnimSequence 或 Montage 上添加、移除 Notify。
CreateBlendSpace在轴范围有效时创建 BlendSpace。
SetBlendSpaceSamples事务化替换最多 256 个已验证的采样点;失败时回滚。

资产生命周期

工具用途
SaveAsset显式保存已修改资产。
OpenAsset在 Unreal Editor 中打开资产。

路径、事务与保存

  • 先调用对应的 List* 工具取得规范资产路径。资产写操作仅允许有效的 /Game 项目内容路径。
  • 写操作在编辑器游戏线程执行,并在适用时使用 Undo 事务;成功后把资产标记为 Dirty。
  • 修改不会隐式保存到磁盘。确认结果后调用 SaveAsset;如需撤销,可使用 Unreal Editor 的 Undo。
  • 编辑器处于 PIE、保存或垃圾回收等忙碌状态时,写工具会拒绝执行并返回原因。

Schema、分页与有界输出

  • 输入使用严格 JSON Schema;未知字段会被拒绝,数组元素也会递归校验。
  • 列表工具使用 Offset 和 MaxResults,每页最多 256 项,并返回 TotalCount、Returned、HasMore 和可用时的 NextOffset。
  • 详情工具对骨骼、状态、Notify、曲线等集合设置 256 项上限,并返回真实总数与 *Truncated 标记。详情集合当前不支持翻页;超过上限时,请在 Unreal Editor 中检查完整数据,或等待后续分页能力。

与 UE 5.8 官方动画 MCP 的能力边界

UE 5.8 官方 AnimationAssistantToolset 的重点是 Level Sequence、Control Rig、Sequencer 通道和 Sequencer 曲线。MCPAnimation 不复制这些跨域工具;本插件聚焦 Animation Blueprint、Skeleton、AnimSequence、Montage、Notify 和 BlendSpace。需要 Sequencer 或 Control Rig 工作流时,应使用对应的 Level Sequence MCP 能力。

GetAnimSequenceDetail 只读返回 float curve 摘要、骨骼/曲线压缩设置、压缩有效性和近似大小。当前不提供曲线或压缩写入:这些操作可能重建动画数据模型、触发耗时重压缩,并且 UE 5.2–5.8 的编辑 API 存在演进;在无法同时保证事务回滚、版本兼容和有界执行前,自动写入的资产损坏风险高于收益。

限制

  • 本插件是 Editor-only,不提供运行时或网络游戏复制能力。
  • 详情接口提供结构化摘要,不导出所有曲线键值或逐骨骼动画轨道。
  • 复杂或歧义的状态结果图不会被猜测修改;请先调整为单一直接驱动结构或使用 Unreal Editor 手工编辑。
  • 工具不会执行 C++ 编译、Unreal 项目构建或插件打包。

如有问题或反馈,请发送邮件至 mzsh.me@icloud.com。我看到后会处理。