dsh-duty-separation-proof
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@dsh-duty-separation-proofCheck if this DSH workflow meets its duty-separation policy"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
dsh-duty-separation-proof
Offline, deterministic evidence that one supplied DSH workflow kept declared duties apart. It validates exact request/approval/execution/observation order, hash-bound object and workflow identity, receipt-chain continuity, disjoint principal sets, approval quorum, principal/observer diversity and freshness. It writes only a redacted, content-addressed JSON verdict.
This is not an authorization system. It does not grant roles, approve requests, execute changes, authenticate receipts, inspect live systems, or prove that the supplied ledger is exhaustive.
Why this is a separate layer
NIST distinguishes static, dynamic, object-based, operational and history-based separation of duties. This plugin implements a narrow post-hoc evidence layer for one supplied workflow object. It complements:
dsh-guarded-hcl, whose separation is specific to optimizer/evaluator/policy/commit-controller boundaries;dsh-decision-effect-proof, which reconciles authorization decisions with effects;dsh-artifact-promotion-proof, which verifies an artifact's promotion chain;dsh-access-review-proof, which verifies entitlement recertification closure.
Here, the question is only: did the supplied hash-linked workflow receipts satisfy the declared duty-conflict policy?
Related MCP server: dsh-schema-migration-proof
Use
npm test
npm run check
node bin/dsh-duty-separation-proof.mjs inspect examples/settled.json
node bin/dsh-duty-separation-proof.mjs verify examples/settled.jsonThe DSH bundle exposes dsh_duty_separation_inspect and dsh_duty_separation_verify. The standalone MCP server exposes equivalent proof-only inline tools.
Manifest boundary
All workflow, object, revision, policy, principal, observer and receipt identities are lowercase SHA-256 values. The only public identifier is a bounded proofId, and reports contain only its hash. The required sequence starts with request, contains execute, ends with observe, and may contain multiple approve stages. disjointDutySets and quorum thresholds are explicit policy input.
Reports intentionally say authenticatesReceipts: false, provesLedgerExhaustive: false, and provesAbsenceOfUndeclaredActions: false.
References
MIT licensed.
This server cannot be deployed
Maintenance
Related MCP Connectors
Deterministic pre-execution audit for trading agents. PASS/WAIT/FAIL, reproducible verdict_hash.
Read-only verifier for 25 ProofRelay MCP tools and non-confidential evidence bundles.
- kanonikOAuthai.kanonik
Governance runtime for compliance: verified, human-approved writes to a tamper-evident record.
Verify before your agent acts on data it paid for. Signed verdicts, checkable offline, via x402.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceDeterministic pre-execution audit for trading agents. PASS/WAIT/FAIL, reproducible verdict_hash.53MIT
- AlicenseNot gradedqualityCmaintenanceLets users inspect and verify content-addressed schema migration evidence offline, checking idempotence, reversible rollback, required invariants, and explicit lossy-field disclosure without executing migrations or accessing data.MIT
- AlicenseNot gradedqualityCmaintenanceEnables verification of deployment-scoped model-visible DSH tool surface conformance by checking recorded tool identities and schemas against approved locks, reporting only drift categories and hashes.MIT
- AlicenseNot gradedqualityCmaintenanceEnables offline, deterministic verification that one immutable artifact followed a declared build-to-production promotion chain, using only hash-based evidence and failing closed on incomplete or nonconformant gate records.MIT