Usa PKCE (S256) mesmo em clientes confidenciais. Valida `state` e `nonce`. Nunca aceites `id_token` sem verificar `iss`, `aud`, `exp` e assinatura via JWKS.
O manual que os agentes conseguem ler — e citar.
21 tools que servem o programa SbD-ToE aos agentes. Grounding determinístico — cita IDs reais (AUT-001, CTRL-…, MT-…), nunca inventa. Quando não sabe, diz que não sabe.
Release npm atual · v0.10.1
# 1. Run the MCP server locally
$ npx -y @shiftleftpt/sbd-toe-mcp
# 2. Point your MCP client to it (Claude, Cursor, Copilot, Windsurf, Zed)Escolher um papel. Ver o que o agente recebe.
Mesma pergunta, papel diferente — resposta determinística, com ID citável e o porquê tirado do manual. 13 papéis no manual, 8 na demo.
// AUT-001 · PKCE + state + nonce
const state = crypto.randomBytes(32).toString("base64url");
const nonce = crypto.randomBytes(32).toString("base64url");
const verifier = crypto.randomBytes(64).toString("base64url");
const challenge = crypto
.createHash("sha256").update(verifier).digest("base64url");
session.oauth = { state, nonce, verifier }; // httpOnly cookie
return redirect(authorizeUrl({
client_id, redirect_uri, scope: "openid email",
state, nonce,
code_challenge: challenge,
code_challenge_method: "S256",
}));✓ PKCE S256 obrigatório ✓ state e nonce validados server-side ✓ id_token verificado contra JWKS (iss, aud, exp) ✓ tokens em cookie httpOnly + SameSite=Lax ✗ Nunca guardar access_token em localStorage
Vê o use case completo de cada papel.
A demo mostra 8 papéis. A página de use cases tem os 13, com a dor real, a tool MCP chamada e os IDs envolvidos.
Ver todos os use casesLLM sozinho vs. LLM + SbD-ToE MCP
- · Resposta plausível, sem fonte
- · Cobertura imprevisível
- · Sem IDs citáveis
- · Não auditável
- ✓ Resposta com CTRL-* / REQ-* / THR-* / ART-*
- ✓ Cobertura preservada
- ✓ Snapshot versionado do manual
- ✓ Justificação tirada do manual
Licenciamento
Apache-2.0 para o código/runtime. CC BY-SA 4.0 para os snapshots de manual incluídos. Open core: o genérico é livre; o específico da organização é o serviço.
