get-screen-image palauttavat tuloksensa kahdesti: structuredContent-kenttänä (validoitu työkalun julkaistua tulosskeemaa vastaan) ja samana objektina sarjallistettuna tekstilohkoon { type: "text", text: "<json-string>" }. Jälkimmäinen on tarkoitettu asiakkaille, jotka eivät lue rakenteellista sisältöä. get-screen-image palauttaa vain MCP-kuvalohkon: { type: "image", data: "<base64>", mimeType: "image/png" }.
Epäonnistuessa isError: true asetetaan ja tekstilohko sisältää lyhyen virheviestin. Virheet, joihin voit reagoida, kuten nimivirhe poistossa, virheellinen Figma-linkki, virheelliset suunnitteluohjeet, liitteeseen liittyvä ongelma tai generoinnin aikakatkaisu, kertovat, mitä korjata. Muut virheet palauttavat yleisen viestin, kuten Failed to list files.
Hinnoittelu: kolme tekoälysuunnittelutyökalua (
ai-design-screens, ai-generate-screen-variant ja ai-edit-screen-variant) käyttävät samaa viestikiintiötä kuin Flowstep-sovellus. Kaikki muut työkalut ovat veloituksettomia. Katso Käyttörajat.delete-file, delete-screen, delete-design-guidelines, replace-screen-jsx, ai-design-screens ja ai-edit-screen-variant on merkitty tuhoaviksi, koska ne poistavat tai korvaavat olemassa olevaa sisältöä.
Tiedostotyökalut
list-files
Listaa Flowstep-tiedostojesi metatiedot. Kutsu tämä ensin tarkistaaksesi, onko olemassa oleva sopiva tiedosto. Se ei palauta näyttösisältöä. Käytä siihen get-screen-image- tai get-screen-jsx-työkalua.
Syöte
Tulos:
{ files }.
owner:true, jos loit tiedoston.shared_with_me:true, jos tiedosto jaettiin kanssasi suoraan eikä vain organisaatiosi kautta.url: avaa tiedoston Flowstep-editorissa.
get-file
Hae yhden tiedoston metatiedot. Tiedoston sisältöä ei ole tarkoituksella mukana. Tarkista näytöt get-screen-image- tai get-screen-jsx-työkalulla ja hae liitetyt ohjeet get-design-guidelines-työkalulla. Jos sinulla on odottava kutsu tiedostoon, get-file-kutsu hyväksyy sen.
Syöte
Tulos:
{ file, user_access_level }.
access_level:private,readtaiwrite.visibility:private,membertaipublic.user_access_level: käyttöoikeutesi tiedostoon,readtaiwrite.
create-file
Luo tyhjä Flowstep-tiedosto ilman näyttöjä. Jos haluat luoda tiedoston ja generoida näytöt yhdessä vaiheessa, kutsu sen sijaan ai-design-screens-työkalua ilman fileId:tä. Käytä create-file-työkalua koodi edellä -työnkuluissa, joita seuraa add-screen-jsx.
Syöte
Tulos:
{ file, user_access_level }, samassa muodossa kuin get-file. owner on aina true ja user_access_level aina write.
Käytä palautettua file.id-arvoa fileId:nä seuraavissa työkalukutsuissa.
update-file
Nimeä tiedosto uudelleen.
Syöte
Tulos:
{ file, user_access_level }, samassa muodossa kuin get-file.
delete-file
Poista tiedosto pysyvästi. Antamaasi name-arvoa verrataan tiedoston nykyiseen näyttönimeen ennen poistoa. Jos se ei täsmää, poisto keskeytetään. Tämä estää vahingossa väärän tiedoston poistamisen. Agentteja ohjeistetaan vahvistamaan asia ensin kanssasi.
Syöte
Tulos:
{ "deleted": true }
Näyttötyökalut
list-screens
Listaa tiedoston näytöt piirtojärjestyksessä. Kutsu tämä list-files-työkalun jälkeen nähdäksesi, mitä tiedostossa jo on. Käytä palautettuja screenId-arvoja muiden näyttötyökalujen ja tekoälysuunnittelutyökalujen kanssa.
Syöte
Tulos:
{ screens }.
prompt: näytön viimeisin generointikehote, tai tyhjä merkkijono, jos sitä ei ole koskaan generoitu (esimerkiksiadd-screen-jsx-työkalulla lisätty näyttö).fidelity:lofi,hifitaiui.
get-screen-image
Renderöi näyttö PNG-muotoon ja palauta se upotettuna kuvana. Vaatii asiakkaan, joka tukee kuvalohkoja. Kutsu sitä kerran jokaiselle screenId:lle, jonka tekoälysuunnittelutyökalu, add-screen-jsx, replace-screen-jsx tai import-figma palauttaa.
Syöte
Tulos: MCP-kuvasisältölohko (
image/png). data on PNG-tavujen tavallinen base64-koodaus, ei data-URI. Tälle työkalulle ei ole structuredContent-kenttää.
get-screen-jsx
Hae näyttö JSX-muodossa ja sen metatiedot. Voit rakentaa siitä koodipohjassasi tai muokata sitä ja kirjoittaa takaisin replace-screen-jsx-työkalulla. Käytä get-screen-image-työkalua visuaaliseen esikatseluun.
Syöte
Tulos:
{ fileId, screenId, name, prompt, fidelity, screenType, colorTheme, jsx, fragments }.
jsx: pelkkä merkintä.data-id-attribuutit sisältyvät vain, kunincludeIdsontrue.prompt: viimeisin generointikehote, tai tyhjä merkkijono, jos näyttöä ei ole koskaan generoitu.fragments: näytölle tallennettu yhteinen rakenne, kuten navigointipalkki, ylätunniste tai logo,{ purpose, markup }-objekteina. Tyhjä, jos sellaista ei ole. Välitä ne takaisinreplace-screen-jsx-työkalulle säilyttääksesi tai päivittääksesi ne.
fidelity-, screenType- ja colorTheme-arvoista.
add-screen-jsx
Lisää uusi näyttö tiedostoon itse kirjoitetusta JSX:stä. Tämä on koodi edellä -polku, ja se on veloitukseton. Käytä ai-design-screens-työkalua, kun haluat Flowstepin tekoälyn suunnittelevan näytön. add-screen-jsx luo aina uuden näytön. Jos haluat korvata olemassa olevan, käytä replace-screen-jsx-työkalua.
Kuvan lisäämisestä ladattuun kuvaan katso Kuvat JSX:ssä.
Kun uusi näyttö perustuu olemassa olevaan, aloita hakemalla get-screen-jsx (ilman includeIds-parametria) arvoille name, fidelity, screenType, colorTheme ja jsx, ja muuta sitten sitä, mikä eroaa.
Syöte
Tulos:
{ fileId, screenId }. Kutsu get-screen-image screenId:llä nähdäksesi tuloksen.
replace-screen-jsx
Korvaa olemassa oleva näyttö itse kirjoitetulla JSX:llä. Näyttö säilyttää screenId:nsä ja paikkansa piirtoalustalla, ja sisäkkäiset elementit saavat uudet tunnukset. Tämä on koodi edellä -polku, ja se on veloitukseton. Käytä ai-design-screens- tai ai-edit-screen-variant-työkalua tekoälyn tekemiin muutoksiin ja add-screen-jsx-työkalua uuden näytön luomiseen.
Aloita hakemalla get-screen-jsx (ilman includeIds-parametria) ja muuta sitten sitä, mikä eroaa. Kuvan lisäämisestä ladattuun kuvaan katso Kuvat JSX:ssä.
Syöte
Tulos:
{ fileId, screenId }. Kutsu get-screen-image screenId:llä nähdäksesi tuloksen.
rename-screen
Nimeä näytön piirtoalustan tunniste uudelleen. Tämä on nimi, joka näkyy list-screens-työkalun tuloksessa ja editorissa. Muutos koskee vain tunnistetta, ei näytön asettelua, kokoa tai sisältöä. Niihin käytä ai-design-screens-työkalua.
Syöte
Tulos:
{ screenId, name }.
delete-screen
Poista näyttö pysyvästi tiedostosta. Antamaasi name-arvoa verrataan näytön nykyiseen näyttönimeen. Jos se ei täsmää, poisto keskeytetään. Agentteja ohjeistetaan vahvistamaan asia ensin kanssasi.
Syöte
Tulos:
{ "deleted": true }
Kuvat JSX:ssä
add-screen-jsx ja replace-screen-jsx hyväksyvät kuvia img-elementin src-attribuutissa tai taustana className-kentässä bg-[url(...)]-muodossa. Kirjoita alt-teksti ja mitoita jokainen kuva sen käyttötarkoituksen mukaan.
Oman kuvan lisäämiseksi:
- Lataa se
upload-attachment-työkalulla tilassa A (mimeType+fileName) ja suorita palautettuuploadCommand. - Jos vastauksen
typeon"image", liitä senassetUrlsellaisenaanimg src-kenttään taibg-[url(assetUrl)]-kenttään.
get-screen-jsx ne palautti. Älä laita path-, signedUrl- tai uploadCommand-arvoa src-kenttään.
Näytön kenttien arvot
get-screen-jsx palauttaa ja add-screen-jsx sekä replace-screen-jsx hyväksyvät nämä arvot:
Suunnitteluohjeiden työkalut
Suunnitteluohjeet ovat tiedostoon tallennettuaDESIGN.md-tekstiä. Kun ne on asetettu, ne lisätään jokaiseen tekoälygenerointiin kyseiselle tiedostolle. Katso Suunnitteluohjeet.
get-design-guidelines
Hae tiedostoon liitetyt suunnitteluohjeet.
Syöte
Tulos:
{ guidelines }.
guidelines on null, jos ohjeita ei ole asetettu.
update-design-guidelines
Aseta tai korvaa tiedoston suunnitteluohjeet. Anna ohjeet tavallisena merkkijonona Googlen DESIGN.md-muodossa, ei objektina tai JSON:na. Jos luet ohjeet tiedostosta, anna tiedoston teksti.
Syöte
Validointisäännöt
- Frontmatterin on avauduttava ja suljettava oikein
- Frontmatter-rivien on oltava kelvollista lohkomuotoista YAML:ia
- Markdown-rungossa ei saa olla kahta samaa
##-osiotsikkoa
Invalid design guidelines:.
Tulos: { updated, warnings? }.
warnings listaa pehmeät validointiongelmat (tuntemattomat avaimet, ei-heksadesimaaliset värit). Ne hyväksyttiin, mutta tekoäly saattaa jättää ne huomiotta. Kenttä puuttuu, kun niitä ei ole. Kerro nämä käyttäjälle.
delete-design-guidelines
Tyhjennä tiedoston suunnitteluohjeet. Olemattomien ohjeiden poistaminen ei tee mitään.
Syöte
Tulos:
{ "deleted": true }
Keskustelutyökalut
get-chat-history
Hae tiedostoon liittyvä suunnittelukeskustelu. Tämä on tiedoston Flowstep-keskustelu, ei MCP-asiakkaasi keskustelu. Käytä sitä jatkaaksesi aiempaa työtä tiedostossa.
Syöte
Tulos:
{ messages }. messages on tyhjä, jos tiedostossa ei ole suunnittelukeskustelua. Jokaisella viestillä on type ("request" tai "response"), author ("human" tai "ai") ja content_type. Vastausviestit käyttävät arvoja "text", "summary" tai "followup".
Liitetyökalut
upload-attachment
Lataa viitetiedosto käytettäväksi liitteenä ai-design-screens-työkalussa tai kuva, jonka haluat sijoittaa omaan JSX:ääsi add-screen-jsx- tai replace-screen-jsx-työkalulla. ai-generate-screen-variant ja ai-edit-screen-variant eivät ota liitteitä. Tiedostojen tavuja ei välitetä mallin kautta, eikä palvelin koskaan hae URL-osoitteita puolestasi. Jos haluat viitata verkkosivuun, sisällytä sen URL ai-design-screens-työkalun message-kenttään.
Tiloja on kaksi. Käytä täsmälleen yhtä, älä yhdistele niitä.
Tila A: tiedostot ja kuvat (mimeType + fileName)
Pakollinen kolmivaiheinen kulku kaikille kuville, PDF-tiedostoille tai suuremmille tekstitiedostoille:
-
Kutsu
upload-attachmentvain parametreillamimeTypejafileName(esimerkiksiimage/pngjadog.png). Vastaus on valmisteltu lataus, ei tallennettu tiedosto: -
Korvaa
uploadCommand-kentänLOCAL_FILE_PATHtiedostosi absoluuttisella polulla ja suorita täsmälleen tämä komento terminaalissasi. Sen on päättyttävä koodilla 0.signedUrl-kentän tunnus valtuuttaa vain tämän yhden latauksen. Tämän vaiheen ohittaminen jättää tallennustilan tyhjäksi, ja suunnittelutyökalu epäonnistuu esitarkistuksessaan. -
Välitä vain
{ id, path, type }ai-design-screens-työkalunattachments-taulukkoon. Älä välitäsignedUrl-,uploadCommand- tainextStep-kenttiä. Jos haluat sijoittaa kuvan omaan JSX:ääsi, asetaassetUrladd-screen-jsx- taireplace-screen-jsx-työkalulle annetun JSX:nimg src- taibg-[url(...)]-kenttään. Katso Kuvat JSX:ssä.
curl-komennolla) ja noudata sitten samoja kolmea vaihetta. Älä koskaan anna URL-osoitetta upload-attachment-työkalulle.
Tila B: lyhyt teksti (
text + mimeType)
Lataa teksti, joka on jo kontekstissa. Komentoriviä ei tarvita. Vastaus on valmis käytettäväksi suoraan:
Välitä tuloksena saatu
{ id, path, type } ai-design-screens-työkalun attachments-taulukkoon.
Suurin sallittu tiedostokoko on 3 MB molemmissa tiloissa, ja PDF-tiedostot on rajoitettu 100 sivuun.
Tulos: { id, path, assetUrl, type, mimeType, signedUrl?, uploadCommand?, nextStep? }.
type:"image"kuville ja"document"PDF-tiedostoille ja tekstitiedostoille.assetUrl: ladatun tiedoston URL, joka palautetaan molemmissa tiloissa. Käytä sitä JSX:ssäadd-screen-jsx- taireplace-screen-jsx-työkalulle vain, kuntypeon"image", ja vasta kun tilan AuploadCommandon suoritettu.signedUrl,uploadCommand,nextStep: asetetaan vain tilassa A. Älä välitä niitä suunnittelutyökaluille.
Figma-työkalut
import-figma
Tuo Figma-kehys Flowstep-tiedostoon muokattavina elementteinä sen piirtoalustalle. Jokainen tuonti lisää uuden näytön. Saman kehyksen tuominen kahdesti antaa kaksi näyttöä, joten poista vanha delete-screen-työkalulla, jos aiot korvata sen. Tiedoston organisaatiossa on oltava Figma yhdistettynä Flowstep-asetuksissa.
Syöte
Tulos:
{ fileId, screenId, frameCount? }. screenId on tuotu näyttö, ja sen voi antaa get-screen-image-työkalulle tuloksen näkemiseksi. Kun sivun URL tuo useita kehyksiä, screenId on null ja sen sijaan palautetaan frameCount. Kutsu tällöin list-screens ja sen jälkeen get-screen-image jokaiselle uudelle näytölle.
Paketti- ja laskutustyökalut
get-plan-details
Hae organisaatiosi Flowstep-paketti, tilauksen tila, käyttö ja jäljellä oleva kiintiö. Työkalu ei ota syötettä. Organisaatio selvitetään kirjautuneesta käyttäjästä. Käytä sitä tarkistaaksesi kiintiösi ennen tekoälysuunnittelutyökalujen kutsumista.
Tulos: { plan, subscription, limits, usage, remaining }.
Rajat vaihtelevat paketeittain. Katso Hinnoittelu ja Käyttörajat.
Tekoälysuunnittelutyökalut
Nämä kolme työkalua suunnittelevat kuvauksen tai esiasetuksen perusteella. Ne eivät koskaan ota vastaan tai käytä uudelleen JSX:ää. Jokainen kutsu käyttää samaa viestikiintiötä kuin Flowstep-sovellus. Kutsu odottaa, kunnes generointi valmistuu tai aikakatkaisu tapahtuu (180 sekuntia).
Kaikki kolme palauttavat
{ status, fileId, screenIds, designGuidelinesUpdated }. Kutsu get-screen-image kerran jokaiselle screenId:lle nähdäksesi tuloksen.
designGuidelinesUpdated: lyhyt yhteenveto muutoksesta, kun tiedostonDESIGN.md-ohjeita päivitettiin automaattisesti tämän vuoron aikana. Muutennull.
ai-design-screens
Luo yksi tai useampi uusi näyttö, muokkaa olemassa olevia näyttöjä paikallaan tai molempia yhdessä kutsussa tekstikuvauksesta. Kyse voi olla uusista käyttäjävirroista, teemoituksesta, tekstistä, asettelusta tai koordinoiduista muutoksista useissa näytöissä. Tämä on sama suunnitteluagentti kuin Flowstep-editorin keskustelussa. Se päättää message-kentän ja elementIds-kentän perusteella, mitä rakentaa ja mitä muuttaa.
Jätä fileId pois aloittaaksesi uuden tiedoston. Anna fileId, jos haluat työskennellä olemassa olevassa tiedostossa. Jos pyyntö voisi koskea tiedostoa, jonka sinulla jo on, agenttisi tarkistaa ensin list-files- ja list-screens-työkalut. Yhden näytön seuraavaa vaihetta, virhe- tai tyhjää tilaa taikka alustakohtaista muunnelmaa varten käytä ai-generate-screen-variant-työkalua. Yhden näytön esiasetusmuokkausta tai uudelleensuunnittelua varten käytä ai-edit-screen-variant-työkalua. Jos sinulla on jo JSX, käytä add-screen-jsx- tai replace-screen-jsx-työkalua.
Syöte
Esimerkki: muokkaa yhtä näyttöä ja lisää toinen yhdellä kutsulla:
{ status, fileId, screenIds, designGuidelinesUpdated, reply? }.
status:"generated", kun näytöt on rakennettu tai muutettu."chat", kun Flowstep vastasi rakentamatta mitään. Tällöinreplysisältää vastauksen jascreenIdson tyhjä. Jos toimeksiantosi on epäselvä, agenttisi pyytää sinulta tarkennusta ja kutsuu työkalua uudelleen.screenIds: kaikki kutsun aikana rakennetut tai muutetut näytöt, mukaan lukien paikallaan muokatut näytöt. Jos kutsu aikakatkaistaan sen jälkeen, kun joitain näyttöjä on jo rakennettu, se palauttaa nämä näytöt virheen sijaan.
ai-generate-screen-variant
Lisää uusi näyttö, joka on johdettu täsmälleen yhdestä olemassa olevasta näytöstä. Se voi olla käyttäjävirran seuraava vaihe, virhe- tai tyhjä tila, tai versio toiselle alustalle. Alkuperäinen näyttö jää ennalleen. Jos haluat lisätä näytön, joka ei ole olemassa olevan näytön muunnelma, esimerkiksi asetusnäytön, käytä ai-design-screens-työkalua fileId:n kanssa.
Syöte
Tulos:
{ status, fileId, screenIds, designGuidelinesUpdated }. status on aina "generated".
ai-edit-screen-variant
Muuta täsmälleen yhtä olemassa olevaa näyttöä paikallaan esiasetuksella. Voit teemoittaa tai viimeistellä sen, kokeilla eri asettelua tai visuaalista tyyliä, tai suunnitella sen uudelleen alusta alkaen. Vapaamuotoisia ohjeita tai tarkkaa muokkausta yksittäisiin elementteihin varten käytä ai-design-screens-työkalua.
Syöte
Tulos:
{ status, fileId, screenIds, designGuidelinesUpdated }. status on aina "generated".
Uudelleen nimetyt työkalut
Työkalujen nimet muuttuivat syys- ja lokakuussa 2026. Jos sinulla on kehotteita, skriptejä tai agenttiohjeita, jotka käyttävät vanhoja nimiä, päivitä ne:
Syötteet muuttuivat myös. Tekoälysuunnittelutyökalut ottavat
elementIds-kentän (tai yksittäisen screenId:n muunnelmatyökaluissa) targets-kentän sijaan. add-screen-jsx ottaa jsx- ja eksplisiittiset metatietokentät jsxContent-kentän ja metatietokommentin sijaan. create-file ottaa name-kentän title-kentän sijaan. Suunnitteluohjeiden työkalut ottavat fileId:n resourceId- ja linkedTo-kenttien sijaan.