removedInput schema / $schema
Removed value: -"http://json-schema.org/draft-07/schema#"
removedOutput schema / $schema
Removed value: -"http://json-schema.org/draft-07/schema#"
removedOutput schema / additionalProperties
Removed value: -false
changedOutput schema / description
Previous value: -"The Apier MCP response envelope (SA-001 Rule 34): `result` (the tool's data) plus `justification` + `metadata`, and an optional `_meta`. Failure responses use the same envelope with `result: null` and `metadata` extended with `error_code` (stable closed vocabulary), `error_message`, `retryable` (whether repeating the identical call can plausibly succeed), `remediation` (one-sentence hint), and — when an upstream code was collapsed or renamed — the raw code on `upstream_code`."New value: +"Rule 34 envelope; failures set result null + metadata.error_code / retryable / remediation. Contract: https://www.apier.no/docs/mcp"
removedOutput schema / properties / _meta / additionalProperties
Removed value: -false
removedOutput schema / properties / _meta / description
Removed value: -"Optional `_meta` extension: the REST `is_sandbox` data marker plus the MCP `rate_limit` + `sandbox` markers (PR-MCP-SPEC-SYNC)."
removedOutput schema / properties / _meta / properties
Removed value: -{
- "is_sandbox": {
- "const": true,
- "description": "Present + true ONLY when the result was generated from sandbox fixture DATA; absent (never false) otherwise. Distinct from `sandbox` (key type).",
- "type": "boolean"
- },
- "rate_limit": {
- "additionalProperties": false,
- "description": "Advisory rate-limit headroom for the calling consumer (stamped on every tool result).",
- "properties": {
- "remaining": {
- "anyOf": [
- {
- "type": "number"
- },
- {
- "type": "null"
- }
- ],
- "description": "The calling consumer's per-minute tier ceiling (null = the unlimited enterprise tier). Advisory headroom, NOT a live decremented count — the per-key bucket is enforced unchanged at the underlying REST route."
- },
- "reset_at": {
- "description": "The current fixed-window reset instant, ISO 8601 with the Europe/Oslo offset.",
- "type": "string"
- }
- },
- "required": [
- "remaining",
- "reset_at"
- ],
- "type": "object"
- },
- "sandbox": {
- "description": "true when the call used a test/sandbox key, false for a live key (stamped on every tool result). Distinct from `is_sandbox` (data mode).",
- "type": "boolean"
- }
-}
removedOutput schema / properties / _meta / type
Removed value: -"object"
removedOutput schema / properties / justification / additionalProperties
Removed value: -false
removedOutput schema / properties / justification / description
Removed value: -"Why-this-answer provenance (SA-001 Rule 34)."
removedOutput schema / properties / justification / properties
Removed value: -{
- "rules_applied": {
- "description": "Rule-engine versions / rule ids the response was evaluated against (e.g. `rulebook@2026.2.1`).",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "source_data": {
- "description": "Upstream sources the response is derived from (brreg, altinn, rulebook, norges_bank, ...).",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "valid_until": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "RFC 3339 UTC instant the upstream snapshot's freshness window expires, or null when the response is timeless."
- }
-}
removedOutput schema / properties / justification / required
Removed value: -[
- "rules_applied",
- "source_data",
- "valid_until"
-]
removedOutput schema / properties / justification / type
Removed value: -"object"
removedOutput schema / properties / metadata / additionalProperties
Removed value: -false
removedOutput schema / properties / metadata / description
Removed value: -"Call metadata (SA-001 Rule 34)."
removedOutput schema / properties / metadata / properties
Removed value: -{
- "data_sources": {
- "description": "Echo of the tool's declared dataSources.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "query_id": {
- "description": "Per-call UUID v4 — joins to mcp_query_log.id for forensics.",
- "type": "string"
- },
- "resolved_at": {
- "description": "RFC 3339 UTC timestamp at envelope-build time (Z suffix).",
- "type": "string"
- },
- "schema_version": {
- "description": "MCP_SCHEMA_VERSION at the time the envelope was built.",
- "type": "string"
- },
- "tool_name": {
- "description": "The tool that produced the envelope.",
- "type": "string"
- }
-}
removedOutput schema / properties / metadata / required
Removed value: -[
- "query_id",
- "resolved_at",
- "data_sources",
- "schema_version",
- "tool_name"
-]
removedOutput schema / properties / metadata / type
Removed value: -"object"
removedOutput schema / properties / result / additionalProperties
Removed value: -{}
removedOutput schema / properties / result / properties
Removed value: -{
- "created_at": {
- "description": "Key creation time, RFC 3339 UTC.",
- "type": "string"
- },
- "id": {
- "description": "The new API key's id (UUID).",
- "type": "string"
- },
- "name": {
- "description": "Server-fixed key label (\"Agent key (token-issued)\") — identifiable in the owner's dashboard.",
- "type": "string"
- },
- "plaintext_key": {
- "description": "The API key plaintext, returned EXACTLY ONCE. Store it immediately — it is never retrievable again and never logged.",
- "type": "string"
- },
- "scopes": {
- "description": "The issued key's scopes — always [\"read:*\"].",
- "items": {
- "type": "string"
- },
- "type": "array"
- }
-}