Skip to main content
Todas as ferramentas retornam um array content com blocos de conteúdo MCP. Ferramentas de texto retornam { type: "text", text: "<json-string>" }. Ferramentas de imagem retornam { type: "image", data: "<base64>", mimeType: "image/png" }. Em caso de falha, isError: true é definido e o bloco de texto contém a mensagem de erro.

Ferramentas de arquivo

list-files

Listar arquivos Flowstep do usuário atual. Entrada Saída — Array JSON de objetos de arquivo.

get-file

Obter um único arquivo pelo ID. O conteúdo do arquivo é intencionalmente omitido — use get-screen ou get-screen-image para inspecionar telas e get-design-guidelines para recuperar diretrizes de design anexadas. Entrada Saída — Objeto JSON do arquivo.

create-file

Criar um novo arquivo Flowstep. Entrada Saída — Objeto JSON do arquivo com o id do novo arquivo.
Use o id retornado como fileId em chamadas de ferramentas subsequentes.

update-file

Renomear um arquivo. Entrada Saída — Objeto de arquivo atualizado no mesmo formato que get-file.

delete-file

Excluir permanentemente um arquivo. O name que você passa é verificado em relação ao nome real do arquivo antes da exclusão — se não corresponder, a exclusão é abortada. Isso previne exclusões acidentais. Entrada Saída"File deleted successfully"
Isso é irreversível. Todas as telas no arquivo são excluídas.

Ferramentas de tela

list-screens

Listar todas as telas geradas para um arquivo. Use os valores screenId retornados para referenciar telas em get-screen, get-screen-image, upload-attachment e como targets em edit-design, regenerate-design ou expand-design. Entrada Saída — Array JSON de resumos de telas.
name é o nome da tela atribuído pelo usuário ou null se não nomeada.

get-screen

Obter o código JSX para uma tela permitindo que você edite ou use o código fora do Flowstep. Use get-screen-image para uma visualização visual em vez disso. Entrada Saída — A tela como código (JSX). Note o comentário da primeira linha que é necessário ao usar a ferramenta add-screen.

add-screen

Adicionar uma nova tela a um arquivo Flowstep a partir de uma string JSX bruta. Entrada Nota - Um comentário similar ao mostrado abaixo DEVE estar presente como a primeira linha do JSX pois é usado para adicionar a tela corretamente. screenType, name e screenId são todos opcionais — screenId é usado (internamente) se presente (por exemplo, ao passar JSX copiado da saída de get-screen) mas não é obrigatório. O nome da tela é tirado do campo name do comentário (exibido como “Copy of <name>”), ou “Untitled” se ausente. <!-- screenType: "iphone-x-vertical" width: "375" height: "812" name: "Change to a light theme" colorTheme: "blue" --> Saída — O ID da tela recém-adicionada.

get-screen-image

Renderizar uma tela para PNG e retorná-la como uma imagem inline. Requer um cliente que suporte blocos de conteúdo de imagem. Entrada Saída — Bloco de conteúdo de imagem MCP (image/png).

Ferramentas de IA

regenerate-design, expand-design e edit-design requerem contexto de design que está presente apenas em telas geradas originalmente com um array designs. Telas geradas sem contexto de design retornarão um erro. Alternativa: use upload-attachment para renderizar a tela como uma imagem, então chame create-new-design com a imagem em attachments e uma mensagem descrevendo as alterações desejadas.

create-new-design

Gerar um ou mais designs de tela a partir de um prompt de texto. Omita fileId para criar um novo arquivo automaticamente. Bloqueia até que a geração seja concluída ou expire (180 segundos). Entrada Saída{ fileId, screenIds }. Passe cada screenId para get-screen-image para visualizar os resultados.

regenerate-design

Refazer telas existentes do zero ou com uma variação de estilo. Requer pelo menos um screenId em targets. Bloqueia até que a geração seja concluída ou expire (180 segundos). Entrada Saída{ fileId, screenIds }. Passe cada screenId para get-screen-image para visualizar os resultados.

expand-design

Adicionar telas de acompanhamento a um design existente. Requer pelo menos um screenId em targets e um operationVariant obrigatório. Bloqueia até que a geração seja concluída ou expire (180 segundos). Entrada Saída{ fileId, screenIds }. Passe cada screenId para get-screen-image para visualizar os resultados.

edit-design

Modificar telas existentes via um prompt. Requer pelo menos um screenId em targets. Bloqueia até que a geração seja concluída ou expire (180 segundos). Entrada Saída{ fileId, screenIds }. Passe cada screenId para get-screen-image para visualizar os resultados.

upload-attachment

Enviar um arquivo para usar como anexo em create-new-design ou edit-design. Retorna { id, path, type, mimeType } — passe este objeto diretamente no array attachments. Dois modos: Modo 1 — Tela por ID Passe screenId e fileId. O servidor obtém o estado da tela do banco de dados e a renderiza como uma imagem. Modo 2 — Arquivo externo Passe o conteúdo do arquivo diretamente. Arquivos binários devem ser codificados em base64; arquivos de texto (incluindo código-fonte) são passados como strings UTF-8 simples. Tamanho máximo do arquivo: 3 MB. Para imagens grandes, prefira image/jpeg a image/png. Saída
type é "image" para uploads de imagem/PDF e "document" para arquivos de texto/código.

Ferramentas de chat

get-chat-history

Obter o histórico de mensagens de chat para um arquivo. Entrada Saída — Objeto JSON com um array messages. Cada mensagem tem um type ("request" ou "response"), author ("human" ou "ai"), e content_type ("text", "summary" ou "followup").

Ferramentas de design

get-design-guidelines

Obter as diretrizes de design armazenadas para um arquivo. Entrada Saída
guidelines é null se nenhuma diretriz tiver sido definida.

update-design-guidelines

Definir ou substituir as diretrizes de design para um arquivo. As diretrizes são passadas como uma string de texto simples no formato design.md do Google — não passe um objeto ou JSON. O servidor executa validação suave e pode retornar uma seção Warnings: na resposta listando problemas (chaves desconhecidas, cores não-hex) que foram aceitos mas podem ser ignorados pela IA. Exiba-os ao usuário. Entrada Regras de validação
  • O preâmbulo deve ser aberto e fechado corretamente
  • As linhas do preâmbulo devem ser YAML válido em estilo de bloco
  • O corpo do Markdown não deve conter cabeçalhos ## duplicados
Saída"Design guidelines updated successfully", opcionalmente seguido de uma seção Warnings:.

delete-design-guidelines

Limpar as diretrizes de design para um arquivo. Entrada Saída"Design guidelines deleted successfully"

Ferramentas Figma

import-figma

Importar um frame Figma para um arquivo Flowstep como elementos editáveis em sua tela. Reimportar o mesmo frame o atualiza no lugar. A organização do arquivo deve ter Figma conectado nas configurações do Flowstep. Entrada Saída{ fileId, screenId }. screenId é o id do elemento de tela importado — passe-o para get-screen-image para visualizar o resultado. Quando um URL de página importa múltiplos frames, screenId é null e frameCount é retornado em vez disso.

Ferramentas de cobrança

get-plan-details

Obter o plano atual do usuário, status de inscrição e cota restante. Não recebe entrada. Saída
Os limites variam por plano. Chame esta ferramenta antes de um lote de gerações para verificar a cota disponível.