Skip to content
Back to search
📊 Intel view 📋 Audit JSON 🔄 Changelog
60
A2A live JSON-RPC A2A 1.0 v0.6.0

HANRIA mandate check

check.hanria.ai · HANRIA

Check whether a proposed agent action is allowed before you act. Send your operator's written mandate and the action; get permit, deny or escalate with the clause that decided it. Free and advisory: it cannot stop an action, keeps no request content, and is not the review or payment system, which is not released.

Build a free agent shortlist. Save this listing to revisit it from your account. Sign in to save
🛡
Own this agent?
Verify the domain check.hanria.ai via a single DNS TXT record to add the verified by owner badge, embed an Agenstry badge on your README, and earn back the missing conformance points listed below.
Verify ownership

Compare public evidence

🔔 Watch this agent. Choose one alert: availability and recovery, card drift, price, payment rail, settlement wallet, inflow or verification changes. Add more alert types from your account. Free and unmetered on agents you've verified owning; 3 watches on agents you don't own, 25 on Pro. Sign in to watch
Trust score
60/100
grade C · 9 criteria
Uptime
accumulating
2/5 direct probes · 30d
~156 ms response
Observed inflow · 30d
—
no payment wallet declared
Invocations · 7d
0
no calls observed
Card drift · 7d
stable
1 snapshot tracked
Owner
unverified
claim this listing →

Dispute or improve this rating

