RiLiGar
InícioComo funcionaMCPPreçoDúvidas
Entrar

Os sete produtos

Auth

Login e usuários prontos

Hoster

Publique sem montar pipeline

Storage

Guarde dados e arquivos

Payments

Cobrança que vira permissão

Functions

Código no ar sem servidor

Monitors

Uptime e página de status

Messages

E-mail transacional no seu domínio

Antes de decidir

Conectar seu agente

MCP e OAuth 2.1 nos sete produtos

Começar em 5 minutos

Instale, autentique, suba o primeiro dado

Preço

Grátis para começar. Planos de R$ 29,99 a R$ 99,99

Como nos comparamos

vs. Supabase

Postgres gerenciado, fatura em dólar

vs. Clerk

Login pronto, suporte em outro fuso

vs. Stripe

Cobrança global, assinatura como evento

Se o seu produto é global e cobra em dólar, as ferramentas de lá provavelmente são a escolha certa.

RiLiGarPlataforma de infraestrutura agêntica, em português, para produto brasileiro. Fatura em real, suporte no seu fuso.

Tecnologia

LLMs.txt (AI)Painel

MCP

Como conectarLLMs-MCP.txt (AI)Spec 2026-07-28

Legal

PrivacidadeTermosSegurançaStatus

Produtos

AuthHosterStoragePaymentsFunctionsMonitorsMessagesPreço

Seu nível

IniciantesDev soloConstruindo com IATime de produto

Para quem

StartupsSoftware houseFreelancerTime interno

O que você constrói

SaaS B2BApp por assinaturaMarketplaceApp mobile

Vindo de

Vindo do SupabaseVindo do FirebaseVindo do StripeVindo da AWS

Empresa

O problemaContatoMarcaDesign systemLinkedInStatusLLMs.txt (AI)

Social

© 2026 RiLiGar. Todos os direitos reservados.

Infraestrutura RiLiGar · Monitors

Saiba que caiu antes do seu cliente saber.

Uptime de API e nota de performance no mesmo painel. O alerta chega por e-mail, Discord ou Telegram depois de duas falhas seguidas — não de um soluço de rede — e a página de status pública, no seu domínio, responde ao seu cliente enquanto você conserta.

Criar meu primeiro monitor

Comece de graça, sem cartão. O primeiro monitor leva um minuto: cole a URL, escolha o intervalo e pronto.

Por que isso existe

Hoje, quem descobre a queda é
O CLIENTE.

Ele liga, manda mensagem, abre um chamado. Nesse ponto o prejuízo já aconteceu duas vezes: o serviço ficou fora do ar e alguém de fora precisou avisar. A inversão dessa ordem é o produto inteiro — e ela não exige que você monte relógio, banco de histórico e canal de aviso para conseguir.

  • O cron que avisa no terminal que ninguém está lendo às 3h
  • O alerta que cria lobo: dispara tanto que virou ruído ignorado
  • O suporte respondendo um a um enquanto o incidente ainda está aberto

O caminho inteiro

Checa, mede, avisa, publica.

Quatro etapas — e nenhuma delas é montar infraestrutura.

1 · Uptime

Uma requisição, três respostas possíveis

No ar, fora do ar — e no ar porém lento, que é um estado próprio. Acordar alguém às 3h por uma API que responde certo e devagar é exatamente como se perde a confiança num alerta.

monitor http
kind:      http
url:       https://api.acme.com/health
intervalo: 30s · 1m · 5m · 10m · 30m · 1h

→ up        respondeu como esperado
→ degraded  certo, acima do limiar
→ down      não respondeu

2 · Performance

Lighthouse de verdade, num Chrome de verdade

Performance, boas práticas e SEO com o navegador abrindo a página. Cada auditoria sobe um Chrome, custa ~130 MB e leva dezenas de segundos — por isso ela entra numa fila de uma por vez, e nunca disputa espaço com os pings.

monitor web
kind:      web
url:       https://acme.com
intervalo: 1h · 6h · 12h · 24h

→ performance · best-practices · seo
→ fila serial de 1

3 · Alerta

Duas falhas seguidas, não uma

Um incidente abre depois de N checagens ruins em sequência (padrão 2) e fecha na primeira boa. Uma falha isolada — o timeout de rede que acontece com todo mundo — não vira notificação, e é isso que faz o alerta continuar significando alguma coisa.

