1. 静态图动起来这件事,卡在哪一步
你手里有一张 PNG 截图,产品经理在群里问“能不能看到动态效果”,你打开剪辑软件发现要手动打关键帧,打开代码编辑器发现要写渲染管线,最后只能回一句“下周给”。这个场景我遇到过太多次,问题不在于模型能力不够,而在于从“编辑器里的图”到“一段能播放的视频”之间,缺一条足够短的链路。
Seedance MCP 解决的就是这条链路。它是一个跑在 MCP 协议上的视频生成服务,支持文本转视频和图像转视频,你可以在 VS Code 里通过 Copilot Chat 的 Agent 模式直接调用它,把当前打开的设计稿、截图、原型图丢进去,几秒到几十秒后拿到一段 mp4。适合谁用:做前端/客户端的产品原型演示、需要快速出内部工具演示视频的开发者、以及运营技术类短视频账号但不想学剪辑的人。
这篇不聊模型原理,只做一件事:在 VS Code 里把 Seedance MCP 配通,用 TaoToken 的统一 Key 和 API 通道接入,跑通“一张静态图 → 一段动态视频”的最小闭环。全程在编辑器内完成,不需要切换浏览器,不需要额外装 CLI。
需要提前说明的是,MCP 的配置本质是“告诉编辑器去哪里找服务、用什么身份认证”。Seedance MCP 的官方服务地址是https://seedance.mcp.acedata.cloud/mcp,认证走 Bearer Token。而 TaoToken 在这里的角色是统一 Key 和 API 通道:你不需要为每个 MCP 单独申请一套密钥,用同一个 Key 就能接入,后面换模型、加服务也不用重新配一遍。官网入口在 https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= ,API 基址是 https://taotoken.net/api ,两个地址记一下,后面配置会用到。
2. 前置准备:TaoToken Key 与 VS Code 环境
2.1 拿到统一 API Key
先登录 TaoToken 控制台,在 API Keys 页面创建一个新 Key。这个 Key 的格式通常是sk-开头的一串字符,创建后只显示一次,复制下来先存到临时文本里。如果你已经有 Key,直接复用即可,TaoToken 的设计是同一个 Key 可以走多个下游服务,不需要为 Seedance 单独开一个。
控制台地址:https://taotoken.net/console?utm_source=taotoken_aicg_blog_end&utm_content=console&utm_campaign=rewrite
创建 Key 的入口在:https://taotoken.net/api-keys?utm_source=taotoken_aicg_blog_end&utm_content=api-keys&utm_campaign=rewrite
注意:Key 不要直接写进
mcp.json的明文字段里,尤其是项目要提交到 Git 的情况。下面会讲两种注入方式,推荐用 VS Code 的${input:}变量,让编辑器在运行时弹窗询问,密钥存在本地 SecretStorage 里。
2.2 VS Code 侧需要的东西
VS Code 版本建议 1.99 以上,因为 MCP 的inputs变量支持和 Agent 模式的稳定性在近几个版本才完善。需要装两个东西:
一是 GitHub Copilot 扩展(含 Copilot Chat),MCP 服务是通过 Chat 的 Agent 模式调用的,没有 Chat 面板就没法触发。二是 Seedance MCP 扩展,在扩展市场搜索acedatacloud.mcp-seedance,或者直接搜 “Seedance MCP”,安装后按提示 Reload Window。
如果你不想装扩展、想纯手动配置,也可以跳过第二步,直接走 2.3 的mcp.json方案。两种方式不冲突,扩展装了就多一个图形化入口,手动配置则更透明、更适合团队共享。
2.3 理解 mcp.json 的两种位置
VS Code 里 MCP 配置有两个作用域:
| 位置 | 作用范围 | 适用场景 |
|---|---|---|
.vscode/mcp.json | 当前项目 | 团队共享、跟着仓库走 |
| 用户级 settings | 全局所有项目 | 个人常用、不想每个项目配一遍 |
这篇以项目级.vscode/mcp.json为主,因为团队协作时这份文件可以提交到仓库,新人拉下来改一下 Key 就能用。用户级配置的字段结构完全一样,只是放在 settings.json 的mcp.servers下。
3. 可复制的 mcp.json 配置
3.1 基础骨架
在项目根目录创建.vscode/mcp.json,写入下面这段:
{ "servers": { "seedance": { "type": "http", "url": "https://seedance.mcp.acedata.cloud/mcp", "headers": { "Authorization": "Bearer ${input:taotoken-api-key}" } } }, "inputs": [ { "id": "taotoken-api-key", "type": "promptString", "description": "TaoToken API Key (sk- 开头)", "password": true } ] }逐字段说明一下。servers.seedance是服务名,你可以改成别的,但后面在 Chat 里提及时最好用这个名字。type: "http"表示走 Streamable HTTP 传输,这是 MCP 目前主流的远程调用方式,比早期的 SSE 更稳。url是 Seedance MCP 的服务端点,固定值。headers.Authorization里的${input:taotoken-api-key}是一个变量引用,它指向下面inputs数组里id相同的项。
inputs里定义了taotoken-api-key这个输入项,type: "promptString"表示运行时弹窗让用户输入,password: true会把输入内容遮蔽显示。这样 Key 不会以明文形式出现在配置文件里,也不会被 Git 记录。
3.2 用环境变量注入(CI/脚本场景)
如果你在自动化脚本或 CI 里跑,弹窗输入不现实,可以改成读环境变量:
{ "servers": { "seedance": { "type": "http", "url": "https://seedance.mcp.acedata.cloud/mcp", "headers": { "Authorization": "Bearer ${env:TAOTOKEN_API_KEY}" } } } }然后在 shell 里export TAOTOKEN_API_KEY=sk-xxxx,或者在.env文件里定义后由启动脚本加载。VS Code 的${env:}变量会读取当前进程的环境变量,注意改完环境变量要重启 VS Code 才能生效。
3.3 如果你走扩展的图形化入口
装了 Seedance MCP 扩展的话,可以按Cmd+Shift+P(Windows 是Ctrl+Shift+P)运行Seedance MCP: Set Ace Data Cloud API Key,粘贴 Key 回车。这个 Key 会存进 VS Code 的 SecretStorage,和系统钥匙串打通。这种方式下mcp.json里的headers可以留空,扩展会自动注入。
但要注意:扩展存 Key 和mcp.json手动配 Key 是两套机制,如果你两个都配了,以mcp.json里的为准。团队协作建议统一走mcp.json,避免“我这边能跑你那边不行”的扯皮。
4. 验证请求:从一张图到一段视频
4.1 确认 MCP 服务已加载
配置写完后,VS Code 会在.vscode/mcp.json文件顶部显示一个 “Start” 按钮(或者自动启动)。点击后,打开 Copilot Chat,把模式切到Agent。在 Chat 输入框旁边应该能看到一个工具图标,点开能看到seedance这个 server 以及它暴露的工具,通常包括seedance_generate_video。
如果没看到,先检查三件事:Copilot Chat 是否登录、VS Code 版本是否够、mcp.json是否有 JSON 语法错误(VS Code 会在编辑器里标红)。
4.2 第一次调用:图像转视频
把你要转的静态图拖进 Chat 输入框,或者用#file:引用当前打开的文件,然后输入类似这样的指令:
Use seedance to generate a video from this image. The dashboard charts should appear from left to right with fade-in and value growth animations. Duration 5 seconds.第一次调用时,VS Code 会弹出一个输入框,问你TaoToken API Key (sk- 开头),把第 2 步复制的 Key 粘进去回车。这个值会被缓存,后续调用不再重复询问,除非你清除了 SecretStorage。
调用发出后,Chat 里会显示工具调用状态,通常几十秒内返回一个视频文件链接或本地保存路径。如果返回的是 URL,直接在 VS Code 里点开预览;如果是本地文件,用系统播放器打开确认效果。
4.3 纯文本转视频也走同一条路
Seedance 同样支持纯文本描述生成视频,不需要输入图。比如你想给技术短视频做个片头:
Use seedance to generate a 3-second video intro: a glowing code symbol </> transitions from blurry to clear, with particle effects in the background, tech blue tone.这条链路和图像转视频共用同一个 MCP 工具,只是入参不同。实测下来,文本描述的细节越具体(颜色、时长、运动方向、节奏),出片越接近预期。模糊的“做个好看的动画”基本等于抽卡。
4.4 成功结果长什么样
一次成功的调用,Chat 里会返回类似这样的结构:工具名seedance_generate_video、状态completed、输出里带一个视频地址或文件路径。视频格式通常是 mp4,分辨率根据你的入参和模型默认值决定。如果返回里带task_id之类的字段,说明是异步任务,需要再发一次查询请求拿结果,具体看工具返回的提示。
判断是否真正跑通的标准很简单:你能在本地打开这段视频,并且画面内容和你的图/描述对得上。对不上就往下看排障部分。
5. 本篇常见错排查
5.1 401 Unauthorized
最常见的原因是 Key 没传对。检查顺序:mcp.json里Authorization的值是不是Bearer开头(注意 Bearer 后面有一个空格);${input:taotoken-api-key}的 id 和inputs里的 id 是否完全一致,大小写敏感;Key 本身是否过期或被删除,去 TaoToken 控制台确认一下。
如果用的是${env:TAOTOKEN_API_KEY},确认环境变量在当前 VS Code 进程里可见。一个快速验证方法是在 VS Code 内置终端里echo $TAOTOKEN_API_KEY,如果为空说明没加载上,重启 VS Code 或检查 shell 配置。
5.2 MCP server 显示红色/无法启动
先看.vscode/mcp.json有没有语法错误,JSON 不允许尾逗号,字符串必须双引号。其次确认url拼写正确,https://seedance.mcp.acedata.cloud/mcp结尾的/mcp不能少。如果公司网络有出口限制,确认这个域名在允许列表里。
还有一种情况是 VS Code 版本太旧,不支持inputs字段,会静默忽略导致变量解析失败。升级到最新稳定版即可。
5.3 调用返回了但视频是空的/黑屏
这通常不是配置问题,而是 prompt 或输入图的问题。Seedance 对输入图的尺寸和内容有一定要求,太小的图(比如 100x100)或纯色图可能生成不出有效动画。文本描述里如果缺少运动信息(“从左到右”“淡入”“数值增长”),模型可能生成一段静止画面。
建议第一次测试用一张 1280x720 左右的截图,prompt 里明确写出“duration 5 seconds”和至少一个运动动词。跑通后再逐步加复杂度。
5.4 想换 Key 怎么办
如果走的是${input:}方式,VS Code 会缓存输入值。要换 Key,按Cmd+Shift+P运行Seedance MCP: Clear Ace Data Cloud API Key(装了扩展的话),或者手动清除 VS Code SecretStorage。走${env:}的话,改环境变量后重启 VS Code。
5.5 团队共享时 Key 泄露风险
.vscode/mcp.json如果提交到仓库,里面绝对不能有明文 Key。用${input:}或${env:}都是安全的,因为文件里只有变量引用。但要注意.env文件本身要加进.gitignore,别把环境变量文件也提交了。
6. 把这条链路用起来
配置跑通之后,日常使用其实就三步:打开项目、在 Chat 里引用图或写描述、等视频出来。产品原型评审前,把 Figma 导出的 PNG 丢进去生成一段交互动画预览,比口头描述“这里会淡入”直观得多。内部工具演示没时间录屏,用文本描述生成一段大屏刷新的动画,直接嵌进周会 PPT。技术短视频账号需要片头,每期换个主题词,几分钟出一个版本。
如果你后面要长期在编辑器里做这类生成任务,或者想把它接进 Agent 工作流批量处理,可以了解一下 Coding Plan,它更适合高频、持续的编码和生成场景:https://taotoken.net/coding-plan?utm_source=taotoken_aicg_blog_end&utm_content=coding-plan&utm_campaign=rewrite
想先在网页里试试模型对话效果、确认 Seedance 的输出风格是否符合预期,可以从模型对话入口进:https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_content=model-chat&utm_campaign=rewrite
接入过程中如果遇到 MCP 协议层面的报错、或者想确认最新的端点字段,接入文档在这里:https://taotoken.net/doc?utm_source=taotoken_aicg_blog_end&utm_content=doc&utm_campaign=rewrite
最后留一个我踩过的坑:第一次配的时候我把type写成了"sse",因为早期教程都是这么写的,结果 VS Code 一直连不上。现在统一用"http",如果你照抄了旧文章里的配置,记得改过来。