Projetoscaso 03 / 05 · software house · engenharia

Plataforma para consultores

O cliente chegou com um protótipo low-code. Antes de orçar, a gente diagnosticou. O diagnóstico mostrou que valia mais reescrever do que remendar.

cliente
consultoria de investimentos (anônimo)
papel
Acordi & Scur · arquitetura e código
período
jun–out 2026
status
V1 entregue · V2 em desenvolvimento
código
privado
  • Next.js
  • TypeScript
  • Prisma
  • Postgres
  • MCP

01O problema

Consultor de investimentos vive entre duas coisas: as finanças pessoais de cada cliente e o próprio funil comercial.

cliente final

  • orçamento
  • patrimônio
  • metas
  • indicador de saúde financeira

consultor

  • carteira
  • funil
  • agenda
  • propostas
um produto só, operado também conversando com uma IA

Normalmente isso mora em planilha e num CRM genérico. O cliente queria um produto só, com duas plataformas: uma para o cliente final (orçamento, patrimônio, metas, indicador de saúde financeira) e outra para o consultor (carteira, funil, agenda, propostas).

E queria que o consultor pudesse operar tudo conversando com uma IA.

02 · Diagnóstico

Primeiro, o diagnóstico.

  • 79telas
  • 236componentes
  • 58entidades
  • ~100 millinhas analisadas

O cliente chegou com um protótipo em plataforma low-code. Antes de orçar, a Acordi & Scur vendeu um diagnóstico técnico: 79 telas, 236 componentes, 58 entidades e cerca de 100 mil linhas analisadas, cada problema classificado por severidade.

Segurança, LGPD e dependência da plataforma saíram como críticos. A recomendação foi reescrever, e o protótipo antigo ficou no repositório só como referência de comportamento, em modo leitura.

Diagnóstico antes de orçamento. O cliente comprou a decisão, não a hora.

03 · Arquitetura

Arquitetura.

Três portas de entrada, um caminho. A IA não tem atalho: passa pelos mesmos serviços e permissões da tela.

Arquitetura da plataforma para consultoresCliente final e consultor usam a web; a IA do consultor entra por MCP com OAuth 2.1 ou chave, limite diário e executor de ferramentas que exige confirmação para escrita. Tudo chega aos mesmos serviços puros; o dado financeiro passa por um portão que confere permissão, consentimento e grava auditoria; só os repositórios falam com o PostgreSQL.cliente finalplataforma webconsultorplataforma webIA do consultorcliente MCPactionsuma por caso de usoOAuth 2.1 · chave+ limite diárioexecutor · 120 toolsescrita só com confirmaçãoserviços puros3 domíniosportão + auditoriapermissão · consentimentorepositóriosa única camada com SQLPostgreSQL90 modelos · 69 migrações

04 · Decisões

O que eu decidi.

  1. Fatias por domínio.

    platform, finance e advisory. Em cada uma: action, serviço puro, interface de repositório. Só o repositório fala com o banco.

  2. Tela primeiro, banco depois.

    A interface foi construída contra repositórios falsos e depois trocada para Prisma sem reescrever tela. O cliente validou fluxo antes de existir migração.

  3. Um portão para o dado financeiro.

    O consultor só chega no dado do cliente por um módulo, que confere permissão por registro (ver ou editar), consentimento e grava auditoria de cada acesso. O acesso “como cliente” também é auditado.

  4. Dinheiro é inteiro.

    Centavos em inteiro, toda conta financeira numa função pura escrita com teste primeiro, simulação pesada no servidor.

  5. MCP em cima dos mesmos serviços.

    120 ferramentas, 61 de leitura e 59 de escrita, em 22 domínios, com OAuth 2.1 ou chave e limite diário por consultor. Escrita só com confirmação; a mesma escrita repetida em 2 minutos devolve o resultado anterior. O catálogo é gerado do registro, e um teste quebra se os dois divergirem.

  6. LGPD desde o primeiro commit.

    Consentimento, exportação e exclusão de dados fazem parte do produto, não de um remendo depois.

05 · Resultado

O que mudou.

  • 120

    ferramentas MCP para o consultor operar por IA

  • 90

    modelos de dados, 69 migrações

  • 669

    arquivos de teste

  • 156

    commits em 4 meses, do diagnóstico à V2 em andamento

Sobre este caso

  • Projeto de cliente, apresentado de forma anônima. Sem nome, marca, print ou dado de cliente.
  • Todo o desenvolvimento foi conduzido com Claude Code: skills do projeto, retrospectiva a cada lote de entregas e 49 registros de decisão (ADR).

stack completa · código privado

  • Next.js 16
  • TypeScript
  • Prisma
  • PostgreSQL
  • CASL
  • Stripe
  • OpenAI
  • MCP
  • OAuth 2.1