content-array af MCP-indholdsblokke. Tekstværktøjer returnerer { type: "text", text: "<json-string>" }. Billedværktøjer returnerer { type: "image", data: "<base64>", mimeType: "image/png" }. Hvis det mislykkes, sættes isError: true, og tekstblokken indeholder fejlmeddelelsen.
Filværktøjer
list-files
Oplist filer fra Flowstep for den aktuelle bruger.
Input
| Parameter | Type | Standard | Beskrivelse |
|---|---|---|---|
orderByCreation | boolean | true | Sorter efter oprettelsesdato |
limit | integer (1–100) | 20 | Antal filer, der skal returneres |
offset | integer (≥0) | 0 | Pagineringsoffset |
get-file
Få en enkelt fil efter ID. Filindhold er bevidst udeladt – brug get-screen eller get-screen-image for at inspicere skærme, og get-design-guidelines for at hente vedhæftede designretningslinjer.
Input
| Parameter | Type | Beskrivelse |
|---|---|---|
id | uuid | Fil-ID |
create-file
Opret en ny Flowstep-fil.
Input
| Parameter | Type | Beskrivelse |
|---|---|---|
title | string (min 1) | Filnavn |
id.
id som fileId i efterfølgende værktøjskald.
update-file
Omdøb en fil.
Input
| Parameter | Type | Beskrivelse |
|---|---|---|
id | uuid | Fil-ID |
name | string (min 1) | Nyt navn |
get-file.
delete-file
Slet en fil permanent. Det name, du sender, bliver verificeret mod filens faktiske navn før sletning – hvis det ikke matcher, afbrydes sletningen. Dette forhindrer utilsigtet sletning af forkert fil.
Input
| Parameter | Type | Beskrivelse |
|---|---|---|
id | uuid | Fil-ID |
name | string | Filens aktuelle navn – skal matche præcist, eller sletningen afbrydes |
"File deleted successfully"
Skærmværktøjer
list-screens
Oplist alle genererede skærme for en fil. Brug de returnerede screenId-værdier til at referere til skærme i get-screen, get-screen-image, upload-attachment og som targets i edit-design, regenerate-design eller expand-design.
Input
| Parameter | Type | Beskrivelse |
|---|---|---|
fileId | uuid | Fil-ID |
name er brugerens tildelte skærmnavn eller null, hvis ubenævnt.
get-screen
Få JSX-koden for en skærm, så du kan redigere eller bruge koden uden for Flowstep. Brug get-screen-image for at få en visuel forhåndsvisning i stedet.
Input
| Parameter | Type | Beskrivelse |
|---|---|---|
fileId | uuid | Fil-ID |
screenId | uuid | Den screenId, som list-screens returnerede eller fra screenIds-arrayet returneret af et designværktøj |
add-screen.
add-screen
Tilføj en ny skærm til en Flowstep-fil fra en rå JSX-streng.
Input
| Parameter | Type | Beskrivelse |
|---|---|---|
fileId | uuid | Fil-ID |
jsxContent | string | JSX, der skal føjes til filen som en skærm |
screenType | string | Påkrævet, hvis skærmtypen ikke er defineret som en kommentar i starten af JSX’en |
screenType, name og screenId er alle valgfrie – screenId bruges (internt), hvis den er til stede (f.eks. når du indsætter JSX kopieret fra get-screen-output), men er ikke obligatorisk. Skærmnavnet kommer fra kommentarens name-felt (vises som “Copy of <name>”) eller “Untitled”, hvis det er udeladt.
<!-- screenType: "iphone-x-vertical" width: "375" height: "812" name: "Change to a light theme" colorTheme: "blue" -->
Output – Det nyligt tilføjede skærm-ID.
get-screen-image
Render en skærm som PNG og returner den som et integreret billede. Kræver en klient, der understøtter billedindholdsblokke.
Input
| Parameter | Type | Beskrivelse |
|---|---|---|
fileId | uuid | Fil-ID |
screenId | uuid | Den screenId, som list-screens returnerede eller fra screenIds-arrayet returneret af et designværktøj |
image/png).
AI-værktøjer
create-new-design
Generer en eller flere skærmdesign ud fra en tekstprompt. Udelad fileId for at oprette en ny fil automatisk. Blokerer, indtil generering er fuldført eller timeout (180 sekunder).
Input
| Parameter | Type | Standard | Beskrivelse |
|---|---|---|---|
fileId | uuid | — | Målfil – udelad for at oprette en ny fil automatisk |
message | string | — | Prompt, der beskriver de skærme, der skal genereres |
attachments | AttachmentRequestData[] (max 5) | [] | Allerede uploadede vedhæftninger – billeder, PDF’er eller kodefiler. Upload altid via upload-attachment først; indsæt ikke filindhold i beskeden |
designs | DesignRequestData[] | [] | Designreferencer |
{ fileId, screenIds }. Send hver screenId til get-screen-image for at se resultaterne.
regenerate-design
Lav eksisterende skærme igen fra grunden eller med en stilvariation. Kræver mindst én screenId i targets. Blokerer, indtil generering er fuldført eller timeout (180 sekunder).
Input
| Parameter | Type | Standard | Beskrivelse |
|---|---|---|---|
fileId | uuid | — | Målfil |
message | string | — | Prompttekst |
targets | uuid[] (min 1) | — | screenIds af skærme, der skal genereres igen |
operationVariant | "different_layout" | "different_style" | "from_scratch" | — | Valgfri stilvariation |
designs | DesignRequestData[] | [] | Designreferencer (løses automatisk) |
{ fileId, screenIds }. Send hver screenId til get-screen-image for at se resultaterne.
expand-design
Tilføj opfølgende skærme til et eksisterende design. Kræver mindst én screenId i targets og en obligatorisk operationVariant. Blokerer, indtil generering er fuldført eller timeout (180 sekunder).
Input
| Parameter | Type | Standard | Beskrivelse |
|---|---|---|---|
fileId | uuid | — | Målfil |
message | string | — | Prompttekst |
targets | uuid[] (min 1) | — | screenIds af skærme, der skal udvides fra |
operationVariant | "next_screen" | "error_state" | "empty_state" | "web_version" | "mobile_version" | "tablet_version" | "mobile_ios_version" | "mobile_android_version" | — | Påkrævet – type af opfølgende skærm, der skal genereres |
designs | DesignRequestData[] | [] | Designreferencer (løses automatisk) |
{ fileId, screenIds }. Send hver screenId til get-screen-image for at se resultaterne.
edit-design
Modificer eksisterende skærme via en prompt. Kræver mindst én screenId i targets. Blokerer, indtil generering er fuldført eller timeout (180 sekunder).
Input
| Parameter | Type | Standard | Beskrivelse |
|---|---|---|---|
fileId | uuid | — | Målfil |
message | string | — | Instruktioner, der beskriver de redigeringer, der skal anvendes |
targets | uuid[] (min 1) | — | screenIds af skærme, der skal redigeres |
operationVariant | "dark_theme" | "light_theme" | "make_pretty" | — | Valgfri stilgenvej |
attachments | AttachmentRequestData[] (max 5) | [] | Allerede uploadede vedhæftninger. Upload altid via upload-attachment først |
designs | DesignRequestData[] | [] | Designreferencer (løses automatisk) |
{ fileId, screenIds }. Send hver screenId til get-screen-image for at se resultaterne.
upload-attachment
Upload en fil, der skal bruges som vedhæftning i create-new-design eller edit-design. Returnerer { id, path, type, mimeType } – send dette objekt direkte til attachments-arrayet.
To tilstande:
Tilstand 1 – Skærm efter ID
Send screenId og fileId. Serveren henter skærmtilstanden fra databasen og renderer den som et billede.
| Parameter | Type | Beskrivelse |
|---|---|---|
fileId | uuid | Fil, der indeholder skærmen (påkrævet) |
screenId | uuid | Skærm, der skal gengives |
| Parameter | Type | Beskrivelse |
|---|---|---|
fileData | string | Filindhold – base64 for binær, UTF-8-streng for tekst |
fileName | string | Oprindeligt filnavn |
mimeType | "image/jpeg" | "image/png" | "image/webp" | "application/pdf" | "text/plain" | "text/javascript" | MIME-type. Brug text/javascript til .jsx, .tsx, .js, .ts filer |
image/jpeg frem for image/png.
Output
type er "image" for billede-/PDF-uploads og "document" for tekst-/kodefiler.
Chatværktøjer
get-chat-history
Få chatbeskedhistorikken for en fil.
Input
| Parameter | Type | Beskrivelse |
|---|---|---|
fileId | uuid | Fil-ID |
messages-array. Hver besked har en type ("request" eller "response"), author ("human" eller "ai") og content_type ("text", "summary" eller "followup").
Designværktøjer
get-design-guidelines
Få designretningslinjer lagret for en fil.
Input
| Parameter | Type | Standard | Beskrivelse |
|---|---|---|---|
resourceId | uuid | — | Fil-ID |
linkedTo | "file" | "file" | Ressourcetype |
guidelines er null, hvis der ikke er angivet retningslinjer.
update-design-guidelines
Indstil eller erstat designretningslinjer for en fil. Retningslinjer sendes som en almindelig tekststreng i Googles design.md-format – send ikke et objekt eller JSON.
Serveren udfører blød validering og kan returnere en Warnings:-sektion i svaret med en liste over problemer (ukendte nøgler, ikke-hex-farver), der blev accepteret, men kan ignoreres af AI’en. Vis disse for brugeren.
Input
| Parameter | Type | Standard | Beskrivelse |
|---|---|---|---|
resourceId | uuid | — | Fil-ID |
designGuidelines | string (min 1) | — | Råtekstindhold af retningslinjer. Skal være en almindelig streng – ikke JSON-kodet |
linkedTo | "file" | "file" | Ressourcetype |
- Frontmatter skal være åbnet og lukket korrekt
- Frontmatter-linjer skal være gyldig blok-stil YAML
- Markdown-indhold må ikke indeholde duplikerede
##-sektionsoverskrifter
"Design guidelines updated successfully", eventuelt efterfulgt af en Warnings:-sektion.
delete-design-guidelines
Ryd designretningslinjer for en fil.
Input
| Parameter | Type | Standard | Beskrivelse |
|---|---|---|---|
resourceId | uuid | — | Fil-ID |
linkedTo | "file" | "file" | Ressourcetype |
"Design guidelines deleted successfully"