incidente
check 1  down   → nada ainda
check 2  down   → incidente ABERTO
                  ↓
                  e-mail
                  Discord
                  Telegram
                  webhook

check 3  up     → incidente FECHADO

4 · Página pública

O status no domínio do cliente, com a cara dele

Cor, fonte, tema e rodapé são seus; o endereço também. Você aponta um CNAME e o certificado é pedido automaticamente — durante um incidente, a página responde por você enquanto o suporte ainda está lendo o alerta.

status page
status.acme.com  CNAME
   → monitors-manager.fly.dev

✓ certificado pedido sozinho
✓ HTML pronto no primeiro byte
✓ 90 dias de histórico

antes do DNS: /s/<slug>

As duas famílias

Custos diferentes em
ORDENS DE GRANDEZA.

Um ping é ~1 KB e dezenas de milissegundos; uma auditoria Lighthouse sobe um Chrome, come ~130 MB e leva dezenas de segundos. Tratar os dois como a mesma tarefa faz duas auditorias simultâneas disputarem espaço com os pings até o sistema derrubar a máquina inteira. Aqui a auditoria entra numa fila de uma por vez, e o ping — que é barato — nunca entra nessa fila.

  • Uptime a partir de 30s; performance a partir de 1h
  • Um relógio só, no processo primário — não um por worker
  • Um tick varre quem venceu, em vez de um timer por monitor
  • Jitter espalha a carga, para 300 monitores não dispararem juntos

A página de status

Ela existe para o dia em que as outras coisas não funcionam.

É a única parte do produto que o seu cliente vê. Por isso ela é HTML do servidor, no seu domínio, e não uma tela que depende de tudo estar de pé para aparecer.

As decisões que ela carrega

  • HTML pronto no primeiro byte a página aparece completa sem depender de CORS, de JavaScript ou de o painel estar no ar. Justamente quando algo caiu, é o que não pode cair junto.
  • Falha preservando o último estado bom se a atualização automática quebra, o cabeçalho se marca como defasado em vez de esvaziar a tela. Uma página de status em branco no meio de um incidente é a pior saída possível.
  • Grupo assume o estado do filho mais degradado 11 componentes no ar e 1 fora não pode aparecer verde. A barra de 90 dias do grupo usa o PIOR uptime de cada dia — na média, uma queda entre onze saudáveis vira 99,2% e some.
  • Abre sozinha no problema os grupos vêm colapsados, menos os que não estão no ar — decidido no servidor, com `<details>` nativo. Com JavaScript desligado, tudo continua acessível.
  • Verde, âmbar e vermelho não são configuráveis cor, fonte, tema e rodapé são do cliente. As cores de ESTADO não: um cliente pintando "fora do ar" de verde produziria uma página que mente com aparência de calma.

O que ela nunca mostra a URL do alvo, o nome interno do monitor, os ids, a configuração com seus headers de autenticação, o status HTTP, o erro cru, o intervalo e a contagem de checagens. A causa de um incidente passa por um vocabulário fechado — a mensagem original costuma trazer a URL interna junto.

O que sai e o que fica

Sua página, sem o seu mapa.

Quem abre uma página de status está, por definição, com um problema.

Sem terceiros na página

Nenhuma conexão sai para fora

A fonte da marca vai embutida no próprio HTML, não vem do Google Fonts como nos painéis da suíte. Não há upload de logo, porque aceitar imagem externa entregaria o IP de cada visitante a um terceiro. A página não conta a ninguém quem a está visitando.

política
default-src 'none'
font-src    data:
script-src  'sha256-…'

→ sem CDN
→ sem Google Fonts
→ sem logo externo

Sem número comercial

Saúde e sintoma. Nada além disso.

O nome público é sugerido a partir do HOST da URL, nunca do nome interno — payments.acme.com já é público, payments-api-prod não. E o seu CSS é podado em vez de recusado: uma folha de 40 linhas não é rejeitada inteira por uma linha, e a resposta diz o que caiu.

componente público
público:  "API de Pagamentos"
estado:   degradado
uptime:   99,4% (90 dias)

nunca:    url · id · status HTTP
          erro cru · intervalo
          config · nome interno

Sendo justo

Um cron resolve "subiu?".
O difícil é tudo o que vem depois.

