AxioRank: Zero-Trust for AI Agents
Zero-trust gateway for AI agents: score tool calls, verify agent cards, enforce policy, audit.
Sollte ich dies verwenden
Qualität und Sicherheit
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"axiorank": {
"url": "https://app.axiorank.com/api/mcp-server/mcp"
}
}
}Remote-Endpunkte
https://app.axiorank.com/api/mcp-server/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (22)
🟢axiorank_score_tool_call(tool, arguments, phase, resultText, promptText, ...)
Inspect a proposed agent tool call BEFORE executing it. AxioRank scores its risk (0–100), runs content inspection (secrets, PII, destructive ops, prompt-injection, egress), applies your policies, records an audit log, and returns a decision: `allow`, `deny`, or `hold`. On `hold`, a human must approve. Poll `axiorank_check_approval` with the returned `approvalId`. Call this in your tool-use loop and refuse or wait on any non-`allow` decision. Requires the `gateway:write` scope.
Eingabe-Schema
{
"type": "object",
"properties": {
"tool": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"arguments": {
"default": {},
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"phase": {
"default": "request",
"type": "string",
"enum": [
"request",
"result",
"prompt",
"completion"
]
},
"resultText": {
"type": "string",
"maxLength": 200000
},
"promptText": {
"type": "string",
"maxLength": 200000
},
"completionText": {
"type": "string",
"maxLength": 200000
},
"context": {
"type": "string",
"maxLength": 200000
},
"costUsd": {
"type": "number",
"minimum": 0,
"maximum": 1000000
},
"model": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"inputTokens": {
"type": "integer",
"minimum": 0,
"maximum": 100000000
},
"outputTokens": {
"type": "integer",
"minimum": 0,
"maximum": 100000000
},
"durationMs": {
"type": "integer",
"minimum": 0,
"maximum": 86400000
},
"intent": {
"type": "string",
"minLength": 1,
"maxLength": 1000
},
"taintHandle": {
"type": "string",
"maxLength": 16384
},
"passport": {
"type": "boolean"
},
"source": {
"type": "string",
"enum": [
"sdk",
"mcp",
"coding-agent",
"browser-agent"
]
},
"traceId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"stepIndex": {
"type": "integer",
"minimum": 0,
"maximum": 100000
},
"sessionId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"metadata": {
"type": "object",
"propertyNames": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"additionalProperties": {
"anyOf": [
{
"type": "string",
"maxLength": 256
},
{
"type": "number"
},
{
"type": "boolean"
}
]
}
},
"parentStepIndex": {
"type": "integer",
"minimum": 0,
"maximum": 100000
}
},
"required": [
"tool"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪axiorank_verify_card(url, document, protocol)
Vet a remote agent or tool's identity card (A2A Agent Card, MCP server card, OAuth metadata, x402, …) BEFORE connecting to it. Supply EITHER `url` (AxioRank fetches the card) OR an inline `document`. AxioRank verifies signatures, scores supply-chain risk, folds in cross-tenant threat intel, and returns `allow` / `review` / `deny` with the resolved identity, capabilities and auth. Use it as a connection preflight. Requires the `cards:verify` scope.
Eingabe-Schema
{
"type": "object",
"properties": {
"url": {
"type": "string",
"maxLength": 2048,
"format": "uri"
},
"document": {},
"protocol": {
"type": "string",
"enum": [
"a2a",
"mcp",
"oauth",
"api-catalog",
"x402",
"acp",
"ucp",
"mpp",
"did",
"acp-comm",
"anp",
"agntcy-slim",
"authmd",
"ap2",
"content-permission",
"agntcy-directory",
"nlweb",
"ans",
"agent-skills",
"webmcp",
"nanda",
"vc",
"visa-tap",
"spiffe",
"agents-json",
"l402",
"oid4vci",
"authzen",
"mc-agent-pay",
"visa-intelligent-commerce",
"skyfire",
"nekuda",
"amex-agent-pay",
"paypal-agentic-checkout"
]
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢axiorank_check_approval(approvalId)
Poll the verdict of a held (`hold`) tool call. Pass the `approvalId` returned by `axiorank_score_tool_call`. Blocks briefly server-side and returns as soon as an operator approves/denies; otherwise returns the still-`pending` status so you can call again. Requires the `gateway:write` scope and the same agent key that made the original call.
Eingabe-Schema
{
"type": "object",
"properties": {
"approvalId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "The approvalId returned by axiorank_score_tool_call when the decision was 'hold'."
}
},
"required": [
"approvalId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢axiorank_get_protocol_coverage
List the agent-interop protocols AxioRank can govern (A2A, MCP, OAuth, x402, DIDs, robots.txt/llms.txt, AP2, …), grouped into six planes, each with coverage status (live/beta/planned) and direction (inbound/outbound/both). Use this to discover what AxioRank speaks before wiring up card verification or inbound bot management.
Eingabe-Schema
{
"type": "object",
"properties": {}
}🟢axiorank_get_health
Liveness/readiness probe for the AxioRank control plane (API + database reachability). Returns `status: ok|degraded`.
Eingabe-Schema
{
"type": "object",
"properties": {}
}🟢axiorank_list_agents
List the active agents in your AxioRank workspace (id, name, labels, quarantine + last-used status). Use this to find an agent's id before calling agent-specific tools. Requires the `agents:read` scope.
Eingabe-Schema
{
"type": "object",
"properties": {}
}🟢axiorank_get_agent(agentId)
Fetch one agent's posture (quarantine state, labels, last-used, revocation) by id, scoped to your workspace. Requires the `agents:read` scope.
Eingabe-Schema
{
"type": "object",
"properties": {
"agentId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "The agent's UUID (from axiorank_list_agents)."
}
},
"required": [
"agentId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴axiorank_quarantine_agent(agentId, quarantine)
Reversible kill switch: quarantine an agent so the gateway DENIES all of its tool calls, or release it. Set `quarantine: false` to restore. Requires the `agents:write` scope.
Eingabe-Schema
{
"type": "object",
"properties": {
"agentId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "The agent's UUID (from axiorank_list_agents)."
},
"quarantine": {
"type": "boolean",
"description": "true = quarantine (deny all its calls); false = release."
}
},
"required": [
"agentId",
"quarantine"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴axiorank_revoke_agent(agentId)
Permanently revoke an agent: its API keys stop authenticating immediately (incident response). Irreversible. Issue a new agent to restore access. Its audit history is kept. Requires the `agents:write` scope. Prefer `axiorank_quarantine_agent` for a reversible pause.
Eingabe-Schema
{
"type": "object",
"properties": {
"agentId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "The agent's UUID (from axiorank_list_agents)."
}
},
"required": [
"agentId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢axiorank_list_policies
List the outbound governance policies in your workspace (enabled or not), each with its tool pattern, action (allow/deny/require_approval/redact), risk threshold, priority and enabled flag. Requires the `policies:read` scope.
Eingabe-Schema
{
"type": "object",
"properties": {}
}🟢axiorank_get_policy(policyId)
Fetch one outbound policy by id, scoped to your workspace. Requires the `policies:read` scope.
Eingabe-Schema
{
"type": "object",
"properties": {
"policyId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "The policy's UUID (from axiorank_list_policies)."
}
},
"required": [
"policyId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡axiorank_create_policy(name, toolPattern, action, riskThreshold, signalCategory, ...)
Create an outbound governance policy. It is created DISABLED so an LLM can never arm enforcement unattended. Review it (axiorank_get_policy) then enable it with axiorank_update_policy. `toolPattern` is a glob over tool names; `action` is allow / deny / require_approval / redact (redact masks PII in a model completion). Requires the `policies:write` scope.
Eingabe-Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"toolPattern": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"action": {
"type": "string",
"enum": [
"allow",
"deny",
"require_approval",
"redact"
]
},
"riskThreshold": {
"default": null,
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 100
},
{
"type": "null"
}
]
},
"signalCategory": {
"anyOf": [
{
"type": "string",
"enum": [
"secret",
"pii",
"destructive",
"injection",
"egress",
"malware",
"financial"
]
},
{
"type": "null"
}
]
},
"context": {
"anyOf": [
{
"type": "object",
"properties": {
"ip": {
"type": "object",
"properties": {
"anyOf": {
"minItems": 1,
"maxItems": 64,
"type": "array",
"items": {
"type": "string",
"minLength": 1
}
},
"negate": {
"type": "boolean"
}
},
"required": [
"anyOf"
]
},
"geo": {
"type": "object",
"properties": {
"anyOf": {
"minItems": 1,
"maxItems": 64,
"type": "array",
"items": {
"type": "string",
"pattern": "^[A-Za-z]{2}$"
}
},
"negate": {
"type": "boolean"
}
},
"required": [
"anyOf"
]
},
"time": {
"type": "object",
"properties": {
"windows": {
"minItems": 1,
"maxItems": 32,
"type": "array",
"items": {
"type": "object",
"properties": {
"days": {
"type": "array",
"items": {
"type": "integer",
"minimum": 0,
"maximum": 6
}
},
"start": {
"type": "string",
"pattern": "^\\d{1,2}:\\d{2}$"
},
"end": {
"type": "string",
"pattern": "^\\d{1,2}:\\d{2}$"
}
},
"required": [
"start",
"end"
]
}
},
"negate": {
"type": "boolean"
},
"tz": {
"type": "string",
"minLength": 1,
"maxLength": 64
}
},
"required": [
"windows"
]
},
"resource": {
"type": "object",
"properties": {
"environment": {
"type": "object",
"properties": {
"anyOf": {
"minItems": 1,
"maxItems": 4,
"type": "array",
"items": {
"type": "string",
"enum": [
"production",
"staging",
"development",
"unknown"
]
}
},
"negate": {
"type": "boolean"
}
},
"required": [
"anyOf"
]
},
"type": {
"type": "object",
"properties": {
"anyOf": {
"minItems": 1,
"maxItems": 5,
"type": "array",
"items": {
"type": "string",
"enum": [
"database",
"http_api",
"filesystem",
"messaging",
"other"
]
}
},
"negate": {
"type": "boolean"
}
},
"required": [
"anyOf"
]
},
"host": {
"type": "object",
"properties": {
"anyOf": {
"minItems": 1,
"maxItems": 64,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 120
}
},
"negate": {
"type": "boolean"
}
},
"required": [
"anyOf"
]
}
}
},
"agent": {
"type": "object",
"properties": {
"ids": {
"type": "object",
"properties": {
"anyOf": {
"minItems": 1,
"maxItems": 64,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 120
}
},
"negate": {
"type": "boolean"
}
},
"required": [
"anyOf"
]
},
"labels": {
"type": "object",
"properties": {
"anyOf": {
"minItems": 1,
"maxItems": 64,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 120
}
},
"negate": {
"type": "boolean"
}
},
"required": [
"anyOf"
]
},
"attributes": {
"type": "object",
"propertyNames": {
"type": "string",
"minLength": 1,
"maxLength": 60
},
"additionalProperties": {
"type": "object",
"properties": {
"anyOf": {
"minItems": 1,
"maxItems": 64,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 120
}
},
"negate": {
"type": "boolean"
}
},
"required": [
"anyOf"
]
}
}
}
},
"mlThreatClass": {
"type": "object",
"properties": {
"anyOf": {
"minItems": 1,
"maxItems": 6,
"type": "array",
"items": {
"type": "string",
"enum": [
"prompt_injection",
"jailbreak",
"data_exfiltration",
"malware",
"social_engineering",
"policy_violation"
]
}
}
},
"required": [
"anyOf"
]
},
"novelty": {
"type": "object",
"properties": {
"gte": {
"type": "number",
"minimum": 0,
"maximum": 1
}
},
"required": [
"gte"
]
},
"agentRisk": {
"type": "object",
"properties": {
"gte": {
"type": "number",
"minimum": 0,
"maximum": 100
}
},
"required": [
"gte"
]
},
"agentDaysOld": {
"type": "object",
"properties": {
"lte": {
"type": "number",
"minimum": 0,
"maximum": 3650
}
},
"required": [
"lte"
]
},
"budget": {
"type": "object",
"properties": {
"metric": {
"type": "string",
"enum": [
"calls",
"cost_usd"
]
},
"window": {
"type": "string",
"enum": [
"hour",
"day",
"month"
]
},
"gte": {
"type": "number",
"minimum": 0,
"maximum": 1000000000
}
},
"required": [
"metric",
"window",
"gte"
]
},
"model": {
"type": "object",
"properties": {
"anyOf": {
"minItems": 1,
"maxItems": 64,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 120
}
},
"negate": {
"type": "boolean"
}
},
"required": [
"anyOf"
]
},
"callCostUsd": {
"type": "object",
"properties": {
"gte": {
"type": "number",
"minimum": 0,
"maximum": 1000000
}
},
"required": [
"gte"
]
},
"args": {
"minItems": 1,
"maxItems": 10,
"type": "array",
"items": {
"type": "object",
"properties": {
"path": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"anyOf": {
"minItems": 1,
"maxItems": 64,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 200
}
},
"glob": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"regex": {
"type": "string",
"minLength": 1,
"maxLength": 512
},
"contains": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"gte": {
"type": "number"
},
"lte": {
"type": "number"
},
"gt": {
"type": "number"
},
"lt": {
"type": "number"
},
"exists": {
"type": "boolean"
},
"negate": {
"type": "boolean"
}
},
"required": [
"path"
]
}
},
"ifc": {
"type": "object",
"properties": {
"propagation": {
"type": "string",
"enum": [
"explicit",
"coarse"
]
},
"sinkTypes": {
"minItems": 1,
"maxItems": 3,
"type": "array",
"items": {
"type": "string",
"enum": [
"egress",
"destructive",
"state_change"
]
}
},
"destinations": {
"minItems": 1,
"maxItems": 64,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 253
}
},
"sourceTags": {
"minItems": 1,
"maxItems": 16,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 60
}
}
}
},
"commerce": {
"type": "object",
"properties": {
"onViolation": {
"type": "boolean"
}
}
},
"chain": {
"type": "object",
"properties": {
"anyOf": {
"minItems": 1,
"maxItems": 3,
"type": "array",
"items": {
"type": "string",
"enum": [
"exfiltration",
"recon_then_destroy",
"injection_then_action"
]
}
},
"valueConfirmed": {
"type": "boolean"
},
"minSeverity": {
"type": "string",
"enum": [
"low",
"medium",
"high",
"critical"
]
}
}
}
}
},
{
"type": "null"
}
]
},
"priority": {
"default": 100,
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"enforcementMode": {
"default": "enforce",
"type": "string",
"enum": [
"monitor",
"enforce"
]
}
},
"required": [
"name",
"toolPattern",
"action"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡axiorank_update_policy(policyId, enabled, name, priority)
Update an existing policy: enable/disable it, rename it, or change its priority. (Other fields are edited in the dashboard.) Requires the `policies:write` scope.
Eingabe-Schema
{
"type": "object",
"properties": {
"policyId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "The policy's UUID (from axiorank_list_policies)."
},
"enabled": {
"description": "Arm (true) or disarm (false) the policy.",
"type": "boolean"
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"priority": {
"description": "Lower runs first; ties broken by creation order.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
}
},
"required": [
"policyId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢axiorank_search_audit_logs(decision, source, agentId, tool, minRisk, ...)
Search your workspace's governance audit trail, newest first, with filters: decision (allow/deny/hold), source (sdk/mcp), agentId, tool name (substring), minimum risk, and a time window (ISO `from`/`to`). Payloads are already secret-redacted. Use it to answer questions like "show denied tool calls in the last 24h". Requires the `logs:read` scope.
Eingabe-Schema
{
"type": "object",
"properties": {
"decision": {
"type": "string",
"enum": [
"allow",
"deny",
"hold"
]
},
"source": {
"type": "string",
"enum": [
"sdk",
"mcp",
"coding-agent",
"browser-agent"
]
},
"agentId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"tool": {
"description": "Case-insensitive substring of the tool name.",
"type": "string",
"maxLength": 200
},
"minRisk": {
"type": "integer",
"minimum": 0,
"maximum": 100
},
"from": {
"description": "ISO timestamp: inclusive lower bound on created_at.",
"type": "string"
},
"to": {
"description": "ISO timestamp: exclusive upper bound on created_at.",
"type": "string"
},
"limit": {
"default": 50,
"type": "integer",
"minimum": 1,
"maximum": 200
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢axiorank_list_incidents(status, severity, kind, limit)
List security alerts/incidents in your workspace, newest first, filterable by status (open/acknowledged/resolved/suppressed), severity (low/medium/high/critical) and kind (high_risk/anomaly/auto_response/kill_chain/ml_threat). Requires the `logs:read` scope.
Eingabe-Schema
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"open",
"acknowledged",
"resolved",
"suppressed"
]
},
"severity": {
"type": "string",
"enum": [
"low",
"medium",
"high",
"critical"
]
},
"kind": {
"type": "string",
"enum": [
"high_risk",
"anomaly",
"auto_response",
"kill_chain",
"ml_threat"
]
},
"limit": {
"default": 50,
"type": "integer",
"minimum": 1,
"maximum": 200
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢axiorank_get_incident(alertId)
Fetch the kill-chain finding behind an alert (the multi-step attack pattern, severity, and the contributing tool-call ids) by alert id. Returns null evidence for a non-kill-chain alert. Requires the `logs:read` scope.
Eingabe-Schema
{
"type": "object",
"properties": {
"alertId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "The alert/incident UUID (from axiorank_list_incidents)."
}
},
"required": [
"alertId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢axiorank_list_threat_intel
List external identities (card hosts/keys) flagged across the AxioRank network, with k-anonymity-gated aggregate counts (workspaces, sightings, deny/review, max risk). This is the shared cross-tenant feed, not your private data. Requires the `logs:read` scope.
Eingabe-Schema
{
"type": "object",
"properties": {}
}🟢axiorank_list_ml_assessments(limit)
List your workspace's most recent ML/LLM threat assessments (model verdict, threat class, confidence, recommendation) for tool calls and cards. Requires the `logs:read` scope.
Eingabe-Schema
{
"type": "object",
"properties": {
"limit": {
"default": 50,
"type": "integer",
"minimum": 1,
"maximum": 200
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢axiorank_get_usage
Report this billing period's usage for your workspace: plan tier, governed events used vs the monthly limit, and ML assessments used. Requires the `logs:read` scope.
Eingabe-Schema
{
"type": "object",
"properties": {}
}⚪axiorank_issue_token(agentId, scopes, ttlSeconds)
Mint a short-lived, scoped `axr_tok_…` access token for an existing agent. This is the Zero-Trust credential the agent sends as `Authorization: Bearer <token>`. It expires within the hour and cannot be replayed afterwards. Durable static keys are issued in the dashboard, not here. Requires the `keys:write` scope.
Eingabe-Schema
{
"type": "object",
"properties": {
"agentId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "The agent's UUID (from axiorank_list_agents)."
},
"scopes": {
"default": [
"gateway:write"
],
"minItems": 1,
"maxItems": 3,
"type": "array",
"items": {
"type": "string",
"enum": [
"gateway:write",
"cards:verify",
"logs:read"
]
},
"description": "Operational scopes for the token (gateway:write, cards:verify, logs:read)."
},
"ttlSeconds": {
"description": "Token lifetime in seconds (60–3600). Defaults to 900 (15 min).",
"type": "integer",
"minimum": 60,
"maximum": 3600
}
},
"required": [
"agentId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡axiorank_create_agent(name, description, labels, tokenScopes, ttlSeconds)
Create a new agent in your workspace and return a SHORT-LIVED bootstrap token to start using it immediately (no durable secret is emitted). For long-term auth, add a static key or a federation binding in the dashboard. Requires the `agents:write` scope.
Eingabe-Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"description": {
"type": "string",
"maxLength": 2000
},
"labels": {
"maxItems": 32,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 60
}
},
"tokenScopes": {
"default": [
"gateway:write"
],
"minItems": 1,
"maxItems": 3,
"type": "array",
"items": {
"type": "string",
"enum": [
"gateway:write",
"cards:verify",
"logs:read"
]
},
"description": "Operational scopes for the token (gateway:write, cards:verify, logs:read)."
},
"ttlSeconds": {
"description": "Token lifetime in seconds (60–3600). Defaults to 900 (15 min).",
"type": "integer",
"minimum": 60,
"maximum": 3600
}
},
"required": [
"name"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢axiorank_author_detector(description)
Describe a risk in plain English and AxioRank's AI proposes a custom content detector (regex or keyword) and SAVES it DISABLED for your review. An LLM never arms detection unattended. Outbound content categories only (secret/pii/destructive/injection/egress). Requires the `policies:write` scope and an AI-assessments-enabled plan (Team+).
Eingabe-Schema
{
"type": "object",
"properties": {
"description": {
"type": "string",
"minLength": 1,
"maxLength": 2000,
"description": "What to detect, e.g. 'flag AWS secret access keys in tool arguments'."
}
},
"required": [
"description"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Community
Nachweis