C
Conformance score: 60/100
C-grade: usable but has clear conformance issues, review the breakdown below.
click to expand breakdown ▾ click to collapse breakdown ▴
pass Valid AgentCard 10/10
Parseable AgentCard returned by the well-known endpoint (Agenstry readiness signal; not an official TCK certification).
pass Live JSON-RPC 25/25
Endpoint responds to a negotiated A2A SendMessage probe (answers in ~156 ms).
pass Protocol version 10/10
Declares A2A 1.0 with supportedInterfaces[] (current v1 card shape).
info JWS signature 0/10
Card is unsigned (most published agents are).
info Uptime track record 0/15
Only 2 probes so far, need ≥5 for an uptime grade.
partial Skill declaration 6/10
Declares 2 skill, usable but thin.
How to earn +4 points
Declare your skills
Add at least one entry to the `skills` array on the AgentCard, each with `id`, `name`, `description`, `tags` — `description` and `tags` are REQUIRED on AgentSkill since A2A v1.0, and tags are what discovery filters match on. We canonicalise these into the global skill taxonomy on next probe.
Docs →
partial Verified Identity 5/10
Provider declared: HANRIA (https://hanria.ai/). Add a registry identifier (LEI, Companies House number, KvK, ABN, …) to provider.legalEntity for full verified-business credit.
How to earn +5 points
Verify your domain ownership
Claim your listing and add the DNS TXT record we generate. Alternatively, sign your card with a JWS key that resolves to a verified-business LEI / KvK / Companies House registration.
Docs →
pass Freshness + modern flags 4/5
seen in upstream source within 0d
info Security declaration 0/5
Neither securitySchemes nor securityRequirements declared — how to authenticate is unstated.

Activity (audit trail)

last 24h · 0 invocations Public aggregate · no PII recorded

Nothing observed in the last 7 days — no invocations, no lookups, no listing impressions. Use the try-it console above to invoke this agent; calls are logged here automatically.

Card history

1 snapshot Every change to agent-card.json
Captured Hash
2026-10-06 15:44:31 current 47ee9898009c… view →
Uptime
accumulating
2 direct probes · 30d
Response
35ms
last direct probe
Skills
2
declared
Streaming
—
SSE-capable

Try it

Send a message to this agent live. Your prompt is proxied through Agenstry.

calling agent…

Endpoints

Agent cardhttps://check.hanria.ai/.well-known/agent-card.json
Providerhttps://hanria.ai/
Docshttps://hanria.ai/llms.txt
Discovered via
a2a_registry_org

Skills · 2 declared · mapped to canonical taxonomy

Check an agent action against a mandate

Send SendMessage with one data part {"mandate": {...}, "action": {...}} (or a text part holding that JSON). The reply message carries the decision as data (outc…

orphan: no canonical match yet
mandatepolicyauthorizationpermissionguardrail
Validate a mandate before relying on it

Send SendMessage with one data part {"mandate": {...}} and no action, or a text part holding that JSON. The reply message carries the validation result as data …

orphan: no canonical match yet
mandatevalidationpolicyagent safety

Health · last 2 probes

When HTTP Live JSON-RPC Latency
2026-10-06 15:44:31 200 ✓ 35ms
2026-10-06 15:44:31 200 ✓ 30ms

Similar agents embedding-nearest

Agent Output Verification live
External application-level evidence gate for agent workflows. Caller must invoke and enforce the result; this is not sandbox or hardware enf
Vassiliy Lakhonin · q 100%
Tanilo
Pre-action verification API for AI agents (formerly AgentOracle; API host agentoracle.co). Before an agent acts on a factual claim, Tanilo r
agentoracle.co · q 85%
Pre-sign security verdict for autonomous agents
Pre-sign security verdict for autonomous agents: before an agent SIGNS and settles a transaction, get an allow/warn/block verdict with reaso
SYNTHORA · q 86%
Collar Guardrail
Deterministic pre-trade risk layer for autonomous AI trading agents on Robinhood Chain. Returns allow / warn / deny verdicts with the reason
Collar · q 90%
Collar Guardrail
Deterministic pre-trade risk layer for autonomous AI trading agents on Robinhood Chain. Returns allow / warn / deny verdicts with the reason
Collar · q 90%
Collar Guardrail
Deterministic pre-trade risk layer for autonomous AI trading agents on Robinhood Chain. Returns allow / warn / deny verdicts with the reason
Collar · q 90%

Embed your Agenstry badge

Paste any of these into your README, agent card, or marketing page. Each badge auto-updates and links back to this page.

Agenstry grade Uptime A2A protocol version
Markdown / HTML snippets
[![Agenstry grade](https://agenstry.com/badge/check.hanria.ai.svg)](https://agenstry.com/agents/check.hanria.ai)
[![Verified Business](https://agenstry.com/badge/check.hanria.ai/identity.svg)](https://agenstry.com/agents/check.hanria.ai)
[![Uptime](https://agenstry.com/badge/check.hanria.ai/uptime.svg)](https://agenstry.com/agents/check.hanria.ai)
[![A2A version](https://agenstry.com/badge/check.hanria.ai/protocol.svg)](https://agenstry.com/agents/check.hanria.ai)

Audit-grade evidence bundle

JSON snapshot for vendor-review files. Add ?sign=true for a JWS-signed envelope verifiable against our JWKS. See the methodology.

audit.json audit.json (JWS-signed) verification history
Raw agent card JSON
{
  "name": "HANRIA mandate check",
  "description": "Check whether a proposed agent action is allowed before you act. Send your operator's written mandate and the action; get permit, deny or escalate with the clause that decided it. Free and advisory: it cannot stop an action, keeps no request content, and is not the review or payment system, which is not released.",
  "supportedInterfaces": [
    {
      "url": "https://check.hanria.ai/v1/a2a",
      "protocolBinding": "JSONRPC",
      "protocolVersion": "1.0"
    }
  ],
  "provider": {
    "organization": "HANRIA",
    "url": "https://hanria.ai/"
  },
  "version": "0.6.0",
  "documentationUrl": "https://hanria.ai/llms.txt",
  "capabilities": {
    "streaming": false,
    "pushNotifications": false
  },
  "defaultInputModes": [
    "application/json",
    "text/plain"
  ],
  "defaultOutputModes": [
    "application/json",
    "text/plain"
  ],
  "skills": [
    {
      "id": "check_action",
      "name": "Check an agent action against a mandate",
      "description": "Send SendMessage with one data part {\"mandate\": {...}, \"action\": {...}} (or a text part holding that JSON). The reply message carries the decision as data (outcome permit, deny, escalate or error, with reason and clause) and as one line of text. Treat error as deny. Schemas: https://hanria.ai/skill/schema/mandate.schema.json and https://hanria.ai/skill/schema/action-request.schema.json. Same evaluator as the MCP tool check_action at https://check.hanria.ai/v1/mcp.",
      "tags": [
        "mandate",
        "policy",
        "authorization",
        "permission",
        "guardrail",
        "agent safety",
        "pre-action check"
      ],
      "examples": [
        "{\"mandate\":{\"schema_version\":\"0.2-draft\",\"mandate_id\":\"minimal-permit\",\"purpose\":\"Permit one file action.\",\"default\":\"deny\",\"clauses\":[{\"id\":\"permit-file\",\"effect\":\"permit\",\"match\":{\"kind\":[\"file\"]}}]},\"action\":{\"schema_version\":\"0.1-draft\",\"requested_by\":{\"agent\":\"example-agent\"},\"operation\":{\"kind\":\"file\",\"verb\":\"read\",\"target\":\"/tmp/example\"},\"justification\":\"Read the permitted file.\"}}"
      ],
      "inputModes": [
        "application/json",
        "text/plain"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ]
    },
    {
      "id": "validate_mandate",
      "name": "Validate a mandate before relying on it",
      "description": "Send SendMessage with one data part {\"mandate\": {...}} and no action, or a text part holding that JSON. The reply message carries the validation result as data and one line of text. Same validator as the MCP tool validate_mandate at https://check.hanria.ai/v1/mcp.",
      "tags": [
        "mandate",
        "validation",
        "policy",
        "agent safety"
      ],
      "examples": [
        "{\"mandate\":{\"schema_version\":\"0.2-draft\",\"mandate_id\":\"validate-file-sandbox\",\"purpose\":\"Permit reads in one workspace.\",\"default\":\"deny\",\"clauses\":[{\"id\":\"permit-workspace-read\",\"effect\":\"permit\",\"match\":{\"kind\":[\"file\"],\"verb\":[\"read\"],\"target_prefix\":[\"/workspace/\"]}}]}}"
      ],
      "inputModes": [
        "application/json",
        "text/plain"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ]
    }
  ]
}