Vibe coding, automação e MCP
(stdy.blog)Vibe coding = terceirizar para a IA
Vibe coding é, em essência, terceirizar o desenvolvimento de um programa para a IA.
Pensando na experiência de terceirização de desenvolvimento, bons contratantes costumam fazer bem estas coisas:
- Definir o trabalho para resolver o meu problema
- Comunicar isso de forma que o desenvolvedor entenda bem
- Fornecer os recursos necessários para criar bem o programa
- Validar se o programa criado realmente executa o trabalho como pretendido
- Durante esse processo, aprender com o desenvolvedor aquilo que não sabe, para aos poucos conseguir fazer por conta própria
Trazendo isso para a perspectiva de quem faz vibe coding:
- Definir o PRD e o fluxo do usuário
- Usar bons prompts e instruções (como Cursor Rules)
- Perceber pontos que se desviam da intenção e executar testes automatizados
- Aprender nesse processo trocando ideias com a IA
Então, e o item 3? Isso pode ser pensado em dois aspectos do programa:
- Primeiro, o programa precisa ser executado em algum lugar. → Definir o ambiente de execução e implantação
- Segundo, o programa é um bloco de código que “processa entradas e gera saídas”. → Fornecer dados e APIs
Um programa precisa ser executado
- Em terceirização de desenvolvimento, a responsabilidade do desenvolvedor normalmente vai até a implementação do código, e a responsabilidade por deploy e operação fica com quem contratou
- Em vez disso, o desenvolvedor fornece um guia para que o contratante consiga executar esse programa
- Como contratante de um serviço terceirizado, se você informar à IA o ambiente onde o código deve rodar e ser implantado, ela faz isso muito bem.
- Isso é ainda mais verdade especialmente para código que roda no navegador web
- Antigamente, até scripts muito simples como 'remover parte da sintaxe de um documento Markdown com expressão regular' não eram fáceis para não desenvolvedores executarem ou implantarem
- Agora, com Claude Artifacts ou Gemini Canvas, dá para criar e executar rapidinho um pequeno programa próprio. Se quiser que outras pessoas também usem, é só criar e publicar no Lovable, e tudo isso pode ser feito de graça em instantes
- Vibe coding não significa necessariamente criar um “app”. Se for um programa que resolve meu problema e reduz trabalho repetitivo, tanto faz se é app, script, GPTs ou prompt
APIs que tornam programas mais úteis
- Mas programas pequenos têm limitações
- O removedor de Markdown não tem banco de dados, API nem LLM conectados
- Por isso, o texto de entrada precisa ser digitado manualmente pelo usuário, e o texto gerado também precisa ser copiado e colado manualmente em outro lugar
- E se o objetivo do usuário fosse “refinar um texto escrito no Notion e publicá-lo nas redes sociais”?
- Entrada: inserir apenas o link da página do Notion
- Processamento: pegar o texto, enviar para um LLM para resumir de forma adequada para redes sociais e remover a sintaxe Markdown
- Saída: revisar o texto e, ao aprovar, publicá-lo automaticamente na minha conta de rede social
- Em troca de abrir mão de tempo de resposta rápido e de generalidade, isso reduziria bastante o tempo e a energia gastos pelo usuário nessa tarefa. Ou seja, para um objetivo específico, o programa se tornaria mais “útil”
- No fim, a utilidade de um programa depende de quanto ele reduz o trabalho que o usuário precisa fazer diretamente nos aspectos de entrada/processamento/saída
- Automatizando a entrada
- Tornando o processamento mais complexo
- Automatizando a saída
- Em programas comuns, via API (ou seja, conectando-se a outros programas), é possível automatizar entradas e saídas e realizar processamentos mais sofisticados
- Entrada: obter permissão do Notion e chamar a API do Notion para buscar o conteúdo da página
- Processamento: enviar o conteúdo da página do Notion para a API de LLM junto com um prompt de sistema e receber uma resposta adequada para redes sociais
- Saída: obter permissão do Threads e chamar a API da rede social para publicar o texto
- Porém, criar isso não é algo tão fácil nem mesmo para desenvolvedores experientes. Principalmente porque a concessão de permissões é complicada
- Dá para tornar isso mais fácil?
Ferramentas de automação e MCP que assumem a parte difícil da integração com APIs
- Se você usar ferramentas de automação como Zapier e Make, não precisa integrar APIs diretamente
- Exemplo: quando um novo item é adicionado a um banco de dados do Notion -> roda o ChatGPT -> faz upload no Instagram com um Zap
- Originalmente, para chamar a API de publicação do Instagram, seria preciso criar um app dedicado e até passar por revisão
- No Zapier ou no Make, o app para upload no Instagram já foi criado, e todo o fluxo para obter permissões e trocar dados já está implementado. Não preciso me preocupar com o problema complicado das permissões
- Porém, para algumas pessoas, até montar esse tipo de fluxo “isso depois aquilo” pode ser difícil e incômodo; e é aí que entram coisas como MCP/A2A, que permitem fazer tudo isso por meio de um chatbot com LLM
- Assim como programas comuns passaram a fazer mais do que lógica simples por meio de APIs, o programa chamado chatbot com LLM também passa, via MCP, a se conectar a outros programas e realizar mais do que simples saídas de texto/imagem/voz
- Isso significa que no Claude passa a ser possível algo como “pegue minha página do Notion, resuma e depois publique no Instagram”
- Claro, para isso é preciso conectar os servidores MCP adequados (Notion, Instagram) ao cliente MCP (Claude)
- O papel mais importante de um servidor MCP é chamar APIs no lugar do usuário por meio de tools; o Notion já tem servidor MCP oficial, mas o Instagram não
- Então como o Claude vai chamar a API do Instagram?
- É aí que o Zapier aparece de novo. Por meio do servidor MCP oferecido pelo Zapier ou pelo Make, é possível fazer upload no Instagram
- Em outras palavras, conectar a um chatbot com LLM uma ferramenta de automação (que já tem muitas integrações prontas) via MCP torna tudo muito poderoso
O potencial e os limites do MCP
- Mas, olhando por esse lado, pode surgir a pergunta: por que usar MCP?
- Porque quase tudo o que hoje dá para fazer com chatbot + MCP também pode ser feito com ferramentas de automação
- Ainda assim, o autor sente que o potencial do MCP é enorme por três motivos:
- Interface conveniente (um chatbot assistente que faz tudo sozinho não seria o programa definitivo?)
- É mais conveniente para o usuário intervir em tarefas sensíveis
- Além de automatizar tarefas que precisam ser feitas no meu PC local, como controle do sistema de arquivos e do navegador, também pode fornecer mais informações, como recursos e templates de prompt
- Também há muitos pontos aos quais prestar atenção ao usar MCP
- Quanto mais coisas você entrega ao MCP, mais precisa se preocupar com segurança. Por isso, um servidor MCP remoto oficial é mais seguro do que um local
- Se você der ferramentas demais ao MCP do LLM, pode ser que a ferramenta desejada não seja executada; além disso, como todas as definições de tools vão para os tokens de entrada, o custo e o tempo da chamada ao LLM também aumentam
- A aleatoriedade característica dos LLMs também deve sempre ser tratada com cuidado em serviços comerciais
- No fim, conectar APIs ao meu programa, desenhar fluxos de automação ou acoplar MCP a um chatbot com LLM são variações da mesma ideia: “faça meu trabalho por mim”
- Não há motivo para se estressar porque palavras-chave como Make e MCP estão em alta. O importante é criar, da forma que for mais confortável para você e entendendo os prós e contras de cada abordagem, um programa que faça o seu trabalho por você
Resumo
- Vibe coding é terceirizar para a IA o desenvolvimento de um programa.
- Se ele executar bem o meu trabalho, então webapp, snippet de código e prompt podem todos ser programas úteis.
- Para um programa se tornar mais útil, ele precisa de conexões com APIs para automatizar entradas e saídas e realizar processamentos mais sofisticados.
- Ferramentas de automação resolvem a dificuldade da conexão com APIs no seu lugar.
- O programa chamado chatbot com LLM também pode se tornar mais útil por meio da conexão com MCP. Em especial, conectar servidores MCP fornecidos por ferramentas de automação é algo poderoso.
- Não é preciso usar apenas API, automação ou MCP isoladamente; misturar os três pode torná-los mais simples e mais poderosos (ex.: conectar apenas o MCP do Notion ao Claude e configurar no Zapier um fluxo de Notion para Instagram para automatizar a publicação)
- Considerando os prós e contras, vamos criar (com a ajuda da IA) um programa que resolva os nossos problemas da forma mais adequada para cada um
4 comentários
Com algo no nível de vibe coding, não dá para chamar de terceirização. Na terceirização, a validação é feita por projeto, mas os agentes de codificação com IA de hoje ainda precisam ser validados em unidades menores de tarefa.
Se fosse terceirização, eu deveria poder delegar o trabalho e cuidar de outras coisas... mas, por enquanto, ainda é preciso acompanhar de perto com muita frequência. Como um desenvolvedor júnior inteligente, mas desajeitado...
Em breve... talvez, mesmo que ainda não chegue a ser terceirização, dê para trabalhar como se fosse uma pequena equipe de desenvolvimento... é o que eu penso. Dar instruções, revisar com frequência, corrigir... mas ainda não parece estar nesse nível.
Talvez isso aconteça porque me falta "vibe"...
Ao ver este post https://tech.kakao.com/posts/700, senti que era um bom exemplo de Vibe Coding, e acho que o contexto é parecido. Eu também concordo com o que você escreveu.
Graças a isso, li um texto interessante! Obrigado.
Então, e o 3? -> É sobre o suporte a recursos.
Numerei acima como 1, 2, 4 e 5, mas no Markdown acabou mudando automaticamente para 1234.