trust-gate-mcp

Recibos pós-quânticos e à prova de violação para ações consequentes de agentes (Ed25519 + ML-DSA-65, verificáveis offline).

Documentação

Trust Gate MCP

Receitas pós-quânticas e à prova de adulteração para ações consequentes de agentes, como um servidor MCP.

Sete ferramentas, um primitivo de assinatura compartilhado: o OpenAgentOntology de código aberto mint_receipt.

O que é realmente assinado depende do que você instala — o OAO detecta seu backend no momento da importação, então vale a pena afirmar isso claramente em vez de anunciar o melhor caso:

InstalaçãoPernasObservações
pip install trust-gate-mcpEd25519 + ML-DSA-65 (FIPS 204)Padrão. Python puro (dilithium-py), sem toolchain nativo. Atende ao modo PQ-required.
pip install "trust-gate-mcp[slh]"Ed25519 + ML-DSA-65 + SLH-DSA (FIPS 205)Adiciona a perna de diversidade baseada em hash via liboqs, que sobrevive a uma quebra de reticulado. Dependência nativa.

A verificação PQ-required (padrão) exige pelo menos uma perna pós-quântica verificada, então o padrão de duas pernas é uma postura pós-quântica real, não um rebaixamento — mas apenas a instalação [slh] oferece a terceira perna baseada em hash.

FerramentaO que faz
mint_receipt_for_record_changeEmite uma receita pós-quântica para uma alteração de registro no CRM. Funciona com qualquer CRM (Relaticle open-core, CRMs hospedados via seus próprios MCP, personalizados). Valores antigos/novos são hashes SHA-256.
audit_my_agent_inventoryClassifica uma lista FORNECIDA PELO CHAMADOR de ferramentas MCP pelo pior arrependimento se elas agirem. Somente leitura. Não pode descobrir automaticamente outros servidores — o protocolo MCP não permite isso.
mint_action_receiptReceita pós-quântica para qualquer ação consequente de agente.
verify_receiptVerifica uma receita apenas pelo certificado — offline, sem banco de dados. Padrão no modo PQ-required.
gate_decisionPortão de decisão em duas fases. PREVIEW retorna avaliação de risco + preview_id sem agir. COMMIT verifica se as entradas correspondem e emite uma receita à prova de adulteração com permissão de execução.
check_egressClassificação de egresso. Examina dados em busca de marcadores de sensibilidade e classifica como PÚBLICO / INTERNO / CONFIDENCIAL / RESTRITO. Bloqueia RESTRITO. Retorna classificação + informações de retenção + receita.
run_exit_drillExercício de prontidão para saída de fornecedor. Verifica chave de assinatura local, acesso a modelo local (Ollama) e exportação de dados local. Retorna resultados passo a passo + receita. Informativo, sem efeitos colaterais.

Endurecimento Quântico (implementação de referência pol.must_do.150)

  • H1 persistência de chave + bootstrap com verificação de deriva de kid FAIL-CLOSED
  • H2 limite de taxa token-bucket por IP (endurecido contra DoS: evicção FIFO + limite de corpo)
  • H3 verificação PQ-required (derrota ataques de rebaixamento por remoção de assinatura)
  • H4 kid de 128 bits em cada receita emitida (verificação offline do mesmo notário)
  • Alternância opcional de autenticação bearer + CORS restrito via TRUST_GATE_BEARER_TOKEN + TRUST_GATE_ALLOWED_ORIGINS
  • 33/33 testes incluindo simulações adversariais de remoção de PQ + rotação de IP

Consulte PUBLISH.md para a tabela completa de status de endurecimento.

Instalação (stdio)

pip install trust-gate-mcp
trust-gate-mcp

Adicione [slh] para a terceira perna baseada em hash. A partir de um checkout, pip install -e ".[dev]" e depois python -m trust_gate_mcp.

Implantação em contêiner (Smithery / qualquer host de contêiner)

docker build -t trust-gate-mcp .
docker run -p 8081:8081 -v trust-gate-data:/data/oao trust-gate-mcp

A montagem de volume em /data/oao é obrigatória para produção — sem ela, a chave de assinatura rotaciona a cada reinicialização e quebra cadeias de verificação de longa duração. O key_metadata.json persistente armazena o kid do notário; a etapa de bootstrap se recusa a iniciar se houver deriva.