跳到主要内容
今晚同桌连上了一个视频编辑器的 MCP,然后我就卡在这儿了

今晚同桌连上了一个视频编辑器的 MCP,然后我就卡在这儿了

今天也没搞懂
今天也没搞懂

· 阅读约 4 分钟

说实话,今天差点又合上电脑。

晚上刷到一个开源项目叫 Palmier Pro,写的是 "AI-assisted video editing"——macOS 原生,Swift 写的,跑起来会暴露一个 MCP 服务器,可以接 Claude Code、Cursor 这些同桌。我还挺好奇的,毕竟视频剪辑这个领域,我一直觉得 AI 只能帮到写字幕那步,哪想到还有直接把 timeline 给你接口的。

然后就装了。装的过程倒挺顺,就是系统门槛有点狠:macOS 26(Tahoe),而且只跑 Apple Silicon。我这个月刚换的机器,侥幸过关。

编辑器本身是免费的,也不用登录。但生成式 AI 那部分要订阅——Seedance、Kling、Nano Banana Pro,名字一个比一个像从科幻片里走出来的,反正我也没订阅,先没管它。我真正想折腾的是那个 MCP server。

启动编辑器,在设置里看到那个地址:

http://127.0.0.1:19789/mcp

复制,粘到 Claude Code 的 MCP 配置里,重启会话——连上了。

那一刻我是真的「哎,通了!」了一下。

然后就没有然后了。

我盯着同桌给我列出来的工具列表,大概长这样:

mcp__palmier__get_timeline
mcp__palmier__get_timeline_clip
mcp__palmier__generate_media
mcp__palmier__insert_clip_at
mcp__palmier__trim_clip
mcp__palmier__export_project

工具不少。但每一个下面挂的那一整页参数,我是真的看不懂。

timeline_id: string
scene_id: string
clip_uuid: string
track_index: number
in_point: number  // seconds
out_point: number // seconds

clip_uuid 是什么?是剪辑软件内部给每段素材的编号吗?还是生成出来的媒体资源的 ID?in_point、out_point 是入点出点我大概猜得到,但单位和坐标系我完全不确定——是秒数?是帧号?从 0 开始还是从 1 开始?

我试着让同桌「帮我把第 3 段素材剪掉前 2 秒」。同桌回我:请提供 timeline_id 和 clip_uuid。

……

我根本不知道 timeline_id 从哪儿看。界面上也没写着。文档里也没说。我总不能瞎蒙吧,于是硬着头皮让同桌先调一下 get_timeline,看看返回什么。结果返回了一坨嵌套了好几层的 JSON,里面全是 id、sequence、duration 之类的字段,我盯了十分钟,勉强认出哪个是当前时间线的 ID,然后还是不知道 clip_uuid 对应界面上哪一段。

有一个工具我特别想看明白——generate_media。它能传给 Seedance 或者 Kling 去生成视频片段。我从没想过大模型生成的视频素材可以直接插进剪辑的时间线里。但这工具的调用参数里要填 prompt、model、aspect_ratio、duration,然后返回给我一个 media_asset_id。这个我大概懂,可「然后呢」?生成的素材是自动出现在素材库里,还是我需要再调 insert_clip_at 把它放进 timeline?这两个调用之间是怎么衔接的?同桌也说不清楚,它只能跟我说「这可能要把两个工具串起来」。

我又折腾了一会儿,试了一次看起来最保险的操作。结果:

Error -32602: Invalid params: unknown field 'start_time'

我把 in_point 写成了 start_time。它不认。

这种报错其实很新手,但就是这种报错让我最泄气——因为它说明我连它的参数命名规则都没摸到,而且这种规则不像代码语法,你猜不出来,只能一遍遍试错、翻文档、试到对它为止。

说真的,这跟写 prompt 完全是两码事。写 prompt 写岔了,至少我能看到完整的输入输出,知道自己哪句话说拧了;这种工具调用,参数填错就只给我一个冷冰冰的 error code。那种感觉就是……你说不了话,只能看工具的脸色。

现在的我,特别怀念三周前的自己——那会儿觉得能跑通 MCP handshake 就已经很强了。现在反而更难弄,因为连上了,才发现自己离真正能用的距离有多远。

这块我真的还很夹生。工具调用的机制、media asset 和 timeline 之间的关系、每个参数应该用什么单位,我全是半懂不懂的状态。代码这块我倒是把 MCP server 的源码翻了一遍——毕竟是开源的,GitHub 上 13.6k stars,GPLv3,加进 MCP 配置里的服务器还有我熟悉的代码细节。但视频剪辑领域的知识,光看代码也没用,你得懂剪辑软件本身的数据模型才能知道那些参数要怎么填。

可能今晚就到这吧。能连上,但不会用,这比连不上还让人难受。评论区蹲一个大佬,谁玩过视频剪辑类 MCP 的,那个 clip_uuid 到底是啥,我跟 timeline 里的素材是怎么对应上的,教教我。

明天继续。不丢人。