O cron que você já tem

Onde ele já resolve sozinho

Um curl a cada minuto, de graça

Ele tem

Você escolhe exatamente o que testar

Ele tem

Roda dentro da sua rede, sem expor nada

Ele tem

Zero fornecedor, zero contrato

Ele tem

Fique com ele se

Um aviso no seu terminal já basta

Para quem só quer saber se subiu, o cron resolve — e continua ao seu lado.

RiLiGar Monitors

Uma coisa só, bem feita

A parte que o cron não faz: guardar o histórico, distinguir lento de fora do ar, não te acordar por um soluço de rede e responder ao seu cliente numa página pública enquanto você conserta.

  • Uptime de API e nota de performance no mesmo painel
  • "No ar porém lento" é um estado, não um alarme falso
  • Incidente só depois de 2 falhas seguidas — e fecha sozinho
  • Alerta por e-mail, Discord, Telegram e webhook, sem segurar a checagem
  • Página de status no SEU domínio, com a sua cara
  • 90 dias de histórico sem varrer milhões de linhas
Criar meu primeiro monitor

Model Context Protocol

Seu agente investiga a queda. Sem abrir o painel.

Olhar o gráfico é a parte fácil; o que faltava era responder o que vem depois dele — o que aconteceu, quando começou, e já normalizou. São 14 ferramentas — 8 leem, 6 escrevem — na revisão 2026-07-28, a stateless. O endereço vale para a conta inteira: a chave já cobre todos os seus monitores, então não há id no caminho.

O que o servidor NÃO oferece

  • Apagar monitor ou página de status não existem como ferramenta. Aqui isso pesa mais que nos outros produtos: apagar o monitor apaga junto o histórico que provaria o incidente.
  • Cadastrar canal de alerta ou domínio próprio continuam no painel, onde há uma pessoa confirmando. Um destino de alerta escolhido por agente é superfície de exfiltração — o alerta passaria a sair para um endereço que ninguém escolheu.
  • E o plano continua valendo criar monitor e criar página passam pelo mesmo limite da API. Estourou o plano, a chamada falha dizendo quanto cabe — o agente reporta em vez de insistir.

Autentica das duas formas com a sua mk_ ou com OAuth 2.1 pelo RiLiGar Auth. As duas chegam na mesma conta.

Como o agente entra

Nenhuma chave no arquivo.

O token nasce no navegador, e o escopo decide o que ele enxerga.

OAuth 2.1

Você aprova no navegador, uma vez

Sem header nenhum no comando. Na primeira chamada o servidor responde 401 apontando para o metadata; o cliente descobre o authorization server sozinho, abre o navegador e você aprova. O escopo do token decide o catálogo: com auth:read ele enxerga 8 ferramentas, e as 6 de escrita não aparecem sequer na lista. Em CI, onde não há navegador, a sua mk_ conecta direto.

bash
$ claude mcp add --transport http \
    riligar-monitors \
    https://monitors.manager.myinfrastructure.click/mcp

→ 401 WWW-Authenticate
→ descobre o auth server
→ abre o navegador
✓ token com aud= esta conta ▊

O que muda na prática

A pergunta que vem depois do gráfico

O agente não lê a lista crua de checagens — ela repete a mesma informação centenas de vezes. Ele pede os episódios, que dizem quando começou, quando acabou e por quê, e confirma na hora se já normalizou.

conversa
Você: "o checkout caiu ontem
à noite? por quanto tempo?"

→ monitors_list
  acha o id do monitor

→ monitors_get_episodes
  início, fim e causa
  de cada episódio

→ monitors_check_now
  confirma se já normalizou ▊

A régua

Os cinco eixos que decidem a escolha

A mesma tabela em toda página de produto da RiLiGar. Duas linhas aqui são limitações, escritas com a mesma tinta das outras — ela existe para você decidir rápido se o encaixe é seu.

O que é checado

Duas famílias, um painel

Uptime de API por requisição HTTP (a partir de 30s) e auditoria Lighthouse com Chrome real (a partir de 1h). São custos diferentes em ordens de grandeza — ~1 KB contra ~130 MB e um navegador —, e por isso intervalos mínimos diferentes.

De onde sai a checagem

Uma região, sem réplica

