riskrouter-recorder
Servidor MCP local que registra as decisões de um agente de IA como evidência. O registro permanece no seu próprio diário; apenas seu SHA-256 com salt vai para um log à prova de adulteração, e sem uma chave nada sai da máquina.
Documentação
riskrouter-recorder
Gravadores plug-and-play para Python e Node, sem dependências, que transformam os logs de decisão que você já mantém em
evidências. Cada registro e seu salt permanecem no seu próprio diário; apenas o SHA-256 com salt do registro e um tipo
curto são enviados para um log de evidências, para que depois qualquer pessoa que possua o registro possa verificar que ele nunca foi alterado. O log pode
ser o da RiskRouter (https://api.riskrouter.eu), sua própria instância, ou nenhum: sem chave, nada é enviado e
o diário mantém tudo.
| Instalação | Leitura | |
|---|---|---|
| Python 3.8+ | pip install riskrouter-recorder | python/README.md |
| Node 20+ | npm install riskrouter-recorder | js/README.md |
O que há neles:
- um gravador com diário local, agrupamento em lote, tentativas e cadeias de completude;
- um handler Python
logging, um decorator (Python) ou wrapper de função (Node), e processadores de span OpenTelemetry; - adaptadores de agente para LangChain e LangGraph e para o OpenAI Agents SDK: um registro por execução, com digests de conteúdo, nunca o conteúdo;
- um servidor MCP local (Node,
riskrouter-recorder-mcp) que oferece a qualquer cliente MCP uma ferramentarecord_decision. Ele registra a própria declaração do agente sobre o que decidiu e marca cada registro como tal; nunca retorna um registro ou um salt ao agente; riskrouter-logseal, que sela um fluxo de log segmento por segmento, eriskrouter-otlp-sealer, que sela spans e registros de log no OpenTelemetry Collector.
npx -y -p riskrouter-recorder riskrouter-recorder-mcp # the local MCP server, over stdio
Nas configurações de um cliente MCP (etapas de configuração para um assistente: llms-install.md):
{ "mcpServers": { "riskrouter-recorder": { "command": "npx",
"args": ["-y", "-p", "riskrouter-recorder", "riskrouter-recorder-mcp"],
"env": { "RISKROUTER_JOURNAL": "/absolute/path/to/evidence-journal.jsonl" } } } }
Suas ferramentas são record_decision, evidence_lookup e evidence_status; apenas record_decision grava, e
nada exclui. Com RISKROUTER_API_KEY definido, o digest com salt de cada registro vai para o log; sem ele, nada
sai da máquina.
A RiskRouter também executa um endpoint MCP hospedado para leitura do log e suas provas, em https://api.riskrouter.eu/mcp
(eu.riskrouter/evidence-log no Registro MCP oficial). Esse é o serviço, não este pacote.
Verificando o que foi registrado
O pacote de um registro é verificado offline, sem a RiskRouter, por qualquer um dos verificadores de código aberto em https://github.com/aniljangrabe-dev/riskrouter-verify. O formato do registro, o digest com salt e as provas do log são especificados em https://riskrouter.eu/spec.
Sobre este repositório
Este repositório é uma cópia exata de recorders/ no repositório próprio da RiskRouter, que é privado; um fluxo de trabalho
copia cada alteração para cá quando ela chega lá. Issues são bem-vindas aqui, e um pull request é lido e, se aceito,
aplicado na fonte e copiado de volta. Relate um problema de segurança como https://riskrouter.eu/security diz, não em
uma issue.
Licença: Apache-2.0 (LICENSE), como os verificadores, a suíte de conformidade e o kit de integração. O
serviço RiskRouter em si não é licenciado.