RowAttest

Executa um teste de isolamento de oito estágios contra seu Supabase de staging e emite uma atestação assinada.

Servidor MCP hospedado

npx add-mcp 'https://app.rowattest.com/mcp'

Instala no Claude Code, Codex, Cursor e outros

Documentação

Servidor MCP RowAttest

O RowAttest executa um teste de isolamento em oito etapas contra seu Supabase de staging e emite uma atestação assinada. O servidor MCP dá ao seu assistente de IA as mesmas seis ações que uma chave de API do RowAttest possui: listar seus projetos, iniciar uma execução, acompanhá-la e ler os achados e o relatório assinado. Os projetos são conectados apenas no site. O servidor não pode conectar projetos, alterar configurações ou pagar por nada.

Endpoint

URL

https://app.rowattest.com/mcp

Transporte

HTTP Streamable. O endpoint aceita POST; GET responde com 405.

Autenticação

Authorization: Bearer rak_… — uma chave de API do RowAttest, criada na página de chaves de API no aplicativo.

Cabeçalho Accept

Os clientes enviam Accept: application/json, text/event-stream. Clientes MCP padrão fazem isso por conta própria.

Handshake aberto, ferramentas com chave

initialize, tools/list e server/discover respondem sem chave, para que clientes e diretórios possam ver o que o servidor oferece antes de uma chave ser configurada. Cada tools/call precisa de uma chave. Sem uma chave válida, o servidor responde 401 com:

This request needs a valid RowAttest API key in the Authorization header.

Conecte seu assistente

Claude Code:

claude mcp add --transport http rowattest https://app.rowattest.com/mcp --header "Authorization: Bearer rak_your_key"

Clientes que leem um bloco mcpServers (Cursor e outros):

{
  "mcpServers": {
    "rowattest": {
      "url": "https://app.rowattest.com/mcp",
      "headers": { "Authorization": "Bearer rak_your_key" }
    }
  }
}

A página de chaves de API no aplicativo mostra configurações prontas para colar para Claude Code, Cursor e mcp-remote.

As seis ferramentas

list_projects

Lista os projetos Supabase conectados a esta conta com id, nome, estado da conexão e se cada um está pronto para executar. Chame esta ferramenta primeiro para obter um project_id.

Entrada: nenhuma

run_review

Inicia uma execução de teste de autorização em um projeto conectado e retorna o run_id e o status. Se o projeto já tiver uma execução aguardando para iniciar, retorna essa execução em vez de iniciar outra. Execuções que não falham contam contra a cota mensal.

Entrada: project_id

get_run_status

Retorna o status de uma execução (na fila, em execução, concluída ou falha), seu estágio atual, carimbos de data/hora e, quando um relatório assinado existe, seu verify_url.

Entrada: run_id

wait_for_run

Aguarda até timeout_seconds (1 a 60) para uma execução terminar e então retorna as mesmas informações que get_run_status. Chame novamente enquanto o status ainda estiver na fila ou em execução.

Entrada: run_id, timeout_seconds (opcional)

get_findings

Retorna as células que não passaram em uma execução concluída que possui um relatório assinado — veredito, superfície, operação, limite, identidade, resultados de camadas e notas — além de sinalizadores de locação e achados bloqueantes. Para uma execução concluída sem relatório assinado, enquanto ainda se pode comprar um na página da execução, retorna o resultado não verificado da execução: o veredito, superfície, operação e principal de cada célula que não passou, as linhas de achados da página da execução, as contagens, as linhas de cobertura e o resumo do modelo de acesso. A lista de células fica vazia quando todas as células testadas passaram. Não contém sugestões de correção: o mecanismo registra apenas o que observou.

Entrada: run_id

get_report

Retorna o relatório assinado completo de uma execução concluída como o JSON armazenado exato, com seu verify_url e report_sha256 (sha256 dos bytes assinados canônicos, a impressão digital mostrada na página de verificação). Use get_findings para a visão compacta.

Entrada: run_id

Uma sessão típica: list_projects → run_review → wait_for_run até o status ser concluída ou falha → get_findings, e get_report quando um relatório assinado existe.

O que uma chave pode e não pode fazer

Crie uma chave na página de chaves de API. Uma chave pode listar seus projetos, iniciar execuções, acompanhá-las e ler achados e o relatório assinado. Ela não pode conectar projetos, alterar configurações ou pagar por nada. Chaves e agentes nunca detêm as credenciais do seu projeto.

Cota

Execuções iniciadas via MCP contam contra a cota mensal da conta, da mesma forma que execuções iniciadas no painel ou pela API REST. Execuções com falha não contam.

Não assinado e assinado

Execuções gratuitas mostram seus resultados na página da execução e pela API, rotulados como não verificados; get_findings retorna esse resultado não verificado. Comprar o relatório assinado de uma execução adiciona o PDF assinado, um link de verificação público e o JSON assinado, que get_report retorna. Qualquer pessoa pode verificar um relatório assinado em seu link de verificação em rowattest.com/verify.

Requisições sem chave

Requisições que precisam de uma chave mas não carregam uma válida são limitadas por taxa. A política de privacidade descreve o que é registrado para isso e por quanto tempo.

Também disponível