Skip to content
LogoLogo

Nava Guardian developer overview

Developer Preview

The preview version of Nava Guardian is verdict-only and advisory. See Execution safety for the handoff from verdict to execution.

Integrate Guardian through the Nava MCP server when an agent needs verification tools, or through @navalabs/sdk when application code owns the workflow. Both paths submit an exact structured action and wait for a terminal verdict without exposing Guardian's internal transport to the rest of your application.

Choose an integration

Use the supported boundary

The supported integration boundary is intentionally small:

  • your application constructs the exact action;
  • the MCP server or SDK requests a Guardian verdict and waits within a bounded deadline;
  • the integration checks the full approval envelope before handing the action back; signing and venue submission remain outside Guardian.

Integration sequence

Register and scope the agent

Register the agent and its verification wallet, then activate a narrow policy.

Choose MCP or the SDK

Use MCP for agent-native tool use. Use the TypeScript SDK when application code owns the verification flow.

Build the exact action

Construct the venue-native action the agent proposes to execute. The human-readable description is for audit records, not policy reasoning.

Request and await a verdict

Use await-verification in MCP or call requestVerification() followed by waitForVerification() in the SDK. Keep the action paused when the result is pending, missing, malformed, unavailable, rejected, or timed out.

Continue only after approval

For the SDK, require status: "APPROVED", canExecute: true, verdict.outcome: "approved", and verdict.reasonCode: "allowed". For MCP await-verification, require the same fields plus success: true. Any mismatch is blocked. An EXECUTED, REJECTED, or FAILED result remains blocked even if it carries an earlier approved verdict. Approval applies only to the exact action Guardian evaluated. A new or changed action needs its own verdict. Guardian never signs or submits it.

Authentication

Use a provisioned agent API key with the least-privilege verdicts:create:own scope. Supply it to the MCP server or SDK through the host's secret store or environment. Never put it in a prompt, source file, query string, request body, application log, or example output.