Skip to main content
The bearer grant agent runtimes carry on every MCP tool call. Issued by the OAuth Authorization Server (Ory Hydra in production; HMAC-SHA256 in development). Verified by @glideco/grant-wrapper on every tool invocation per the F3 IRON RULE.

Canonical URL

https://glide.co/schemas/agent-banking/v1/grant.json (alias of scoped-grant-claims).

Required claims

Validation contract

@glideco/grant-wrapper re-validates every grant on every tool invocation:
  1. JWT signature — verified against the AS’s JWKS.
  2. exp not in past — bearer expiry.
  3. exp - iat ≤ 3600 — max TTL enforcement.
  4. aud.vault_id present + matches the resource indicator on the request — RFC 8707 enforcement.
  5. act.sub corresponds to a registered agent — DB lookup.
  6. F3 IRON RULE — fresh-read tenant verification. Re-reads the principal’s tenant from DB. Cached grant alone NEVER authorizes.
  7. policy_version matches the current envelope — mismatch raises PolicyStaleError (F5).

Step-up extension

When the requested tool action exceeds the envelope’s step_up_threshold_usd_cents, the gateway returns JSON-RPC -32003 with a step_up_url. The principal completes biometric approval; the gateway issues a step_up_sigil (single-use, F7); the agent retries with the sigil.

Example

Reading list