MONARK
Commit / defer / abstain over a conformal coverage region - not a probability of being right.
¿Debería usar esto?
Calidad y seguridad
Hallazgos (2)
- HIGH
- MEDIUMen gate
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"monark": {
"url": "https://mcp.monarkgate.tech/mcp"
}
}
}Puntos de conexión remotos
https://mcp.monarkgate.tech/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (4)
🟡gate(prediction, params, attested)
Coverage-gated decision from the real HIKAE L3 policy (commit/defer/abstain) over a caller-carried authorization budget B_t. Dispatches on task_class. For 'btc-dir-15m' it conformalizes against a committed synthetic calibration derived from the HIKAE S2a instrument (seed 101, n=300 draw), declared synthetic — a plumbing fixture, not a measured predictor. For 'cascade-liquidable-24h' no cascade calibration is committed; the gate abstains (under_calib) on this class. For 'stable-run-velocity-24h' (Narabi: a redemption-flow velocity forecast) the gate holds a committed stable-run velocity calibration for the USDe synthetic-dollar-whitelisted-redeem population (key narabi:persistence-v2@eip155:1/erc20:0x4c9edd5852cd905f086c759e8383e09bff1e68b3) over calm-window redemption flow; coverage is stated under the split-conformal bound of Barber, Candes, Ramdas and Tibshirani 2023 (Thm 2, unit weights): at least 1 − α minus the average total-variation gap between calibration windows and the next one; that gap is not estimated here and the calibration is measured non-stationary across half-years, so 1 − α is the coverage only if that gap is zero (exchangeability), which is not assumed here; no coverage is measured; for any other population, no stable-run velocity calibration is committed for this population; the gate abstains (under_calib). For 'liquidation-eligible-coverage' (Ukemi: a per-account liquidable-amount class, class A only) the served region is a conformal upper bound on the liquidable amount for the calibrated class; the lower edge is 0 by construction, not a calibrated bound; abstains (under_calib) outside it; this class requires alpha = 0.01, nMin = 100; calibrated on one recorded episode; no coverage is claimed on any other event; the H-3 exchangeability check is a report, a YES licenses nothing more; the bound holds only if yhat was produced by the frozen close-factor rule on a mono-collateral WETH account at the first crossing, which the gate does not check. When the caller instead supplies a `calibration` (its own nonconformity scores plus a `mode`: `interval` ⇒ region [yhat - q̂, yhat + q̂], or `set` ⇒ a conformal set over caller `candidates`), the gate conformalizes against THOSE caller-supplied scores (BYO): split-conformal quantile at miscoverage α over caller-supplied nonconformity scores. MONARK does not see, store, or verify the caller's data or model, and does not validate that the supplied numbers are nonconformity scores of any model. Marginal 1−α coverage holds ONLY for future points exchangeable with the supplied scores; non-exchangeable data (e.g. distribution-shifted or time-ordered) voids it. Never a probability of being right. A caller-carried `attested` price must declare a subject consistent with the committed task class (exact committed-URL membership; BYO classes do not accept `attested` in P1); the attestation is carried by the caller and is not re-verified at call time (the verifier is not executed here); `attest` only projects the committed witness — verify a caller-carried attestation offline with the Shōgen verifier; no temporal binding in P1. The gate only emits a decision; it never calls the named tool.
Esquema de entrada
{
"type": "object",
"properties": {
"prediction": {
"type": "object",
"additionalProperties": false,
"required": [
"schema_version",
"task_class",
"yhat",
"predictor_id",
"produced_at"
],
"properties": {
"schema_version": {
"type": "string",
"pattern": "^\\d+\\.\\d+\\.\\d+$"
},
"task_class": {
"type": "string",
"pattern": "^[ -~]+$",
"minLength": 1
},
"yhat": {
"type": [
"string",
"number"
]
},
"predictor_id": {
"type": "string",
"pattern": "^[ -~]+$",
"minLength": 1
},
"produced_at": {
"type": "string",
"format": "date-time"
},
"features_digest": {
"type": "string",
"pattern": "^[0-9a-f]{64}$"
}
}
},
"params": {
"type": "object",
"additionalProperties": false,
"required": [
"remainingBudget",
"bFloor",
"tau",
"tauInterval",
"alpha",
"nMin",
"intent",
"tool",
"clockOpen"
],
"properties": {
"remainingBudget": {
"type": "number",
"description": "B_t — remaining authorization capacity (caller-owned, D6)."
},
"bFloor": {
"type": "number",
"description": "B_floor threshold (>= 0)."
},
"tau": {
"type": "number",
"description": "Set-size threshold for the `set` path (>= 0)."
},
"tauInterval": {
"type": "number",
"description": "Width threshold for the `interval` path (>= 0)."
},
"alpha": {
"type": "number",
"description": "Target miscoverage in (0,1)."
},
"nMin": {
"type": "integer",
"description": "Minimum calibration count (>= 1)."
},
"intent": {
"type": [
"string",
"number",
"null"
],
"description": "The intent tested against the region."
},
"tool": {
"type": "string",
"description": "The NAMED gated tool (echoed, never invoked — D0/D1)."
},
"clockOpen": {
"type": "boolean",
"description": "Whether the coverage window is still open (caller-owned)."
},
"calibration": {
"type": "object",
"additionalProperties": false,
"required": [
"scores",
"mode"
],
"description": "OPTIONAL BYO calibration (ADR-M007 D7): caller-supplied nonconformity scores + region mode. Present ⇒ the gate conformalizes on the caller's model, not a committed class.",
"properties": {
"scores": {
"type": "array",
"items": {
"type": "number"
},
"maxItems": 10000,
"description": "Caller-supplied nonconformity scores (interval mode requires all >= 0)."
},
"mode": {
"type": "string",
"enum": [
"interval",
"set"
],
"description": "`interval` ⇒ region [yhat - q̂, yhat + q̂]; `set` ⇒ conformal set over `candidates`."
},
"candidates": {
"type": "array",
"maxItems": 10000,
"description": "Set-mode candidate labels with their nonconformity scores (required and non-empty when mode = set).",
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"label",
"score"
],
"properties": {
"label": {
"type": "string",
"description": "Candidate label (printable ASCII, unique, no `|`)."
},
"score": {
"type": "number",
"description": "The candidate's nonconformity score."
}
}
}
}
}
}
}
},
"attested": {
"type": "object",
"additionalProperties": false,
"required": [
"schema_version",
"subject",
"attestor",
"residual",
"transport",
"utterance",
"observed_at",
"octets_recalcules",
"verifier_revision"
],
"properties": {
"schema_version": {
"type": "string",
"pattern": "^\\d+\\.\\d+\\.\\d+$"
},
"subject": {
"type": "string",
"pattern": "^[ -~]+$",
"minLength": 1
},
"attestor": {
"type": "array",
"minItems": 1,
"uniqueItems": true,
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"identity",
"key"
],
"properties": {
"identity": {
"type": "string",
"pattern": "^[ -~]+$",
"minLength": 1
},
"key": {
"type": "string",
"pattern": "^([0-9a-f]{2})+$"
}
}
}
},
"residual": {
"type": "array",
"minItems": 1,
"uniqueItems": true,
"items": {
"type": "string",
"pattern": "^[ -~]+$",
"minLength": 1
}
},
"transport": {
"type": "string",
"pattern": "^[ -~]+$",
"minLength": 1
},
"utterance": {
"type": "object",
"additionalProperties": false,
"required": [
"hash"
],
"properties": {
"hash": {
"type": "string",
"pattern": "^[0-9a-f]{64}$"
},
"bytes": {
"type": "string",
"pattern": "^([0-9a-f]{2})*$"
}
}
},
"observed_at": {
"type": "object",
"additionalProperties": false,
"required": [
"clock",
"instant"
],
"properties": {
"clock": {
"type": "string",
"pattern": "^[ -~]+$",
"minLength": 1
},
"instant": {
"type": "integer",
"minimum": 0
}
}
},
"octets_recalcules": {
"type": "boolean"
},
"verifier_revision": {
"type": "string",
"pattern": "^[ -~]+$",
"minLength": 1
},
"sens_emis_digest": {
"type": "string",
"pattern": "^[0-9a-f]{64}$"
}
}
}
},
"required": [
"prediction",
"params"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"schema_version": {
"type": "string",
"pattern": "^\\d+\\.\\d+\\.\\d+$"
},
"action": {
"enum": [
"commit",
"defer",
"abstain"
]
},
"allow": {
"type": "boolean"
},
"tool": {
"type": "string",
"pattern": "^[ -~]+$",
"minLength": 1
},
"intent": {
"type": [
"string",
"number",
"null"
]
},
"verdict": {
"type": "object",
"additionalProperties": false,
"required": [
"schema_version",
"task_class",
"method",
"alpha",
"n_calib",
"region",
"qhat",
"abstain",
"reason",
"residual",
"calib_digest",
"produced_at"
],
"properties": {
"schema_version": {
"type": "string",
"pattern": "^\\d+\\.\\d+\\.\\d+$"
},
"task_class": {
"type": "string",
"pattern": "^[ -~]+$",
"minLength": 1
},
"method": {
"enum": [
"split",
"hac-cp"
]
},
"alpha": {
"type": "number",
"exclusiveMinimum": 0,
"exclusiveMaximum": 1
},
"n_calib": {
"type": "integer",
"minimum": 0
},
"region": {
"oneOf": [
{
"type": "object",
"additionalProperties": false,
"required": [
"kind",
"labels",
"label_schema"
],
"properties": {
"kind": {
"const": "set"
},
"labels": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[ -~]+$"
}
},
"label_schema": {
"type": "string",
"pattern": "^[ -~]+$",
"minLength": 1
}
}
},
{
"type": "object",
"additionalProperties": false,
"required": [
"kind",
"lo",
"hi"
],
"properties": {
"kind": {
"const": "interval"
},
"lo": {
"type": "number"
},
"hi": {
"type": "number"
}
}
}
]
},
"qhat": {
"type": [
"number",
"null"
]
},
"abstain": {
"type": "boolean"
},
"reason": {
"enum": [
"covered",
"set_too_large",
"interval_too_wide",
"intent_not_in_region",
"under_calib",
"no_label_schema",
"budget_exhausted",
"clock_expired",
"upstream_timeout",
"attestation_absent",
"attestation_refused",
"binding_broken",
"non_evaluable"
]
},
"residual": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[ -~]+$"
}
},
"scores": {
"type": "array",
"items": {
"type": "number"
}
},
"calib_digest": {
"type": "string",
"pattern": "^[0-9a-f]{64}$"
},
"produced_at": {
"type": "string",
"format": "date-time"
}
}
},
"remaining_budget": {
"type": "number"
},
"reason": {
"enum": [
"covered",
"set_too_large",
"interval_too_wide",
"intent_not_in_region",
"under_calib",
"no_label_schema",
"budget_exhausted",
"clock_expired",
"upstream_timeout",
"attestation_absent",
"attestation_refused",
"binding_broken",
"non_evaluable"
]
}
},
"required": [
"schema_version",
"action",
"allow",
"tool",
"intent",
"verdict",
"remaining_budget",
"reason"
],
"additionalProperties": false
}🟢cascade(L, e, shock, producedAt)
Estimated liquidable amount from the real UKEMI cascade primitives (imported, never re-implemented): an Eisenberg-Noe clearing of the interbank system (L, e) with alpha=beta=1 yields the largest clearing vector L*; each node is then read as a leveraged position — collateral is its cleared balance-sheet value (external assets plus interbank receipts under L*), debt is its nominal obligations, liquidation threshold K=1 — and liquidableAmount sums the debts of the nodes whose cleared value, once shocked by the caller-carried 24h fraction, no longer covers their obligations. Shocking the whole cleared value is a v0 simplification; no source supports shocking interbank receivables. yhat is that liquidable amount: a monetary quantity in the reference asset, a single point that HIKAE conformalizes downstream — no guarantee, no score. Downstream, no cascade calibration is committed; the gate abstains (under_calib) on this class. This cascade tool is v0, replaced at U-5.
Esquema de entrada
{
"type": "object",
"properties": {
"L": {
"type": "array",
"description": "Nominal interbank liabilities matrix L[i][j] = what node i owes node j. Square, entries >= 0, zero diagonal.",
"maxItems": 64,
"items": {
"type": "array",
"items": {
"type": "number"
},
"maxItems": 64
}
},
"e": {
"type": "array",
"description": "External assets (liquidation value) per node at the clearing date. One value per node.",
"maxItems": 64,
"items": {
"type": "number"
}
},
"shock": {
"type": "number",
"description": "24h collateral price shock fraction in [0,1] — a declared fixture parameter, not a dynamics model."
},
"producedAt": {
"type": "string",
"description": "Caller-carried RFC3339 instant, injected for hash stability (D4); the tool reads no clock."
}
},
"required": [
"L",
"e",
"shock",
"producedAt"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"schema_version": {
"type": "string",
"pattern": "^\\d+\\.\\d+\\.\\d+$"
},
"task_class": {
"type": "string",
"pattern": "^[ -~]+$",
"minLength": 1
},
"yhat": {
"type": [
"string",
"number"
]
},
"predictor_id": {
"type": "string",
"pattern": "^[ -~]+$",
"minLength": 1
},
"produced_at": {
"type": "string",
"format": "date-time"
},
"features_digest": {
"type": "string",
"pattern": "^[0-9a-f]{64}$"
}
},
"required": [
"schema_version",
"task_class",
"yhat",
"predictor_id",
"produced_at"
],
"additionalProperties": false
}⚪attest
projection of a committed Shōgen-verified witness (Binance BTCUSDT, self-notarized); the verifier is NOT executed at call time.
Esquema de entrada
{
"type": "object",
"properties": {},
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"price": {
"type": "object",
"additionalProperties": false,
"required": [
"schema_version",
"subject",
"attestor",
"residual",
"transport",
"utterance",
"observed_at",
"octets_recalcules",
"verifier_revision"
],
"properties": {
"schema_version": {
"type": "string",
"pattern": "^\\d+\\.\\d+\\.\\d+$"
},
"subject": {
"type": "string",
"pattern": "^[ -~]+$",
"minLength": 1
},
"attestor": {
"type": "array",
"minItems": 1,
"uniqueItems": true,
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"identity",
"key"
],
"properties": {
"identity": {
"type": "string",
"pattern": "^[ -~]+$",
"minLength": 1
},
"key": {
"type": "string",
"pattern": "^([0-9a-f]{2})+$"
}
}
}
},
"residual": {
"type": "array",
"minItems": 1,
"uniqueItems": true,
"items": {
"type": "string",
"pattern": "^[ -~]+$",
"minLength": 1
}
},
"transport": {
"type": "string",
"pattern": "^[ -~]+$",
"minLength": 1
},
"utterance": {
"type": "object",
"additionalProperties": false,
"required": [
"hash"
],
"properties": {
"hash": {
"type": "string",
"pattern": "^[0-9a-f]{64}$"
},
"bytes": {
"type": "string",
"pattern": "^([0-9a-f]{2})*$"
}
}
},
"observed_at": {
"type": "object",
"additionalProperties": false,
"required": [
"clock",
"instant"
],
"properties": {
"clock": {
"type": "string",
"pattern": "^[ -~]+$",
"minLength": 1
},
"instant": {
"type": "integer",
"minimum": 0
}
}
},
"octets_recalcules": {
"type": "boolean"
},
"verifier_revision": {
"type": "string",
"pattern": "^[ -~]+$",
"minLength": 1
},
"sens_emis_digest": {
"type": "string",
"pattern": "^[0-9a-f]{64}$"
}
}
},
"provenance": {
"type": "object",
"additionalProperties": false,
"required": [
"source_lot_sha256",
"source_verdict_sha256",
"shogen_head_sha"
],
"properties": {
"source_lot_sha256": {
"type": "string",
"pattern": "^[0-9a-f]{64}$",
"description": "sha256 of the committed witness lot (CBOR), recomputed from the bytes."
},
"source_verdict_sha256": {
"type": "string",
"pattern": "^[0-9a-f]{64}$",
"description": "sha256 of the committed verifier output (UTF-8), recomputed from the bytes."
},
"shogen_head_sha": {
"type": "string",
"pattern": "^[0-9a-f]{40}$",
"description": "Source revision the fixtures were extracted from (pinned)."
}
}
},
"label": {
"type": "string",
"description": "Honesty label carried OUTSIDE the frozen price (K-1): the witness is demonstrative, not probative."
}
},
"required": [
"price",
"provenance",
"label"
],
"additionalProperties": false
}⚪calibrate(scores, alpha, nMin)
split-conformal quantile at miscoverage α over caller-supplied nonconformity scores. MONARK does not see, store, or verify the caller's data or model, and does not validate that the supplied numbers are nonconformity scores of any model. Marginal 1−α coverage holds ONLY for future points exchangeable with the supplied scores; non-exchangeable data (e.g. distribution-shifted or time-ordered) voids it. Never a probability of being right.
Esquema de entrada
{
"type": "object",
"properties": {
"scores": {
"type": "array",
"description": "Caller-supplied nonconformity scores (BYO: the caller owns the score function; MONARK stays agnostic).",
"maxItems": 10000,
"items": {
"type": "number"
}
},
"alpha": {
"type": "number",
"description": "Target miscoverage in the open interval (0,1)."
},
"nMin": {
"type": "integer",
"description": "Minimum calibration count (>= 1); n < nMin fails closed to under_calib."
}
},
"required": [
"scores",
"alpha",
"nMin"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"qhat": {
"type": [
"number",
"null"
],
"description": "The conformal quantile q̂, or null when the calibration is insufficient (fail-closed)."
},
"n": {
"type": "integer",
"description": "The number of supplied scores (echoed)."
},
"alpha": {
"type": "number",
"description": "The target miscoverage (echoed)."
},
"method": {
"const": "split",
"description": "The conformal method — always split."
},
"set_digest": {
"type": "string",
"pattern": "^[0-9a-f]{64}$",
"description": "calibDigest(scores): recalculable by reference; the audit tie to verdict.calib_digest (C2)."
},
"label": {
"type": "string",
"description": "Honesty label (K-1): the marginal coverage holds only under exchangeability with the supplied scores."
},
"reason": {
"type": [
"string",
"null"
],
"description": "under_calib when q̂ is null, else null on success."
}
},
"required": [
"qhat",
"n",
"alpha",
"method",
"set_digest",
"label",
"reason"
],
"additionalProperties": false
}Comunidad
Evidencia