Voltar as noticias
Por que eu dei ao meu painel de renda um servidor MCP em vez de um aplicativo móvel
MCP ProtocolMediaEN

Por que eu dei ao meu painel de renda um servidor MCP em vez de um aplicativo móvel

Dev.to - MCP·29 de julho de 2026

Eu ganho dinheiro de 23 lugares diferentes.

Não é muito dinheiro. Alguns produtos do Stripe, um link de afiliado da Amazon, alguns scrapers em um marketplace, um aplicativo iOS que gera $6,99 por mês, a venda ocasional de PDFs. O menor deles ganhou $0,01 no mês passado. O maior ganhou $224.

Somados, isso representa a maior parte da minha renda. E até recentemente eu não tinha ideia de qual era o número em um dia qualquer.

O problema não é a falta de um painel

Painéis de receita existem. Baremetrics, ChartMogul, ProfitWell — são bons produtos. Eles também são feitos para um formato de negócio completamente diferente: uma conta do Stripe, analisada profundamente, com preços a partir de cerca de $129/mês para empresas com um único produto e uma equipe de crescimento.

Meu formato é o oposto. Muitos pequenos fluxos, e — essa é a parte que importa — aproximadamente metade deles não publica nenhuma API de ganhos.

Eu verifiquei, cuidadosamente, porque queria automatizar isso:

  • Amazon Associates: sem OAuth, sem API pública de ganhos. A PA-API retorna dados do produto, não o que você ganhou. Há um feed de dados S3, concedido a critério da Amazon, e pequenos editores não se qualificam.
  • A maioria das redes de anúncios: a mesma história.
  • Apify (onde vendo scrapers): os ganhos estão disponíveis apenas no console. Sem API.

Portanto, qualquer ferramenta construída puramente com base em integrações é estruturalmente cega para esse dinheiro. Não é que "não tenha chegado a isso" — é cega por arquitetura. Você não pode integrar com uma API que não existe.

Esse é o espaço que eu construí: automatizar o que tem uma API e fazer a entrada manual levar dez segundos para o resto. Um total mensal, digitado uma vez, unindo os mesmos gráficos, médias e metas das fontes automáticas. Sem glamour. É o produto inteiro.

Por que eu construí um servidor MCP em vez de um aplicativo móvel

Essa é a decisão da qual estou realmente feliz.

O próximo passo óbvio para um painel é um aplicativo móvel. Eu não construí um, porque percebi algo sobre como eu uso a coisa: eu nunca quis olhar para um gráfico. Eu queria fazer uma pergunta.

"Quanto eu ganhei este mês em tudo?"

Isso não é uma consulta visual. É conversacional. Então, em vez de um aplicativo, eu lancei um servidor MCP. Agora eu pergunto ao Claude e recebo uma resposta baseada nos meus números reais:

você ▸ quanto eu ganhei este mês em tudo?
ai  ▸ $412.30 este mês (média $14.22/dia). Top: Amazon $109.18,
      Rotate First Officer $98.14, Checkride PDF $47.28.
      Você está 94% da sua meta mensal.

Quatro ferramentas: get_income_summary, get_sources, get_month, log_monthly_income. Essa última significa que eu posso registrar a renda falando, o que transforma a parte mais tediosa de todo o produto em uma frase.

O problema de autenticação que ninguém avisa

É aqui que as coisas ficaram interessantes tecnicamente.

O aplicativo hospedado autentica com links mágicos do Supabase, que produzem um JWT que expira em uma hora. Isso é correto para um navegador. É inútil para um CLI: um servidor MCP rodando sob o Claude Desktop não pode atualizar uma sessão de navegador.

Então, por um tempo, meu MCP só funcionou contra instâncias auto-hospedadas, o que significava que qualquer um que o descobrisse tinha que implantar seu próprio Postgres para usá-lo. Não exatamente um funil.

A solução são tokens de API pessoais, e os detalhes são o ponto principal:

Armazene um hash, nunca o token. O texto em claro é mostrado uma vez, na criação. O banco de dados mantém um hash SHA-256. Um vazamento de banco de dados não gera nada utilizável.

export function generateToken() const token = 'iok_' + randomBytes(24).toString('hex');
  return tokenhashhashToken(token), prefixtokenslice(012) }

Mostre um prefixo e um timestamp de último uso. Uma credencial que você não pode ver é uma credencial que você não pode auditar. Se um token diz "nunca usado" seis meses depois, você sabe que deve matá-lo.

Um token não pode criar outro token. Isso eu acho subestimado:

function isBrowserSession(reqNextRequestbooleanreturn (reqheadersget('authorization') ''includes('iok_');

O produto estava ao vivo e cobrando há 26 dias. Meu próprio site estava dizendo a cada visitante que ele ainda não existia, e oferecendo a eles uma lista de espera. Essa lista de espera teve zero inscrições, que em retrospectiva foi a única métrica honesta na página.

Não era um problema de conversão. Ninguém nunca tinha visto o produto.

Eu tenho uma regra agora, e eu a ofereceria a qualquer um que esteja lançando

Contexto Triplo Up

O artigo explora a implementação de um servidor MCP para gerenciar múltiplas fontes de renda, o que pode inspirar empresas brasileiras a adotar soluções mais flexíveis e automatizadas. A abordagem conversacional pode melhorar a experiência do usuário e a eficiência na gestão financeira.

Noticias relacionadas

Gostou do conteudo?

Receba toda semana as principais novidades sobre WebMCP.