get-screen-image sein Ergebnis zweimal: als structuredContent (gegen das veröffentlichte Ausgabeschema des Tools geprüft) und als dasselbe Objekt, serialisiert in einen Textblock { type: "text", text: "<json-string>" }. Letzteres ist für Clients gedacht, die keine strukturierten Inhalte lesen. get-screen-image liefert nur einen MCP-Bildblock: { type: "image", data: "<base64>", mimeType: "image/png" }.
Bei einem Fehler wird isError: true gesetzt, und der Textblock enthält eine kurze Fehlermeldung. Fehler, die Sie beheben können, etwa eine Namensabweichung beim Löschen, ein ungültiger Figma-Link, ungültige Design-Richtlinien, ein Problem mit einem Anhang oder eine Zeitüberschreitung bei der Generierung, erklären, was Sie korrigieren müssen. Andere Fehler liefern eine allgemeine Meldung wie Failed to list files.
Preise: Die drei KI-Design-Tools, also
ai-design-screens, ai-generate-screen-variant und ai-edit-screen-variant, nutzen dasselbe Nachrichtenkontingent wie die Flowstep-App. Alle anderen Tools sind kostenlos. Weitere Informationen finden Sie unter Nutzungslimits.delete-file, delete-screen, delete-design-guidelines, replace-screen-jsx, ai-design-screens und ai-edit-screen-variant sind als destruktiv gekennzeichnet, weil sie bestehende Inhalte entfernen oder überschreiben.
Datei-Tools
list-files
Listet die Metadaten Ihrer Flowstep-Dateien auf. Rufen Sie dies zuerst auf, um zu prüfen, ob eine passende Datei bereits existiert. Es werden keine Screen-Inhalte zurückgegeben. Verwenden Sie dafür get-screen-image oder get-screen-jsx.
Eingabe
Ausgabe —
{ files }.
owner:true, wenn Sie die Datei erstellt haben.shared_with_me:true, wenn die Datei direkt mit Ihnen geteilt wurde, nicht nur über Ihre Organisation.url: öffnet die Datei im Flowstep-Editor.
get-file
Ruft die Metadaten einer einzelnen Datei ab. Der Dateiinhalt ist absichtlich nicht enthalten. Verwenden Sie get-screen-image oder get-screen-jsx, um Screens zu prüfen, und get-design-guidelines, um angehängte Richtlinien abzurufen. Wenn Sie eine ausstehende Einladung zur Datei haben, nimmt get-file sie an.
Eingabe
Ausgabe —
{ file, user_access_level }.
access_level:private,readoderwrite.visibility:private,memberoderpublic.user_access_level: Ihr Zugriff auf die Datei, alsoreadoderwrite.
create-file
Erstellt eine leere Flowstep-Datei ohne Screens. Um eine Datei zu erstellen und im selben Schritt Screens zu generieren, rufen Sie stattdessen ai-design-screens ohne fileId auf. Verwenden Sie create-file für Code-first-Workflows, gefolgt von add-screen-jsx.
Eingabe
Ausgabe —
{ file, user_access_level }, in derselben Form wie bei get-file. owner ist immer true, und user_access_level ist immer write.
Verwenden Sie die zurückgegebene file.id als fileId in den folgenden Tool-Aufrufen.
update-file
Benennt eine Datei um.
Eingabe
Ausgabe —
{ file, user_access_level }, in derselben Form wie bei get-file.
delete-file
Löscht eine Datei dauerhaft. Der übergebene name wird vor dem Löschen mit dem aktuellen Anzeigenamen der Datei verglichen. Stimmt er nicht überein, wird das Löschen abgebrochen. So wird verhindert, dass versehentlich die falsche Datei gelöscht wird. Agenten sind angewiesen, vorher bei Ihnen nachzufragen.
Eingabe
Ausgabe —
{ "deleted": true }
Screen-Tools
list-screens
Listet die Screens einer Datei in der Canvas-Reihenfolge auf. Rufen Sie dies nach list-files auf, um zu sehen, was eine Datei bereits enthält. Verwenden Sie die zurückgegebenen screenId-Werte mit den anderen Screen-Tools und den KI-Design-Tools.
Eingabe
Ausgabe —
{ screens }.
prompt: der letzte Generierungs-Prompt des Screens oder ein leerer String, wenn er nie generiert wurde (zum Beispiel bei einem Screen, der mitadd-screen-jsxhinzugefügt wurde).fidelity:lofi,hifioderui.
get-screen-image
Rendert einen Screen als PNG und gibt ihn als eingebettetes Bild zurück. Erfordert einen Client, der Bild-Inhaltsblöcke unterstützt. Rufen Sie das Tool einmal für jede screenId auf, die ein KI-Design-Tool, add-screen-jsx, replace-screen-jsx oder import-figma zurückgibt.
Eingabe
Ausgabe — MCP-Bild-Inhaltsblock (
image/png). data ist Standard-Base64 der PNG-Bytes, kein Data-URI. Für dieses Tool gibt es kein structuredContent.
get-screen-jsx
Ruft einen Screen als JSX sowie seine Metadaten ab, damit Sie darauf in Ihrer Codebasis aufbauen oder ihn bearbeiten und mit replace-screen-jsx zurückschreiben können. Verwenden Sie für eine visuelle Vorschau stattdessen get-screen-image.
Eingabe
Ausgabe —
{ fileId, screenId, name, prompt, fidelity, screenType, colorTheme, jsx, fragments }.
jsx: nur Markup.data-id-Attribute sind nur enthalten, wennincludeIdsauftruegesetzt ist.prompt: der letzte Generierungs-Prompt oder ein leerer String, wenn der Screen nie generiert wurde.fragments: gemeinsam genutzte Elemente des Screens, etwa Navigationsleiste, Kopfzeile oder Logo, als Objekte{ purpose, markup }. Leer, wenn keine vorhanden sind. Übergeben Sie sie anreplace-screen-jsx, um sie zu behalten oder zu aktualisieren.
fidelity, screenType und colorTheme finden Sie unter Screen field values.
add-screen-jsx
Fügt einer Datei einen neuen Screen aus JSX hinzu, das Sie selbst geschrieben haben. Dies ist der Code-first-Weg und ist kostenlos. Verwenden Sie ai-design-screens, wenn die KI von Flowstep den Screen gestalten soll. add-screen-jsx erstellt immer einen neuen Screen. Um einen bestehenden Screen zu überschreiben, verwenden Sie replace-screen-jsx.
Informationen zum Einfügen eines eigenen Bilds finden Sie unter Bilder in JSX.
Wenn der neue Screen auf einem bestehenden basiert, beginnen Sie mit get-screen-jsx (ohne includeIds) für name, fidelity, screenType, colorTheme und jsx. Ändern Sie danach, was sich unterscheiden soll.
Eingabe
Ausgabe —
{ fileId, screenId }. Rufen Sie get-screen-image mit screenId auf, um das Ergebnis zu sehen.
replace-screen-jsx
Überschreibt einen bestehenden Screen mit JSX, das Sie selbst geschrieben haben. Der Screen behält seine screenId und seine Position auf der Canvas. Verschachtelte Elemente erhalten neue IDs. Dies ist der Code-first-Weg und ist kostenlos. Verwenden Sie ai-design-screens oder ai-edit-screen-variant für KI-Änderungen und add-screen-jsx, um stattdessen einen neuen Screen anzulegen.
Beginnen Sie mit get-screen-jsx (ohne includeIds) und ändern Sie danach, was sich unterscheiden soll. Informationen zum Einfügen eines eigenen Bilds finden Sie unter Bilder in JSX.
Eingabe
Ausgabe —
{ fileId, screenId }. Rufen Sie get-screen-image mit screenId auf, um das Ergebnis zu sehen.
rename-screen
Benennt die Canvas-Bezeichnung eines Screens um. Das ist der Name, der in list-screens und im Editor angezeigt wird. Es ändert nur die Bezeichnung, nicht Layout, Größe oder Inhalt des Screens. Verwenden Sie dafür ai-design-screens.
Eingabe
Ausgabe —
{ screenId, name }.
delete-screen
Löscht einen Screen dauerhaft aus einer Datei. Der übergebene name wird mit dem aktuellen Anzeigenamen des Screens verglichen. Stimmt er nicht überein, wird das Löschen abgebrochen. Agenten sind angewiesen, vorher bei Ihnen nachzufragen.
Eingabe
Ausgabe —
{ "deleted": true }
Bilder in JSX
add-screen-jsx und replace-screen-jsx akzeptieren Bilder in einem img-src oder als Hintergrund in className mit bg-[url(...)]. Schreiben Sie alt-Text und dimensionieren Sie jedes Bild passend zu seinem Zweck.
Um ein eigenes Bild einzufügen:
- Laden Sie es mit
upload-attachmentin Modus A hoch (mimeType+fileName) und führen Sie den zurückgegebenenuploadCommandaus. - Wenn der
typeder Antwort"image"ist, fügen Sie dieassetUrlgenau so, wie sie zurückgegeben wurde, inimg srcoderbg-[url(assetUrl)]ein.
get-screen-jsx sie zurückgegeben hat. Setzen Sie path, signedUrl oder uploadCommand nicht in src.
Screen field values
get-screen-jsx gibt diese Werte zurück, und add-screen-jsx sowie replace-screen-jsx akzeptieren sie:
Tools für Design-Richtlinien
Design-Richtlinien sindDESIGN.md-Text, der in einer Datei gespeichert wird. Ist er gesetzt, wird er in jede KI-Generierung für diese Datei eingefügt. Siehe Design-Richtlinien.
get-design-guidelines
Ruft die Design-Richtlinien ab, die einer Datei zugeordnet sind.
Eingabe
Ausgabe —
{ guidelines }.
guidelines ist null, wenn keine Richtlinien festgelegt wurden.
update-design-guidelines
Legt die Design-Richtlinien einer Datei fest oder ersetzt sie. Übergeben Sie die Richtlinien als einfachen String im DESIGN.md-Format von Google, nicht als Objekt oder JSON. Wenn Sie aus einer Datei lesen, übergeben Sie deren Text.
Eingabe
Validierungsregeln
- Der Frontmatter muss korrekt geöffnet und geschlossen sein
- Frontmatter-Zeilen müssen gültiges YAML im Blockstil sein
- Der Markdown-Text darf keine doppelten
##-Abschnittsüberschriften enthalten
Invalid design guidelines: beginnt.
Ausgabe — { updated, warnings? }.
warnings listet weiche Validierungsprobleme auf, etwa unbekannte Schlüssel oder Farben, die nicht im Hex-Format sind. Diese Einträge wurden akzeptiert, werden von der KI aber möglicherweise ignoriert. Das Feld fehlt, wenn keine Warnungen vorliegen. Zeigen Sie diese Hinweise Ihrem Nutzer an.
delete-design-guidelines
Entfernt die Design-Richtlinien einer Datei. Das Löschen nicht vorhandener Richtlinien hat keine Auswirkung.
Eingabe
Ausgabe —
{ "deleted": true }
Chat-Tools
get-chat-history
Ruft die Design-Unterhaltung ab, die mit einer Datei verknüpft ist. Gemeint ist der Flowstep-Chat der Datei, nicht die Unterhaltung in Ihrem MCP-Client. Verwenden Sie das Tool, um frühere Arbeit an der Datei fortzusetzen.
Eingabe
Ausgabe —
{ messages }. messages ist leer, wenn Sie auf der Datei keine Design-Unterhaltung haben. Jede Nachricht hat einen type ("request" oder "response"), einen author ("human" oder "ai") und einen content_type. Antwortnachrichten verwenden "text", "summary" oder "followup".
Anhang-Tools
upload-attachment
Lädt eine Referenzdatei hoch, die als Anhang in ai-design-screens verwendet werden kann, oder ein Bild, das Sie mit add-screen-jsx oder replace-screen-jsx in Ihr eigenes JSX einfügen. ai-generate-screen-variant und ai-edit-screen-variant nehmen keine Anhänge. Dateibytes laufen nie über das Modell, und der Server ruft niemals URLs in Ihrem Auftrag ab. Um auf eine Webseite zu verweisen, fügen Sie deren URL stattdessen in die message von ai-design-screens ein.
Es gibt zwei Modi. Verwenden Sie genau einen und kombinieren Sie sie nicht.
Modus A: Dateien und Bilder (mimeType + fileName)
Für jedes Bild, jede PDF-Datei und jede größere Textdatei ist ein dreistufiger Ablauf erforderlich:
-
Rufen Sie
upload-attachmentnur mitmimeTypeundfileNameauf (zum Beispielimage/pngunddog.png). Die Antwort ist ein vorbereiteter Upload, keine gespeicherte Datei: -
Ersetzen Sie
LOCAL_FILE_PATHinuploadCommanddurch den absoluten Pfad zu Ihrer Datei und führen Sie genau diesen Befehl in Ihrer Shell aus. Er muss mit Exit-Code 0 enden. Das Token insignedUrlautorisiert nur diesen einen Upload. Wenn Sie diesen Schritt auslassen, bleibt der Speicher leer, und die Vorabprüfung des Design-Tools schlägt fehl. -
Übergeben Sie nur
{ id, path, type }in das Arrayattachmentsvonai-design-screens, nichtsignedUrl,uploadCommandodernextStep. Um stattdessen ein Bild in Ihr eigenes JSX einzufügen, übergeben SieassetUrlimimg srcoderbg-[url(...)]des JSX, das Sie anadd-screen-jsxoderreplace-screen-jsxsenden. Siehe Bilder in JSX.
curl) und folgen Sie dann denselben drei Schritten. Übergeben Sie nie eine URL an upload-attachment.
Modus B: kurzer Text (
text + mimeType)
Laden Sie Text hoch, der bereits im Kontext steht. Ein Shell-Befehl ist nicht nötig. Die Antwort können Sie direkt verwenden:
Übergeben Sie das resultierende
{ id, path, type } in das Array attachments von ai-design-screens.
Die maximale Dateigröße beträgt in beiden Modi 3 MB. PDFs sind auf 100 Seiten begrenzt.
Ausgabe — { id, path, assetUrl, type, mimeType, signedUrl?, uploadCommand?, nextStep? }.
type:"image"für Bilddateien und"document"für PDFs und Textdateien.assetUrl: die URL der hochgeladenen Datei, in beiden Modi zurückgegeben. Verwenden Sie sie im JSX füradd-screen-jsxoderreplace-screen-jsxnur, wenntypeden Wert"image"hat, und erst nachdem deruploadCommandaus Modus A ausgeführt wurde.signedUrl,uploadCommand,nextStep: nur in Modus A gesetzt. Übergeben Sie sie nicht an Design-Tools.
Figma-Tools
import-figma
Importiert einen Figma-Frame als bearbeitbare Elemente auf die Canvas einer Flowstep-Datei. Jeder Import erstellt einen neuen Screen. Wenn Sie denselben Frame zweimal importieren, erhalten Sie zwei Screens. Wenn Sie den alten ersetzen wollten, löschen Sie ihn mit delete-screen. Die Organisation der Datei muss Figma in den Flowstep-Einstellungen verbunden haben.
Eingabe
Ausgabe —
{ fileId, screenId, frameCount? }. screenId ist der importierte Screen. Übergeben Sie ihn an get-screen-image, um das Ergebnis zu sehen. Wenn eine Seiten-URL mehrere Frames importiert, ist screenId null, und stattdessen wird frameCount zurückgegeben. Rufen Sie dann list-screens auf und danach für jeden neuen Screen get-screen-image.
Tarif- und Abrechnungs-Tools
get-plan-details
Ruft den Flowstep-Tarif Ihrer Organisation, den Abonnementstatus, die Nutzung und das verbleibende Kontingent ab. Es gibt keine Eingabe. Die Organisation wird über den angemeldeten Nutzer ermittelt. Verwenden Sie das Tool, um Ihr Kontingent zu prüfen, bevor Sie die KI-Design-Tools aufrufen.
Ausgabe — { plan, subscription, limits, usage, remaining }.
Die Limits hängen vom Tarif ab. Siehe Preise und Nutzungslimits.
AI-Design-Tools
Diese drei Tools entwerfen anhand einer Beschreibung oder eines Presets. Sie nehmen oder verwenden nie JSX wieder. Jeder Aufruf nutzt dasselbe Nachrichtenkontingent wie die Flowstep-App und blockiert, bis die Generierung abgeschlossen ist oder das Zeitlimit von 180 Sekunden erreicht ist.
Alle drei geben
{ status, fileId, screenIds, designGuidelinesUpdated } zurück. Rufen Sie für jede screenId einmal get-screen-image auf, um das Ergebnis zu sehen.
designGuidelinesUpdated: eine kurze Zusammenfassung der Änderung, wenn dieDESIGN.md-Richtlinien der Datei während dieses Durchgangs automatisch aktualisiert wurden. Andernfallsnull.
ai-design-screens
Generiert einen oder mehrere neue Screens, ändert bestehende Screens direkt oder erledigt beides in einem Aufruf anhand einer Textbeschreibung. Dazu gehören neue Abläufe, Theming, Texte, Layout oder abgestimmte Änderungen über mehrere Screens hinweg. Dies ist derselbe Design-Agent wie der Chat im Flowstep-Editor. Er entscheidet anhand Ihrer message und elementIds, was erstellt und was geändert wird.
Lassen Sie fileId weg, um eine neue Datei zu starten. Übergeben Sie fileId, um in einer bestehenden Datei zu arbeiten. Wenn sich die Anfrage auf eine bereits vorhandene Datei beziehen könnte, sollte Ihr Agent zuerst list-files und list-screens prüfen. Für einen nächsten Schritt, einen Fehler- oder Leerzustand oder eine Plattformvariante eines Screens verwenden Sie ai-generate-screen-variant. Für ein Preset-Redesign oder eine Preset-Bearbeitung eines Screens verwenden Sie ai-edit-screen-variant. Wenn Sie bereits JSX haben, verwenden Sie stattdessen add-screen-jsx oder replace-screen-jsx.
Eingabe
Beispiel: Einen Screen bearbeiten und in einem Aufruf einen weiteren hinzufügen:
{ status, fileId, screenIds, designGuidelinesUpdated, reply? }.
status:"generated", wenn Screens erstellt oder geändert wurden."chat", wenn Flowstep geantwortet hat, ohne etwas zu erstellen. In diesem Fall enthältreplydie Antwort undscreenIdsist leer. Ist Ihre Vorgabe unklar, sollte Ihr Agent um Klärung bitten und das Tool erneut aufrufen.screenIds: jeder Screen, der während des Aufrufs erstellt oder geändert wurde, einschließlich Screens, die direkt bearbeitet wurden. Läuft der Aufruf in eine Zeitüberschreitung, nachdem einige Screens erstellt wurden, gibt er diese Screens statt eines Fehlers zurück.
ai-generate-screen-variant
Fügt einen neuen Screen hinzu, der von genau einem bestehenden Screen abgeleitet ist: der nächste Schritt im Flow, ein Fehler- oder Leerzustand oder eine Version für eine andere Plattform. Der ursprüngliche Screen bleibt unverändert. Um einen Screen hinzuzufügen, der keine Variante eines bestehenden Screens ist (zum Beispiel einen Einstellungs-Screen), verwenden Sie ai-design-screens mit einer fileId.
Eingabe
Ausgabe —
{ status, fileId, screenIds, designGuidelinesUpdated }. status ist immer "generated".
ai-edit-screen-variant
Ändert genau einen bestehenden Screen direkt mit einem Preset: Gestaltung verfeinern, ein anderes Layout oder einen anderen visuellen Stil ausprobieren oder den Screen von Grund auf neu gestalten. Für neue Screens, freie Anweisungen oder präzise Änderungen an einzelnen Elementen verwenden Sie ai-design-screens.
Eingabe
Ausgabe —
{ status, fileId, screenIds, designGuidelinesUpdated }. status ist immer "generated".
Umbenannte Tools
Die Namen einiger Tools haben sich im September und Oktober 2026 geändert. Wenn Ihre Prompts, Skripte oder Agenten-Anweisungen die alten Namen verwenden, aktualisieren Sie sie:
Auch die Eingaben haben sich geändert: Die KI-Design-Tools nehmen
elementIds (bzw. eine einzelne screenId bei den Variant-Tools) statt targets. add-screen-jsx nimmt jsx und explizite Metadatenfelder statt jsxContent mit einem Metadaten-Kommentar. create-file nimmt name statt title. Die Tools für Design-Richtlinien nehmen fileId statt resourceId und linkedTo.