DeckFlow MCP 旨在同时提供产品级工作流与单用途的文件处理工具。其中最核心的设计决策是:最终的 MCP 服务器是采用大量职责单一的细粒度工具,还是采用较少、带有操作枚举的通用工具。
对于智能体接入,推荐的方案是:为 Create、Revamp 和 Translate 设计一组小巧的工作流工具,另外为文件转换、内容提取、合并/拆分和优化分别设计分组后的通用工具。这能让 MCP API 界面清晰易读,同时覆盖全部 23 种公开网页端工具。
通用任务模型
大多数 DeckFlow 操作都应首先返回一个任务对象,然后由智能体轮询状态并获取处理结果。
| 规划工具名称 | 功能描述 |
|---|
get_task | 获取任务的执行状态、进度、告警信息、错误明细和结果元数据。 |
list_tasks | 列出当前已验证身份的用户或工作区的历史任务。 |
cancel_task | 取消排队中或运行中的任务(在工具支持时)。 |
get_task_result | 获取已完成任务的输出文件、预览图、临时下载链接和元数据。 |
待确定的通用参数
| 参数 | 用途 | 待确认的决策 |
|---|
task_id | 唯一标识一个异步任务。 | ID 的格式规范、可见性范围和过期时间。 |
status | 表示任务生命周期状态。 | 包含 queued、running、succeeded、failed、cancelled、expired 的枚举值。 |
progress | 指示完成进度。 | 包含百分比数值、阶段步骤名称、预估剩余时间中的一种或全部。 |
result_urls | 提供生成文件临时下载链接。 | 签名 URL 的有效期以及文件是否持久化存储在工作区中。 |
warnings | 报告非致命问题。 | 包含缺失字体、布局调整、不支持的媒体等的警告代码。 |
error | 报告失败原因。 | 错误 Schema、是否可重试、面向用户的消息以及开发者错误码。 |
产品工作流工具
Create(生成)
| 规划工具名称 | 功能描述 |
|---|
create_deck | 从上传的文件、URL、粘贴的文本、Markdown 或主题提示词生成演示文稿。 |
预期输入参数:
| 参数 | 描述 | 状态 |
|---|
source_type | 输入类型,如 file、url、text、markdown 或 topic。 | 需要枚举。 |
source | 文件引用、URL 或文本负载。 | 需要文件引用模型。 |
prompt | 用户对结构、受众、语气和侧重点的说明。 | 需要最大长度限制。 |
output_format | PPTX、PDF、HTML 或图片。 | 需要枚举和默认值。 |
brand_profile_id | 可选,要应用的品牌 DNA 配置。 | 需要品牌 DNA 模型。 |
theme_or_template_id | 可选,模板或设计风格。 | 需要模板目录。 |
slide_count | 期望的幻灯片数量或范围。 | 需要限制和默认值。 |
aspect_ratio | 演示文稿长宽比,如 16:9 或 4:3。 | 需要枚举。 |
language | 输出语言。 | 需要语言代码标准。 |
preserve_complex_elements | 是否保留公式、图表、图像和嵌套结构。 | 需要默认行为。 |
Revamp(焕新)
| 规划工具名称 | 功能描述 |
|---|
revamp_deck | 在保留原始文本、数据和结构的前提下,重新设计现有演示文稿。 |
预期输入参数:
| 参数 | 描述 | 状态 |
|---|
file | PPTX、Keynote 或 PDF 源演示文稿。 | 需要文件引用模型。 |
style_mode | template 或 brand_dna。 | 需要枚举。 |
template_id | 要应用的专业模板。 | 需要模板目录。 |
brand_profile_id | 要应用的品牌 DNA 配置。 | 需要品牌 DNA 模型。 |
preserve_content | 原始内容是否必须保持不变。 | 应该默认为 true。 |
output_format | 结果格式。 | 需要枚举;可能为同格式或 PPTX/PDF。 |
batch_files | 可选,用于批量焕新的多个演示文稿。 | 需要最大数量限制和结果打包机制。 |
Translate(翻译)
| 规划工具名称 | 功能描述 |
|---|
translate_deck | 在保留排版的前提下翻译演示文稿和办公文档,返回相同或选择的输出格式。 |
预期输入参数:
| 参数 | 描述 | 状态 |
|---|
file | PPTX、Keynote、PDF、Word 或 Excel 源文件。 | 需要文件引用模型。 |
target_language | 目标语言。 | 需要语言代码列表。 |
source_language | 可选,源语言。 | 需要自动检测行为。 |
glossary_id | 要应用的现有术语表。 | 需要术语表模型。 |
glossary_terms | 单次任务的内联术语表词条。 | 需要 Schema 和限制。 |
preserve_layout | 保留字体、大小、颜色、动画、图表、SmartArt、表格以及图片文本。 | 需要默认行为和失败处理行为。 |
output_format | 与输入相同或指定格式. | 需要枚举和默认值。 |
formality | 语气/正式度控制(如果支持)。 | 需要枚举或移除。 |
文件转换器工具
网页端工具页面列出了 13 个转换工具。MCP 可以将它们公开为一个分组后的工具:
| 规划工具名称 | 功能描述 |
|---|
convert_file | 将一个文件或文本类源从支持的输入格式转换为目标格式。 |
支持的操作候选:
| 操作名称 | 输入 | 输出 |
|---|
html_to_png | HTML/HTM 文件或粘贴的 HTML | PNG |
html_to_pptx | HTML/HTM 文件或粘贴的 HTML | PPTX |
image_to_webp | 图片 | WebP |
keynote_to_html | Keynote | HTML |
keynote_to_image | Keynote | 图片 |
keynote_to_pdf | Keynote | PDF |
markdown_to_image | Markdown 文件或粘贴的 Markdown | 图片 |
pdf_to_image | PDF | 图片 |
ppt_to_pptx | PPT/PPTX | PPTX |
powerpoint_to_pdf | PPT/PPTX | PDF |
powerpoint_to_image | PPT/PPTX | 图片 |
powerpoint_to_video | PPT/PPTX | MP4 |
word_to_pdf | DOC/DOCX | PDF |
待确定的参数:
| 参数 | 用途 |
|---|
operation | 转换器操作枚举。 |
file | 上传的文件引用。 |
content | 未使用文件时粘贴的 HTML 或 Markdown。 |
output_format | 当操作支持多种输出时,显式指定输出类型。 |
page_range | 可选的页码或幻灯片范围。 |
render_width / render_height | 相关时的 HTML/图片/视频渲染大小。 |
scale | 图片渲染 density 或像素比。 |
include_animations | PPT 转视频时是否保留基本动画。 |
zip_outputs | 多文件图片输出是否应打包为 ZIP。 |
提取器工具
| 规划工具名称 | 功能描述 |
|---|
extract_file_content | 从上传的文件中提取 OCR 文本、字体或 PPTX 文本形状。 |
支持的操作候选:
| 操作名称 | 输入 | 输出 |
|---|
image_ocr | 图片 | 文本或结构化 OCR 结果 |
pptx_font_finder | PPTX | 字体列表 |
pptx_text_extractor | PPTX | 结构化文本形状 |
待确定的参数:
| 参数 | 用途 |
|---|
operation | 提取器操作枚举。 |
file | 上传的文件引用。 |
languages | OCR 语言提示。 |
page_range | 待检查的幻灯片或页码。 |
include_coordinates | 为 OCR 或 PPTX 文本形状返回文本框坐标。 |
include_styles | 在可用时返回字体族、大小、颜色和样式元数据。 |
output_format | JSON、CSV、TXT,或 ZIP(如果支持)。 |
合并与拆分器工具
| 规划工具名称 | 功能描述 |
|---|
compose_files | 合并、拆分或打包演示文稿资源。 |
支持的操作候选:
| 操作名称 | 输入 | 输出 |
|---|
pptx_merge | 多个 PPTX 文件 | 单个 PPTX |
pptx_split | 单个 PPTX | PPTX 文件的 ZIP 包 |
html_player_pack | 多个 HTML 文件 | 可播放的 HTML 播放包 |
待确定的参数:
| 参数 | 用途 |
|---|
operation | 合并/拆分/打包操作枚举。 |
files | 有序的文件引用列表。 |
slide_ranges | 包含或拆分所依据的范围。 |
preserve_styles | 是否保留源布局、字体和主题。 |
canvas_width / canvas_height | HTML 播放器的画布大小。 |
title | 可选的 HTML 播放器标题。 |
description | 可选的 HTML 播放器描述。 |
output_name | 期望的输出文件名。 |
优化器工具
| 规划工具名称 | 功能描述 |
|---|
optimize_file | 在交付前压缩、调整大小或在文件中嵌入资源。 |
支持的操作候选:
| 操作名称 | 输入 | 输出 |
|---|
file_compress | ZIP, PPTX, Keynote, DOCX, XLSX | 压缩后的文件 |
image_resize | 图片 | 调整大小后的图片 |
pptx_embed_fonts | PPTX 以及字体选择/文件 | PPTX |
video_compress | 视频 | 压缩后的视频 |
待确定的参数:
| 参数 | 用途 |
|---|
operation | 优化器操作枚举。 |
file | 上传的文件引用。 |
quality | 压缩质量预设或数值。 |
target_size_mb | 期望的最大输出大小。 |
width / height | 图片调整大小的尺寸。 |
lock_aspect_ratio | 保持原始图片的长宽比。 |
font_files | 要嵌入到 PPTX 中的字体文件。 |
font_names | 要嵌入或子集化的现有字体名称。 |
video_codec | 编解码器选择(如果支持)。 |
video_bitrate | 目标码率(如果支持)。 |
账户与能力工具
| 规划工具名称 | 功能描述 |
|---|
get_current_user | 返回已验证身份的用户、工作区、套餐和使用情况详情。 |
get_deckflow_capabilities | 返回支持的工具、格式、限制、语言、模板和功能标志。 |
list_brand_profiles | 列出可用的品牌 DNA 配置。 |
list_templates | 列出可用于 Create 或 Revamp 的模板。 |
list_glossaries | 列出翻译术语表。 |
list_supported_languages | 列出支持的语言代码和名称。 |
这些工具可以减少硬编码文档,并帮助智能体在运行时选择有效的参数。
网页端文件大小限制
| 工作流 / 工具 | 网页端限制 |
|---|
| 翻译产品工作流 | 最大 500 MB |
| HTML 工具 | 50 MB |
| Markdown 转图片 | 10 MB |
| 图片 OCR | 50 MB |
| 图片转 WebP / 图片调整大小 | 100 MB |
| 大多数演示文稿/文档/视频工具 | 300 MB |
最终的 MCP 文档必须阐明,MCP 是采用与浏览器工具相同的限制,还是采用 API 限制,抑或是套餐专有的限制。