AxioRank: Zero-Trust for AI Agents

Zero-trust gateway for AI agents: score tool calls, verify agent cards, enforce policy, audit.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
73%
Naming quality
80%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~6,702Tokens (tool definitions)
~2.0 KBTypical response size
Significant attention impact (5.24% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "axiorank": {
      "url": "https://app.axiorank.com/api/mcp-server/mcp"
    }
  }
}

Remote endpoints

https://app.axiorank.com/api/mcp-server/mcpstreamable-http

What it can do

Tool inventory

Tools (22)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢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.

Input 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.

Input 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.

Input 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.

Input Schema

{
  "type": "object",
  "properties": {}
}
🟢axiorank_get_health

Liveness/readiness probe for the AxioRank control plane (API + database reachability). Returns `status: ok|degraded`.

Input 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.

Input 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.

Input 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.

Input 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.

Input 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.

Input Schema

{
  "type": "object",
  "properties": {}
}
🟢axiorank_get_policy(policyId)

Fetch one outbound policy by id, scoped to your workspace. Requires the `policies:read` scope.

Input 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.

Input 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.

Input 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.

Input 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.

Input 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.

Input 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.

Input 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.

Input 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.

Input 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.

Input 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.

Input 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+).

Input 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

Rate this Server

Evidence

Recent observations

verifiedversion not recorded22 tools
verifiedversion not recorded22 tools
verifiedversion not recorded22 tools
verifiedversion not recorded22 tools
verifiedversion not recorded22 tools
verifiedversion not recorded22 tools