Uma VM na Fly, em iad. Isso significa que uma queda de rede entre nós e você aparece como queda sua — quem precisa distinguir incidente global de rota ruim precisa de sondas em vários pontos, e isso hoje não existe aqui.

Quando o alerta dispara

Depois de 2 falhas seguidas

Configurável. Fecha na primeira checagem boa. O envio nunca segura o relógio: timeout curto, sem retentativa, e o incidente fica gravado de qualquer jeito — o painel é a fonte da verdade, o alerta é a conveniência.

Para onde o alerta vai

E-mail, Discord, Telegram e webhook

A lista de e-mails aceita a escala inteira colada de uma vez — vírgula, ponto e vírgula ou uma coluna de planilha. Sem SMS, sem ligação, sem rodízio de plantão: quem está na lista recebe junto. Destinos em rede interna (localhost, 169.254.169.254, faixas privadas) são recusados: a requisição sai da nossa VM, e aceitá-los seria transformar o serviço em leitor de rede a mando de quem cadastra o canal.

Integração com agente

MCP, 14 ferramentas

Servidor MCP na revisão 2026-07-28, autenticando por OAuth 2.1 — você aprova no navegador, sem chave no arquivo. Oito ferramentas leem e seis escrevem; nenhuma apaga — nem monitor, nem página de status. Cadastrar canal de alerta e domínio próprio também ficam fora, e continuam no painel.

Se algum destes pontos não bater no seu caso, escreva. A gente confere e corrige a linha.

Preço

1, 5 ou ilimitados monitores

FAQ

As objeções, na ordem em que elas aparecem

