Post-quantum, tamper-evident receipts for agent actions. Ed25519 + ML-DSA-65, offline verify.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Rank a CALLER-PROVIDED list of MCP tools by worst-regret if they act (a name-based heuristic that weights a name's first word most). Read-only: it mints no receipt. Cannot auto-discover the inventory -- MCP does not allow that; the caller must pass it in.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Rank a CALLER-PROVIDED list of MCP tools by worst-regret if they act (a name-based heuristic that weights a name's first word most). Read-only: it mints no receipt. Cannot auto-discover the inventory -- MCP does not allow that; the caller must pass it in.
| Argument | Type | Description |
|---|---|---|
| notes | any | |
| inventory* | array |
{
"type": "object",
"title": "audit_my_agent_inventoryArguments",
"required": [
"inventory"
],
"properties": {
"notes": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Notes",
"default": null
},
"inventory": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"title": "Inventory"
}
}
}Egress classification check. Scans a data sample for a finite list of sensitivity markers and classifies as NO_MARKERS_FOUND / INTERNAL / CONFIDENTIAL / RESTRICTED. RESTRICTED sets blocked=true; this tool cannot block anything itself, and NO_MARKERS_FOUND is not clearance to send. Returns classification, retention info, and a tamper-evident receipt.
| Argument | Type | Description |
|---|---|---|
| provider* | string | |
| data_sample* | string | |
| destination* | string |
{
"type": "object",
"title": "check_egressArguments",
"required": [
"destination",
"data_sample",
"provider"
],
"properties": {
"provider": {
"type": "string",
"title": "Provider"
},
"data_sample": {
"type": "string",
"title": "Data Sample"
},
"destination": {
"type": "string",
"title": "Destination"
}
}
}Two-phase decision gate with a real verdict. PREVIEW returns ALLOW, DENY or ESCALATE with the risk tier and reasons, plus a preview_id, without acting. COMMIT re-evaluates the same inputs and mints a signed receipt for the verdict. Only ALLOW returns a GRANTED permit; DENY returns DENIED; ESCALATE returns WITHHELD_PENDING_HUMAN and a human must decide outside this tool. Applies only to actions the caller routes through it: it does not observe or block what an agent does. Verb-tier heuristic on the action name and resource, not a proof. Stateless. Optional attestation: triggered_by_type, triggered_by_source, decision_model.
| Argument | Type | Description |
|---|---|---|
| phase | string | |
| action* | string | |
| context* | object | |
| resource* | string | |
| preview_id | any | |
| decision_model | any | |
| triggered_by_type | any | |
| triggered_by_source | any |
Mint a signed receipt (Ed25519, plus ML-DSA-65 when the post-quantum backend is available) for an arbitrary consequential agent action. Optional attestation: triggered_by_type (human/agent/script), triggered_by_source (api/cli/cron), decision_model (the LLM model used). Attestation values are caller claims: allowlisted to safe characters, signed, not verified. Decisions that contain a gate verdict word are reserved for gate_decision.
| Argument | Type | Description |
|---|---|---|
| inputs | any | |
| policy | string | |
| target* | string | |
| agent_id* | string | |
| decision | string | |
| operation* | string | |
| decision_model | any | |
| triggered_by_type | any | |
| triggered_by_source | any |
Mint a signed receipt (Ed25519, plus ML-DSA-65 when the post-quantum backend is available) for one CRM record change. Old/new values are carried as SHA-256 hashes. Works with any CRM (Relaticle, hosted CRMs, custom).
| Argument | Type | Description |
|---|---|---|
| field* | string | |
| policy | string | |
| tenant | any | |
| new_value* | string | |
| old_value* | string | |
| record_id* | string | |
| object_type* | string | |
| changed_by_agent* | string |
{
"type": "object",
"title": "mint_receipt_for_record_changeArguments",
"required": [
"record_id",
"object_type",
"field",
"old_value",
"new_value",
"changed_by_agent"
],
"properties": {
"field": {
"type": "string",
"title": "Field"
},
"policy": {
"type": "string",
"title": "Policy",
"default": "per-decision CRM change evidence"
},
"tenant": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Tenant",
"default": null
},
"new_value": {
"type": "string",
"title": "New Value"
},
"old_value": {
"type": "string",
"title": "Old Value"
},
"record_id": {
"type": "string",
"title": "Record Id"
},
"object_type": {
"type": "string",
"title": "Object Type"
},
"changed_by_agent": {
"type": "string",
"title": "Changed By Agent"
}
}
}Vendor exit readiness drill. Checks local signing key, local model access (Ollama). Returns step-by-step results and a tamper-evident receipt. Informational; it signs one receipt, which creates the signing key on a host that has none yet.
No arguments.
{
"type": "object",
"title": "run_exit_drillArguments",
"properties": {}
}Verify a Trust Gate receipt from the certificate alone (offline). ok=true means unchanged since signing, signed, kid consistent with the embedded key, and (require_pq default on) at least one post-quantum leg verified; unsigned receipts fail. It does not prove who signed: pass expected_kid to pin the signer's Ed25519 key; a pin counts only when that key's own signature verifies (see signer_pinned). The post-quantum keys in a receipt are not covered by the kid.
| Argument | Type | Description |
|---|---|---|
| receipt* | object | |
| require_pq | any | |
| expected_kid | any |
{
"type": "object",
"title": "verify_receiptArguments",
"required": [
"receipt"
],
"properties": {
"receipt": {
"type": "object",
"title": "Receipt",
"additionalProperties": true
},
"require_pq": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Require Pq",
"default": null
},
"expected_kid": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Expected Kid",
"default": null
}
}
}{
"type": "object",
"title": "gate_decisionArguments",
"required": [
"action",
"resource",
"context"
],
"properties": {
"phase": {
"type": "string",
"title": "Phase",
"default": "PREVIEW"
},
"action": {
"type": "string",
"title": "Action"
},
"context": {
"type": "object",
"title": "Context",
"additionalProperties": true
},
"resource": {
"type": "string",
"title": "Resource"
},
"preview_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Preview Id",
"default": null
},
"decision_model": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Decision Model",
"default": null
},
"triggered_by_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Triggered By Type",
"default": null
},
"triggered_by_source": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Triggered By Source",
"default": null
}
}
}{
"type": "object",
"title": "mint_action_receiptArguments",
"required": [
"agent_id",
"operation",
"target"
],
"properties": {
"inputs": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Inputs",
"default": null
},
"policy": {
"type": "string",
"title": "Policy",
"default": "agent action evidence"
},
"target": {
"type": "string",
"title": "Target"
},
"agent_id": {
"type": "string",
"title": "Agent Id"
},
"decision": {
"type": "string",
"title": "Decision",
"default": "ACTION_GOVERNED"
},
"operation": {
"type": "string",
"title": "Operation"
},
"decision_model": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Decision Model",
"default": null
},
"triggered_by_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Triggered By Type",
"default": null
},
"triggered_by_source": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Triggered By Source",
"default": null
}
}
}