Skip to main content
所有工具返回 MCP 内容块的 content 数组。文本工具返回 { type: "text", text: "<json-string>" }。图像工具返回 { type: "image", data: "<base64>", mimeType: "image/png" }。失败时设置 isError: true 并在文本块中包含错误消息。

文件工具

list-files

列出当前用户的 Flowstep 文件。 输入 输出 — 文件对象的 JSON 数组。

get-file

根据 ID 获取单个文件。文件内容被故意省略 — 使用 get-screenget-screen-image 检查屏幕,使用 get-design-guidelines 检索附加的设计准则。 输入 输出 — JSON 文件对象。

create-file

创建新 Flowstep 文件。 输入 输出 — JSON 文件对象,包含新文件的 id
使用返回的 id 作为后续工具调用中的 fileId

update-file

重命名文件。 输入 输出 — 与 get-file 形状相同的已更新文件对象。

delete-file

永久删除文件。你传递的 name 在删除前会针对文件的实际名称进行验证 — 如果不匹配,删除会中止。这可防止意外删除错误的文件。 输入 输出"File deleted successfully"
这是不可逆的。文件中的所有屏幕都被删除。

屏幕工具

list-screens

列出文件的所有生成屏幕。使用返回的 screenId 值在 get-screenget-screen-imageupload-attachment 中引用屏幕,以及在 edit-designregenerate-designexpand-design 中作为 targets 输入 输出 — 屏幕摘要的 JSON 数组。
name 是用户分配的屏幕名称,如果未命名则为 null

get-screen

获取屏幕的 JSX 代码,允许你在 Flowstep 外编辑或使用代码。改为使用 get-screen-image 获取视觉预览。 输入 输出 — 屏幕作为代码(JSX)。注意第一行注释,在使用 add-screen 工具时需要。

add-screen

从原始 JSX 字符串向 Flowstep 文件添加新屏幕。 输入 注意 — 类似于下面的注释必须作为 JSX 的第一行出现,因为它用于正确添加屏幕。screenTypenamescreenId 都是可选的 — screenId 如果存在(例如在传递从 get-screen 输出复制的 JSX 时)会被使用,但不是强制性的。屏幕名称取自注释的 name 字段(显示为”Copy of <name>”),如果不存在则为”Untitled”。 <!-- screenType: "iphone-x-vertical" width: "375" height: "812" name: "Change to a light theme" colorTheme: "blue" --> 输出 — 新添加屏幕的 Id。

get-screen-image

将屏幕渲染为 PNG 并将其作为内联图像返回。需要支持图像内容块的客户端。 输入 输出 — MCP 图像内容块(image/png)。

AI 工具

regenerate-designexpand-designedit-design 需要仅存在于使用 designs 数组原始生成的屏幕上的设计上下文。没有设计上下文生成的屏幕将返回错误。解决方案:使用 upload-attachment 将屏幕渲染为图像,然后使用图像在 attachments 中和描述所需更改的消息调用 create-new-design

create-new-design

从文本提示词生成一个或多个屏幕设计。省略 fileId 自动创建新文件。阻塞直到生成完成或超时(180 秒)。 输入 输出{ fileId, screenIds }。将每个 screenId 传递给 get-screen-image 以查看结果。

regenerate-design

从头开始重做现有屏幕或带有样式变化。需要在 targets 中至少一个 screenId。阻塞直到生成完成或超时(180 秒)。 输入 输出{ fileId, screenIds }。将每个 screenId 传递给 get-screen-image 以查看结果。

expand-design

向现有设计添加后续屏幕。需要在 targets 中至少一个 screenId 和强制性的 operationVariant。阻塞直到生成完成或超时(180 秒)。 输入 输出{ fileId, screenIds }。将每个 screenId 传递给 get-screen-image 以查看结果。

edit-design

通过提示词修改现有屏幕。需要在 targets 中至少一个 screenId。阻塞直到生成完成或超时(180 秒)。 输入 输出{ fileId, screenIds }。将每个 screenId 传递给 get-screen-image 以查看结果。

upload-attachment

上传文件以在 create-new-designedit-design 中作为附件使用。返回 { id, path, type, mimeType } — 直接将此对象传递到 attachments 数组中。 两种模式: 模式 1 —— 按 ID 的屏幕 传递 screenIdfileId。服务器从数据库获取屏幕状态并将其渲染为图像。 模式 2 —— 外部文件 直接传递文件内容。二进制文件必须进行 base64 编码;文本文件(包括源代码)作为纯 UTF-8 字符串传递。 最大文件大小:3 MB。对于大图像,优先使用 image/jpeg 而不是 image/png 输出
type 对于图像/PDF 上传为 "image",对于文本/代码文件为 "document"

聊天工具

get-chat-history

获取文件的聊天消息历史。 输入 输出 — JSON 对象,包含 messages 数组。每个消息都有 type"request""response")、author"human""ai")和 content_type"text""summary""followup")。

设计工具

get-design-guidelines

获取为文件存储的设计准则。 输入 输出
如果未设置准则,guidelinesnull

update-design-guidelines

为文件设置或替换设计准则。准则作为 Google 的 design.md 格式的纯文本字符串传递——不要传递对象或 JSON。 服务器执行软验证,可能在响应中返回 Warnings: 部分,列出被接受但可能被 AI 忽略的问题(未知键、非十六进制颜色)。将这些呈现给用户。 输入 验证规则
  • 前置部分必须正确打开和关闭
  • 前置部分行必须是有效的块样式 YAML
  • Markdown 正文不得包含重复的 ## 部分标题
输出"Design guidelines updated successfully",可选地后跟 Warnings: 部分。

delete-design-guidelines

清除文件的设计准则。 输入 输出"Design guidelines deleted successfully"

Figma 工具

import-figma

将 Figma 框架导入 Flowstep 文件作为其画布上的可编辑元素。重新导入相同框架会就地更新它。文件的组织必须在 Flowstep 设置中已连接 Figma。 输入 输出{ fileId, screenId }screenId 是导入的屏幕元素的 id——将其传递给 get-screen-image 以查看结果。当页面 URL 导入多个框架时,screenIdnull 并返回 frameCount

计费工具

get-plan-details

获取当前用户的套餐、订阅状态和剩余配额。不接受输入。 输出
限制因套餐而异。运行该工具以查看你的具体数字。有关每套餐详情,请参阅 定价