关于 CueFrame
CueFrame 是面向创作者和开发者的视频编辑与渲染托管服务,可通过 MCP、命令行或 REST API 操作可编辑项目并输出 MP4。其 Agent 工作流支持预览修改、估算费用,并在确认后提交渲染。
主要功能
- 01创建和编辑视频项目
- 02编排片段、字幕与动态图形
- 03预览修改并估算云端费用
- 04提交渲染并获取 MP4
- 05通过命令行与 TypeScript SDK 调用
适用场景
- 01将采访剪辑为竖屏短片
- 02为视频添加字幕和动态图形
- 03在现有项目中修改标题
- 04从应用程序自动化视频渲染
MCP 相关
托管 MCP 服务通过 Streamable HTTP 向 Agent 提供视频项目创建、编辑、预览和渲染能力。客户端可通过 OAuth 浏览器认证,渲染及云端处理使用账户额度。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://api.cueframe.ai/v1/mcpclaude mcp add --transport http ai-cueframe-cueframe https://api.cueframe.ai/v1/mcp{"mcpServers":{"ai-cueframe-cueframe":{"type":"http","url":"https://api.cueframe.ai/v1/mcp"}}}在 Cursor 中打开{"servers":{"ai-cueframe-cueframe":{"type":"http","url":"https://api.cueframe.ai/v1/mcp"}}}在 VS Code 中打开{"mcpServers":{"ai-cueframe-cueframe":{"type":"http","url":"https://api.cueframe.ai/v1/mcp"}}}{"mcpServers":{"ai-cueframe-cueframe":{"serverUrl":"https://api.cueframe.ai/v1/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
72| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| body | object | 是 | POST /projects/:id/compose 请求正文。 |
| body.seed | integer | 否 | 用于重放的确定性种子。 |
| body.scope | any | 否 | RequestScope 判别联合类型(参见 compose-api-contract.md)。仅编辑器可用的作用域(captions/overlay-track/broll/overlay-instance/segment)需要 editor-session 令牌;API 令牌在这些作用域上会收到 403。 |
| body.format | object | 否 | 可选的格式覆盖。Phase 2 会忽略此项——格式优先级为 project.compositionFormat → 默认 9:16 fhd 30fps。 |
| body.format.fps | any | 否 | |
| body.format.platform | string | 否 | |
| body.format.resolution | enum | 否 | hd | fhd | 4k |
| body.format.aspectRatio | enum | 是 | 16:9 | 9:16 | 1:1 | 4:5 |
| body.holdAt | array | 否 | 可选择启用的检查点门控。每个命名阶段都会在其边界暂停 compose(status → awaiting_input),供客户端通过 resume 审核。未设置或为空 ⇒ 完全自主运行。非空 ⇒ 本次运行采用单一主干。 |
| body.briefId | string | 否 | 从已保存的 Brief(create_brief)进行 Compose——意图优先入口:Brief 的每个字段都会得到遵循,否则会明确指出字段并拒绝请求(窗口根据节拍时刻固定;已播种的图形原样保留为锁定片段;强制执行排除项;将区域设置和字幕强调传递给 Director)。`suggestionId`、`fromComposition`、`briefId` 三者只能设置一个。 |
| body.critique | string | 否 | 结构化的 critique 块(参见 compose-api-contract.md 决策 #11)。总大小上限为 2KB;每个评判标准块上限为 500 个字符。 |
| body.budgetUsd | number | 否 | 每个任务的预算上限(USD)。路由层会根据组织的 composeMaxBudgetUsdPerJob 设置进行限幅。 |
| body.clientNonce | string | 否 | 用于区分有意进行的相同 critique 重试的不透明调用方令牌。未提供时,相同的 (project, sug, seed, critique) 元组会去重;提供时,重试会创建新的执行。 |
| body.parentJobId | string | 否 | 指向此运行所迭代的先前 compose 任务。生成的 compose 任务中会显示为 baselineComposeJobId。 |
| body.suggestionId | string | 否 | |
| body.maxCandidates | integer | 否 | 集成规模。目前固定为 1——多候选集成因等待容量上限而已禁用,因此任何 >1 的值都会被忽略,每次 compose 都只运行一个候选项。为向前兼容仍接受此参数;重新启用后会再次支持 [1, 5]。 |
| body.fromComposition | boolean | 否 | 将项目当前的 composition 复用为 compose 起点(critique 重试路径)。Director 会重新创作图形:如果当前 composition 由客户端创作且包含图形片段(overlay/component/card),请求会被拒绝(validation_error 并指出片段)——请改用 create_render 原样渲染。Director 自身的输出(critique 重试)不受此限制。 |
| body.qualityThreshold | number | 否 | 组合评分的接受阈值。服务器默认值由 contract 规定。 |
| projectId | string | 是 | projectId(路径)。 |
详细介绍
CueFrame — MCP、CLI 和视频 API
CueFrame 是一项托管服务,用于创作、编辑和渲染视频。通过 MCP 连接你的 Agent、使用 CLI 自动执行剪辑,或将 REST API 集成到你的应用程序中。每种方式都可处理包含片段、字幕和动态图形的可编辑项目,并将其渲染为 MP4。
| 你的工作流 | 从这里开始 |
|---|---|
| 让 Agent 制作或编辑视频 | MCP 和 Agent 插件 |
| 从终端或脚本运行视频工作流 | CLI |
| 将视频编辑功能集成到应用程序中 | API 和 TypeScript SDK |
首次渲染 · 连接指南 · 模板 · API 参考 · Agent 文档索引
优胜美地游隼模板中的一帧。观看视频并尝试相同的剪辑。
MCP 和 Agent 插件
对于 Claude Code、Codex、Cursor、VS Code 及其他受支持的本地 Agent,请在终端中运行以下命令,并确保使用 Node.js 24 或更高版本:
npx -y [email protected] install
安装程序会检测受支持的 Agent,并将托管的 CueFrame MCP 端点添加到其配置中。它会将技能安装到 ~/.agents/skills 和 ~/.claude/skills,默认保留本地修改过的技能。它可以更新检测到的多个客户端;使用 --dry-run 可先检查更改。
重启 Agent 会话,然后提出以下请求:
使用 CueFrame 的 get_account 工具检查我的连接,并显示可用额度。
你的客户端可能会提示你进行身份验证或打开浏览器。登录 CueFrame 并授权连接;交互式 OAuth 客户端无需 API 密钥。云端操作会消耗额度。开始付费工作前,请查看余额和预估费用;详见云端费率。
ChatGPT 和 Claude Desktop: 使用客户端的托管连接器设置,并填写 https://api.cueframe.ai/v1/mcp,然后进行身份验证。终端安装程序不会配置 ChatGPT。有关受支持的连接方式,请参阅连接指南和 CueFrame 连接技能。安装技能与设置托管连接器是两个独立步骤。
已经连接? 跳过安装,直接让 Agent 执行视频任务。如果 CueFrame 工具没有显示,请重启客户端并检查其 MCP 连接设置。
制作你的第一支视频
试试 Yosemite 首次渲染演练:渲染一个模板,修改一个词,然后在同一项目中再次渲染。
-
从 National Park Service 下载完整的原始素材,保存为
yosemite-peregrines.mp4。请使用原始素材,因为完成后的演示视频已经将标题嵌入其中。请遵循来源提供的下载和重复使用指南。 -
将源文件和以下指令交给已连接的 Agent:
使用 CueFrame,将 cueframe-ai/cueframe-templates 中的 yosemite-peregrines 模板与这段原始视频一起启动。加载 template.cueframe 及其预先准备好的主体蒙版。预览可编辑项目并估算云端费用。我批准渲染后,请返回 MP4 链接和项目 ID。
-
首次渲染后,请提出以下要求:
在同一项目中,将主体后方的标题 PHENOMENAL 替换为 EXTRAORDINARY。保留素材、语音字幕、音频、时间、位置和景深。预览更改后的标题,估算渲染费用,并在我批准后渲染。
该模板会从原始视频中选取 83.616–93.359 秒的片段。你应该能从一个可编辑项目中得到两个 MP4。上传素材和执行云端操作会消耗额度;两次渲染分别计费。
项目始终可编辑:桌面编辑器会将标题显示为独立图层,与素材和字幕并列。观看标题变更。
MCP 流程是怎样的?
flowchart LR
A[Your request + footage] --> B[Your agent + CueFrame skills]
B --> C[Hosted CueFrame MCP]
C --> D[Editable project + preview]
D --> E[Render job → MP4 link]
Agent 会检查可用工具、查看你的账户、准备媒体和项目、预览更改并提交渲染。耗时较长的操作会返回 ID;Agent 会等待操作完成并提供结果。你无需自己编写工具调用。详细快速入门指南介绍了各项调用。
制作下一支视频时,请描述想要的效果并提供输入:
将这段访谈制作成一段 20 秒的竖屏短片,并添加逐词定时字幕。预览最精彩的片段,并在渲染前显示预估费用。
为这些产品照片寻找图像轮播组件。创建视频前,请展示合适的选项及其所需输入。
只更改此项目中的最终标题。其余剪辑保持不变。
其他安装选项
选择一种设置方式。插件会同时安装技能和托管 MCP 配置。仅连接服务端会添加工具;技能则提供工作流指导。
Claude Code 和 Codex 插件
Claude Code:
claude plugin marketplace add cueframe-ai/cueframe-mcp
claude plugin install cueframe@cueframe
Codex:
codex plugin marketplace add cueframe-ai/cueframe-mcp
codex plugin add cueframe@cueframe
重新启动会话,并在提示时完成身份验证,然后让 Agent 调用 get_account。
Gemini CLI 和 Agent Skills 客户端
Gemini CLI:
gemini extensions install https://github.com/cueframe-ai/cueframe-mcp
在任何支持 Agent Skills 的客户端中安装技能:
npx skills add cueframe-ai/cueframe-mcp
仅安装技能并不会连接 MCP 服务。如果尚未连接,请通过客户端的 MCP 设置添加托管端点。
仅连接 MCP 服务、手动设置和无头客户端
托管端点为 https://api.cueframe.ai/v1/mcp,使用 Streamable HTTP。例如,在 Claude Code 中:
claude mcp add --transport http cueframe https://api.cueframe.ai/v1/mcp
对于 Cursor 和 VS Code,请使用连接指南中的一键链接。不同客户端的配置项各不相同。各客户端示例见 examples/。
交互式客户端可以使用浏览器登录。无头客户端需发送 Authorization: Bearer cf_live_…;身份验证和 stdio 桥接选项请参阅 llms-install.md。glama/ 适配层不会执行任何工具,不能用于制作视频。
技能会教会 Agent 如何执行视频任务。你描述任务,Agent 会选择相关指导。
| 任务 | 技能 |
|---|---|
| 规划并创作新视频 | cueframe-storyboard,composing-video |
| 剪辑播客或访谈 | clip-a-talking-head |
| 制作发布影片或社交媒体短片 | launch-video,make-a-social-reel |
| 制作品牌短片或更改现有品牌 | brand-reel,rebrand-a-video |
| 提取视觉风格 | extracting-brand-kits |
| 创建产品演示 | cueframe-brand-demo,cueframe-product-video |
| 自定义动态图形或制作 3D 镜头 | cueframe-component-authoring,cueframe-scene-shot |
| 添加音乐或适配更多格式 | add-music-bed,every-format-from-one-edit |
| 预览、改进并检查质量 | cueframe-compose-loop,video-craft-standards |
| 连接或通过命令行操作 | cueframe-connect,cueframe-cli |
Claude Code 的会话钩子和 Cursor 的规则有助于选择入口。其他宿主会通过各自的机制加载已安装的技能。局部编辑应保留无关的工作内容。
CLI
使用 CLI 执行明确的视频命令、运行 shell 脚本并获取结构化 JSON 输出。它会连接托管 API;不会运行本地渲染器。需要 Node.js 24 或更高版本。
npx -y [email protected] --help
npx -y [email protected] login
npx -y [email protected] api GET /v1/me --json
npx -y [email protected] describe --json
login 会打开浏览器进行身份验证。无头脚本可以提供 CUEFRAME_API_KEY。账户请求会检查你的连接和额度;describe 会列出命令参数和选项,但不会调用 API。
CLI 指南 · CLI 操作教程 · 模板 · npm 包
API 和 TypeScript SDK
使用 REST API 从应用程序创建项目、导入媒体、更改合成内容并跟踪渲染任务。请求会发送到 https://api.cueframe.ai,并使用你的账户中的 API 密钥。执行按量计费的操作前,请检查账户;云渲染和处理会消耗额度。
对于运行于 Node.js 24+ 的 TypeScript 或 JavaScript,请安装类型化客户端:
npm install @cueframe/sdk
import { account, createClient } from "@cueframe/sdk";
if (!process.env.CUEFRAME_API_KEY) throw new Error("Set CUEFRAME_API_KEY");
createClient({
baseUrl: "https://api.cueframe.ai",
apiKey: process.env.CUEFRAME_API_KEY,
});
const result = await account.getAccount();
console.log(result.plan, result.entitlements);
其他语言可以直接调用 REST,或根据带版本号的公开 OpenAPI 契约生成客户端。SDK 是托管服务的客户端,并非服务端实现。
API 操作教程 · API 参考 · SDK 指南 · 渲染示例 · npm 包
此仓库包含的内容
此仓库包含 Agent 插件、开发者工具包和注册表文件。托管的 MCP 服务由应用仓库单独维护。你连接到 CueFrame 的托管服务;克隆此仓库不会在本地运行该服务。
| 区域 | 可使用或贡献的内容 |
|---|---|
skills/、主机清单、hooks/、rules/ | Agent 工作流、插件安装和任务路由 |
packages/ | 公共 API 契约、TypeScript SDK、CLI 和打包的技能 |
examples/、llms-install.md | 客户端配置和端到端 SDK 渲染示例 |
server.json、glama/ | 托管服务注册和仅用于发现的适配层 |
tools/、scripts/ | 生成器、验证、打包和仓库检查 |
参与贡献
欢迎贡献文档、客户端示例、技能改进和工具包修复。可以从 适合新手的问题 开始,或阅读 CONTRIBUTING.md,了解配置、生成文件规则、测试和提交签署要求。
在根目录的 skills/ 中编辑技能;通过其文档说明的输入修改生成的 API 客户端。报告托管服务问题时,请在此仓库的问题跟踪器中提供复现步骤,并尽可能附上请求 ID。使用 SECURITY.md 私下报告漏洞。社区参与须遵守 Code of Conduct。
已发布的软件包
| 软件包 | 用途 | npm |
|---|---|---|
@cueframe/api-contract | 公共 OpenAPI 文档、经过审核的操作清单和内容寻址清单:生成的客户端唯一读取的输入。 | |
@cueframe/sdk | 基于 fetch 的类型化 TypeScript 客户端,包含 zod 请求架构,以及用于渲染和合成进度的 SSE 辅助工具。 | |
cueframe | CLI:登录、项目、媒体、合成、渲染、导出和 install,每条命令都支持 --json。 | |
@cueframe/skills | 将 skills/ 目录树作为 npm 软件包发布(通过 @cueframe/skills/dir 获取 SKILLS_DIR),供复制或嵌入技能的程序使用。 |
MCP 服务本身(@cueframe/mcp)是由应用仓库维护的私有软件包;此仓库提供其生成所依据的契约、客户端、插件、注册表条目(server.json)和发现适配层,而不提供服务本身。
契约的流转方式
private API ──sync──▶ api/openapi.json (+ scene-schema.json, scene-examples.json, contract-manifest.json)
│
├──▶ packages/api-contract/dist ──publish──▶ @cueframe/[email protected] ──▶ the MCP server's generators, third parties
└──▶ packages/sdk/src/generated (Orval: operations, models, zod)
私有 API 会将其 OpenAPI 投影发布到 api/;pnpm generate:api-consumers 会据此重新生成 SDK。这是契约的唯一副本:应用仓库中的 MCP 服务生成器和所有其他使用方都从 @cueframe/api-contract npm 软件包读取契约,其版本会随契约更新(若更改 api/*.json 却未提升版本,pnpm check:contract-version 就会失败),因此工具接口和 SDK 始终描述同一份契约。api/ 或任何 generated/ 目录中的内容都不能手动编辑:pnpm check:api-inputs 用于证明三个 api/*.json 输入文件来自同一次同步,而 pnpm check:api-consumer-drift 用于证明生成的目录树与这些输入逐字节一致。
技能的流转方式
根目录中的 skills/ 是唯一的数据源:插件宿主会从此仓库读取它,pnpm build 会将其复制到 packages/skills/dist(发布为 @cueframe/skills),再从那里复制到 CLI 的 dist/skills,供 cueframe install 使用。pnpm check:plugin 会验证每项技能和清单;每项技能旁的 agents/openai.yaml 和 assets/icon.svg 均为生成文件。
注册表文件
server.json:托管服务的 MCP 注册表条目(ai.cueframe/cueframe,仅远程服务)。pnpm check:server-json会根据随附的注册表架构验证该文件;发布工作流中的registry作业会发布它。glama.json:Glama 列表的维护者文件。glama/和Dockerfile:stdio 发现垫片,用于重放托管服务的工具列表快照和说明,供通过 stdio 检查的注册表使用。它不是服务(见下文)。
托管服务、桌面本地服务和发现垫片
托管服务、桌面集成和注册表垫片用途各不相同。
- 托管服务位于
https://api.cueframe.ai/v1/mcp,是产品本身。上方的每条安装命令都会连接到它;它通过 OAuth 或 API 密钥进行身份验证,并负责合成和渲染。其软件包@cueframe/mcp是私有的。 - CueFrame 桌面应用自带一个本地 MCP 服务,用于你当前打开的项目。它无需账户,并通过应用发布的连接文件进行连接;应用的 Agents 设置会显示确切的命令,https://docs.cueframe.ai 中也有说明。其捆绑的二进制文件名为
cueframe-mcp,位于应用包内。 - 此仓库的发现垫片(
glama/server.mjs,由Dockerfile构建)不是服务。它会通过 stdio 重放托管服务的工具列表快照和说明,使构建镜像的注册表无需账户也能列出这些工具;所有tools/call请求都会返回指向托管服务的信息。glama/refresh-snapshot.md说明了快照的来源。
仓库布局
skills/<name>/SKILL.md:技能。旁边的agents/openai.yaml和assets/icon.svg为生成文件(pnpm build:plugin)。.claude-plugin/、hooks/、.mcp.json:Claude Code 插件、会话路由器和服务。.codex-plugin/、.agents/plugins/、mcp.json:Codex 和 ChatGPT 插件及其市场。.cursor-plugin/、rules/:Cursor 插件和常驻规则。gemini-extension.json、skills.sh.json、plugin.json:Gemini CLI、skills.sh、可移植清单(agent-plugins.org)。api/、packages/、tools/、scripts/:接口约定、四个 npm 软件包及其生成器和检查脚本(插件相关脚本位于scripts/plugin/)。server.json、glama.json、glama/、Dockerfile:注册表文件。catalog/:从 cueframe-ai/cueframe 中的 MCP 目录导出的工具参考和错误代码(在该仓库中运行pnpm --filter @cueframe/mcp export:tool-reference -- <this repository>/catalog)。skills/cueframe-connect/references/tools.md根据它生成,技能检查也会读取它:技能只能提及其中列出的工具。examples/、llms-install.md:各客户端的设置说明和供 Agent 阅读的安装指南。
开发
pnpm install
pnpm check # input provenance, the contract version rule, the public-contract gate, server.json, the plugin, and tsc --noEmit in sdk and cli
pnpm build # stamps the plugin manifests and skill cards, then tsup in every package; the CLI packages the skills
pnpm test
需要 Node 24 或更高版本以及 pnpm(见 .nvmrc 和 packageManager)。CONTRIBUTING.md 说明哪些路径是生成文件、技能接口约定以及更改的传递方式;AGENTS.md 面向在此代码树中工作的 Agent,内容相同;llms-install.md 会逐步说明客户端的连接方式。
许可证
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。