O de uptime faz uma requisição HTTP e responde em três estados: no ar, no ar porém lento, ou fora do ar. É barato — cabe dezenas de alvos a cada minuto na mesma máquina. O de performance abre a página num Chrome de verdade e roda o Lighthouse (performance, boas práticas e SEO): custa ~130 MB e dezenas de segundos por auditoria, então o intervalo mínimo é de uma hora e ele entra numa fila de um por vez. A separação existe porque misturar os dois custos no mesmo relógio derrubaria a máquina — e um produto de monitoramento que cai é o pior tipo de ironia.
Não, e isso é desenho, não sorte. Um incidente só abre depois de N checagens ruins seguidas — o padrão é 2, e você ajusta — e fecha na primeira boa. A falha isolada que acontece com todo mundo fica registrada no histórico e não vira notificação. Há também o estado "degraded": uma API que responde certo, só que devagar, aparece em âmbar no painel em vez de disparar o mesmo alarme de queda.
De um: uma VM na Fly, em iad. Isso tem uma consequência que preferimos escrever antes de você perguntar — uma queda de rede entre nós e o seu servidor aparece como queda sua. Se o seu caso exige distinguir "o mundo inteiro não alcança" de "essa rota está ruim", você precisa de sondas em vários pontos, e isso hoje não existe aqui. Para saber se o seu serviço está de pé e ser avisado quando não estiver, uma sonda basta.
Sim. Você aponta um CNAME de status.suaempresa.com para monitors-manager.fly.dev e o certificado é pedido automaticamente. Antes do DNS propagar, o endereço /s/<slug> já mostra a página — serve de preview, e o slug leva sufixo aleatório porque "sem indexação" só protege enquanto o link não é adivinhável. A página é HTML renderizado no servidor: aparece completa no primeiro byte, sem depender de JavaScript, de CORS ou de o painel estar no ar. É o requisito mais importante dela, já que ela existe justamente para os momentos em que outras coisas não estão funcionando.
Só saúde e sintoma. Nunca aparecem: a URL do alvo, o nome interno do monitor, os ids, a configuração (que carrega headers de autenticação), o status HTTP, a mensagem de erro crua, o intervalo de checagem e a contagem de checagens. A causa de um incidente passa por um vocabulário fechado, porque a mensagem original costuma trazer a URL interna. O nome público de cada componente é sugerido a partir do HOST da URL, nunca do nome interno: payments.acme.com já é público, payments-api-prod não.
Cor de marca, fonte, tema, texto de rodapé e CSS adicional. Duas exceções, ambas deliberadas. Não há upload de logo: aceitar imagem externa obrigaria a afrouxar a política de segurança e cada visita entregaria o IP do seu cliente a um terceiro. E as cores de estado — verde, âmbar, vermelho — não são configuráveis: elas são vocabulário compartilhado com o resto da web, e um "fora do ar" pintado de verde é uma página que mente com aparência de calma. O seu CSS é podado, não recusado: o que sai é devolvido na resposta, para a tela poder te dizer o que caiu.
90 dias de uptime na barra da página pública, a partir de um resumo diário — uma linha por monitor por dia, cerca de 0,6 MB por ano. Guardar 90 dias de checagens brutas custaria centenas de megabytes e faria cada visita anônima varrer milhões de linhas, então a barra pública lê o resumo. O detalhe fino de cada checagem fica no painel, onde você é quem está olhando.
E-mail, Discord, Telegram e webhook genérico. No e-mail você cola a escala inteira de uma vez — vírgula, ponto e vírgula ou uma coluna de planilha — e todo mundo da lista recebe junto, até 50 endereços. O Discord é um canal próprio, não um webhook genérico apontado para lá: o aviso chega como embed, vermelho quando cai e verde quando volta, com a palavra escrita e não só a cor. Sem SMS, sem ligação e sem rodízio de plantão. O envio nunca bloqueia a checagem: timeout curto, sem retentativa, e o próximo monitor não espera o seu webhook lento. Um alerta que chega cinco minutos depois já não é alerta, e uma fila de retentativas para um endpoint morto viraria acúmulo de memória na VM. O incidente fica gravado de qualquer forma.
Para qualquer endereço público, sim. Destinos em rede interna são recusados — localhost, 127.x, faixas privadas, .internal e o 169.254.169.254 dos metadados de nuvem. A requisição sai da nossa VM, então aceitar esses destinos transformaria o serviço num leitor de rede interna a mando de quem cadastra o canal. O mesmo vale nos monitores: você define headers, mas host, content-length e os x-forwarded-* são recusados, porque reescrevê-los não ajuda a monitorar nada e abre uso indevido da máquina como proxy.
Não, e essa distinção custou uma correção. O Lighthouse devolve nota nula quando o Chrome nem carrega a página — DNS morto, certificado interstitial, conexão recusada — e tratar isso como zero produz um alerta dizendo "o LCP piorou" para um domínio que sequer resolve, mandando você investigar a coisa errada. Aqui esse caso é um estado próprio: erro, não nota baixa.
Tem, na revisão 2026-07-28 — a mesma dos outros seis. O endereço é o da conta inteira, sem id no caminho: a sua chave mk_ já alcança todos os seus monitores, então um recorte só para o MCP inventaria uma noção de posse que a API REST não tem. É o mesmo desenho do Hoster e do Functions; Auth, Storage, Payments e Messages recortam no path porque neles uma pessoa administra vários recursos. São 14 ferramentas, e o escopo do token decide quais aparecem: com auth:read as seis de escrita não entram sequer na lista. A documentação completa está no /llms-mcp.txt.
R$ 29,99 no Starter (1 monitor e 1 página de status), R$ 49,99 no Pro (5 monitores, 3 páginas, Web Performance e domínio próprio) e R$ 99,99 no Scale, sem teto. No anual você paga 10 meses e leva 12. Os preços desta página vêm do catálogo em tempo de execução, e não de um número digitado aqui: o que você lê é exatamente o que a Stripe cobra. Uptime, estado degradado, incidentes por confirmação e alertas por e-mail, Discord, Telegram e webhook estão em todos os planos, inclusive no Starter.
Não. O gate de plano falha ABERTO de propósito: sem resposta do Payments, por timeout ou por configuração ausente, ele libera. Esse limite protege receita, não protege o dado de ninguém — quem separa cliente de cliente é a autenticação. Um gate de cobrança que fecha quando a cobrança cai transforma um incidente nosso em incidente de todos os clientes, e num produto de monitoramento isso é especialmente grave: você perderia a visibilidade exatamente durante um incidente.

Achou um limite que não está escrito aqui?

Fala direto com quem escreveu o código. Se você encontrou onde quebra, a gente quer publicar isso antes do próximo visitante descobrir sozinho.

Falar com Engenharia

Cole a URL, escolha o intervalo. Leva um minuto.

Sem cartão. Se o seu serviço cair hoje à noite, quem te avisa é o alerta — não o seu cliente.

Criar meu primeiro monitor