addedInput schema / properties / limit / description
Added value: +"Optional maximum result count; integer 1–10 inclusive, default 5. Fewer or zero results may be returned; this MCP limit differs from other transports."
addedInput schema / properties / query / description
Added value: +"Required free-text query, 1–200 raw characters, no ASCII control characters. Use at least two searchable characters after accent/case/punctuation normalization. Dutch terms and model names search the existing index using lexical tokens and intent rules; no semantic generation."
addedOutput schema / properties / citationUrl / description
Added value: +"Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity."
addedOutput schema / properties / coverage / description
Added value: +"Available coverage metadata; incomplete or absent coverage is not an assurance of complete knowledge. Preserve limitations."
addedOutput schema / properties / data / description
Added value: +"Tool-specific successful result. Search returns an array (possibly empty); exact tools return the requested record or projection. Tool errors use a separate isError envelope."
addedOutput schema / properties / data / items / properties / answerPreview / description
Added value: +"Existing short preview or fixed contract explanation; not a generated answer or a replacement for full context."
addedOutput schema / properties / data / items / properties / citationUrl / description
Added value: +"Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity."
addedOutput schema / properties / data / items / properties / classification / description
Added value: +"Knowledge classification: OFFICIAL, reproducibly DERIVED, or EDITORIAL. Preserve this label; it is not a confidence score."
addedOutput schema / properties / data / items / properties / freshnessSummary / description
Added value: +"Search-level freshness metadata/status. NOT_EXPOSED_IN_SEARCH_INDEX means dates are not exposed there; fetch exact context when available."
addedOutput schema / properties / data / items / properties / id / description
Added value: +"Stable result identifier. Route by type: model to get_model_context, answer to get_answer_context, term to explain_dutch_vehicle_term, source to get_source_context. Topic IDs are not automatically answer IDs."
addedOutput schema / properties / data / items / properties / matchReasons / description
Added value: +"Deterministic matching/boost reason codes explaining ranking, not evidence for factual claims."
addedOutput schema / properties / data / items / properties / matchedIntent / description
Added value: +"Deterministic query-intent label used by search rules, not inferred user certainty."
addedOutput schema / properties / data / items / properties / matchedTerms / description
Added value: +"Normalized lexical query tokens found in the index record; may be empty for fixed intent-based supplemental results."
addedOutput schema / properties / data / items / properties / modelKey / description
Added value: +"Canonical model identifier from search results or kk://models, e.g. volkswagen-golf. 1–200 characters; lowercase ASCII letters/digits separated by single hyphens. Exact match; no aliases, spaces, uppercase, URL or license plate."
addedOutput schema / properties / data / items / properties / relevanceScore / description
Added value: +"Deterministic lexical/intent ranking score, not AI confidence, truth probability or source quality. Used to sort this query's results; not a probability or fixed 0–1 scale."
addedOutput schema / properties / data / items / properties / relevanceTier / description
Added value: +"Score band: EXACT >=140, STRONG >=55 and <140, RELATED <55. EXACT is a score label and does not guarantee a literal exact match."
addedOutput schema / properties / data / items / properties / title / description
Added value: +"Human-readable title of the matched existing knowledge record."
addedOutput schema / properties / data / items / properties / type / description
Added value: +"Result kind (currently model, answer, term, topic or supplemental source); determines how its identifier can be used."
addedOutput schema / properties / evidence / description
Added value: +"Exposed evidence references with classifications and source IDs. May be empty (including search); not proof that knowledge has no provenance."
addedOutput schema / properties / evidence / items / properties / classification / description
Added value: +"Knowledge classification: OFFICIAL, reproducibly DERIVED, or EDITORIAL. Preserve this label; it is not a confidence score."
addedOutput schema / properties / evidence / items / properties / evidenceId / description
Added value: +"Identifier of a cited evidence reference; resolve its sourceIds for provenance, not as a confidence score."
addedOutput schema / properties / evidence / items / properties / sourceIds / description
Added value: +"Opaque IDs of supporting public sources or source groups. An empty array means no references exposed here, not proof of completeness."
addedOutput schema / properties / evidence / items / properties / sourceIds / items / description
Added value: +"Opaque public SOURCE or SOURCE_GROUP ID, 1–200 characters; lowercase ASCII letters/digits with dot, colon or hyphen separators as specified by the pattern. Copy exactly from sources or search; never split or reconstruct composite-looking IDs."
addedOutput schema / properties / freshness / description
Added value: +"Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current."
addedOutput schema / properties / freshness / properties / dataAsOf / description
Added value: +"Optional date/time to which the underlying data relates; absent means not supplied, not current."
addedOutput schema / properties / freshness / properties / editorialReviewedAt / description
Added value: +"Optional date/time of editorial review; does not certify that all underlying data was refreshed."
addedOutput schema / properties / freshness / properties / generatedAt / description
Added value: +"Timestamp of generation. At envelope level this is the active manifest's generatedAt, not a source refresh or publication date."
addedOutput schema / properties / freshness / properties / sourceCheckedAt / description
Added value: +"Optional date/time when the source was checked, not necessarily the date the data describes."
addedOutput schema / properties / knowledgeVersion / description
Added value: +"Active knowledge release identifier from its manifest; not the API contract or MCP/registry server version."
addedOutput schema / properties / limitations / description
Added value: +"Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage."
addedOutput schema / properties / schemaVersion / description
Added value: +"Transport envelope contract kk-api-v1; distinct from the nested knowledge schema, knowledgeVersion and server version."
addedOutput schema / properties / sources / description
Added value: +"Resolved public SOURCE/SOURCE_GROUP records supporting this result. Search may leave this empty; use get_source_context for a discovered source ID."
changedOutput schema / properties / sources / items / anyOf
Previous value: -[
- {
- "additionalProperties": false,
- "properties": {
- "category": {
- "enum": [
- "OFFICIAL_PRIMARY_DATA",
- "OFFICIAL_GUIDANCE",
- "PRIMARY_NON_GOVERNMENT",
- "REPUTABLE_EDITORIAL",
- "BACKGROUND_REFERENCE",
- "KENTEKENKOMPAS_DERIVED",
- "KENTEKENKOMPAS_EDITORIAL"
- ],
- "type": "string"
- },
- "citationUrl": {
- "format": "uri",
- "type": "string"
- },
- "freshness": {
- "additionalProperties": {},
- "propertyNames": {
- "type": "string"
- },
- "type": "object"
- },
- "kind": {
- "const": "SOURCE",
- "type": "string"
- },
- "label": {
- "type": "string"
- },
- "limitations": {
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "sourceId": {
- "maxLength": 200,
- "minLength": 1,
- "pattern": "^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$",
- "type": "string"
- },
- "sourceUrl": {
- "format": "uri",
- "type": "string"
- },
- "visibility": {
- "const": "PUBLIC",
- "type": "string"
- }
- },
- "required": [
- "sourceId",
- "kind",
- "visibility",
- "label",
- "category",
- "citationUrl",
- "sourceUrl",
- "freshness",
- "limitations"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "properties": {
- "category": {
- "enum": [
- "OFFICIAL_PRIMARY_DATA",
- "OFFICIAL_GUIDANCE",
- "PRIMARY_NON_GOVERNMENT",
- "REPUTABLE_EDITORIAL",
- "BACKGROUND_REFERENCE",
- "KENTEKENKOMPAS_DERIVED",
- "KENTEKENKOMPAS_EDITORIAL"
- ],
- "type": "string"
- },
- "citationUrl": {
- "format": "uri",
- "type": "string"
- },
- "citationUrls": {
- "items": {
- "format": "uri",
- "type": "string"
- },
- "type": "array"
- },
- "description": {
- "type": "string"
- },
- "freshness": {
- "additionalProperties": {},
- "propertyNames": {
- "type": "string"
- },
- "type": "object"
- },
- "kind": {
- "const": "SOURCE_GROUP",
- "type": "string"
- },
- "label": {
- "type": "string"
- },
- "limitations": {
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "memberOrderMeaning": {
- "type": "string"
- },
- "memberSourceIds": {
- "items": {
- "maxLength": 200,
- "minLength": 1,
- "pattern": "^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$",
- "type": "string"
- },
- "minItems": 1,
- "type": "array"
- },
- "sourceId": {
- "maxLength": 200,
- "minLength": 1,
- "pattern": "^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$",
- "type": "string"
- },
- "visibility": {
- "const": "PUBLIC",
- "type": "string"
- }
- },
- "required": [
- "sourceId",
- "kind",
- "visibility",
- "label",
- "category",
- "citationUrl",
- "description",
- "memberSourceIds",
- "memberOrderMeaning",
- "citationUrls",
- "freshness",
- "limitations"
- ],
- "type": "object"
- }
-]New value: +[
+ {
+ "additionalProperties": false,
+ "properties": {
+ "category": {
+ "description": "Detailed provenance category. Keep it distinct from the coarser OFFICIAL/DERIVED/EDITORIAL classification.",
+ "enum": [
+ "OFFICIAL_PRIMARY_DATA",
+ "OFFICIAL_GUIDANCE",
+ "PRIMARY_NON_GOVERNMENT",
+ "REPUTABLE_EDITORIAL",
+ "BACKGROUND_REFERENCE",
+ "KENTEKENKOMPAS_DERIVED",
+ "KENTEKENKOMPAS_EDITORIAL"
+ ],
+ "type": "string"
+ },
+ "citationUrl": {
+ "description": "Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.",
+ "format": "uri",
+ "type": "string"
+ },
+ "freshness": {
+ "additionalProperties": {},
+ "description": "Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.",
+ "propertyNames": {
+ "type": "string"
+ },
+ "type": "object"
+ },
+ "kind": {
+ "const": "SOURCE",
+ "description": "Discriminator: SOURCE is one public source; SOURCE_GROUP is an explicit grouped provenance record.",
+ "type": "string"
+ },
+ "label": {
+ "description": "Human-readable label supplied by the knowledge record.",
+ "type": "string"
+ },
+ "limitations": {
+ "description": "Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "sourceId": {
+ "description": "Opaque public SOURCE or SOURCE_GROUP ID, 1–200 characters; lowercase ASCII letters/digits with dot, colon or hyphen separators as specified by the pattern. Copy exactly from sources or search; never split or reconstruct composite-looking IDs.",
+ "maxLength": 200,
+ "minLength": 1,
+ "pattern": "^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$",
+ "type": "string"
+ },
+ "sourceUrl": {
+ "description": "Original public source URL for a SOURCE record; distinct from the KentekenKompas explanation URL.",
+ "format": "uri",
+ "type": "string"
+ },
+ "visibility": {
+ "const": "PUBLIC",
+ "description": "PUBLIC marks provenance permitted in the public knowledge contract.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "sourceId",
+ "kind",
+ "visibility",
+ "label",
+ "category",
+ "citationUrl",
+ "sourceUrl",
+ "freshness",
+ "limitations"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "properties": {
+ "category": {
+ "description": "Detailed provenance category. Keep it distinct from the coarser OFFICIAL/DERIVED/EDITORIAL classification.",
+ "enum": [
+ "OFFICIAL_PRIMARY_DATA",
+ "OFFICIAL_GUIDANCE",
+ "PRIMARY_NON_GOVERNMENT",
+ "REPUTABLE_EDITORIAL",
+ "BACKGROUND_REFERENCE",
+ "KENTEKENKOMPAS_DERIVED",
+ "KENTEKENKOMPAS_EDITORIAL"
+ ],
+ "type": "string"
+ },
+ "citationUrl": {
+ "description": "Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.",
+ "format": "uri",
+ "type": "string"
+ },
+ "citationUrls": {
+ "description": "Human-readable citation links associated with the group; not its members' sourceUrl fields.",
+ "items": {
+ "format": "uri",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "description": {
+ "description": "Public explanation of the source group's purpose and composition.",
+ "type": "string"
+ },
+ "freshness": {
+ "additionalProperties": {},
+ "description": "Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.",
+ "propertyNames": {
+ "type": "string"
+ },
+ "type": "object"
+ },
+ "kind": {
+ "const": "SOURCE_GROUP",
+ "description": "Discriminator: SOURCE is one public source; SOURCE_GROUP is an explicit grouped provenance record.",
+ "type": "string"
+ },
+ "label": {
+ "description": "Human-readable label supplied by the knowledge record.",
+ "type": "string"
+ },
+ "limitations": {
+ "description": "Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "memberOrderMeaning": {
+ "description": "Explanation of whether/how member ordering matters; do not infer ranking or chronology.",
+ "type": "string"
+ },
+ "memberSourceIds": {
+ "description": "Explicit, non-empty list of source IDs belonging to this group; use these rather than splitting the group's opaque sourceId.",
+ "items": {
+ "description": "Opaque public SOURCE or SOURCE_GROUP ID, 1–200 characters; lowercase ASCII letters/digits with dot, colon or hyphen separators as specified by the pattern. Copy exactly from sources or search; never split or reconstruct composite-looking IDs.",
+ "maxLength": 200,
+ "minLength": 1,
+ "pattern": "^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$",
+ "type": "string"
+ },
+ "minItems": 1,
+ "type": "array"
+ },
+ "sourceId": {
+ "description": "Opaque public SOURCE or SOURCE_GROUP ID, 1–200 characters; lowercase ASCII letters/digits with dot, colon or hyphen separators as specified by the pattern. Copy exactly from sources or search; never split or reconstruct composite-looking IDs.",
+ "maxLength": 200,
+ "minLength": 1,
+ "pattern": "^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$",
+ "type": "string"
+ },
+ "visibility": {
+ "const": "PUBLIC",
+ "description": "PUBLIC marks provenance permitted in the public knowledge contract.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "sourceId",
+ "kind",
+ "visibility",
+ "label",
+ "category",
+ "citationUrl",
+ "description",
+ "memberSourceIds",
+ "memberOrderMeaning",
+ "citationUrls",
+ "freshness",
+ "limitations"
+ ],
+ "type": "object"
+ }
+]