KentekenKompas
Was dieses MCP kann
Provides cited, read-only Dutch vehicle model knowledge, comparisons, terminology, answers, and source provenance.
Tools
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['sourceModelKey', 'targetModelKey'], 'properties': {'sourceModelKey': {'type': 'string', 'pattern': '^[a-z0-9]+(?:-[a-z0-9]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Required exact canonical model key whose stored outgoing peer relation is read. 1â\x80\x93200 lowercase ASCII letters/digits in single-hyphen-separated groups, e.g. volkswagen-golf; exact match, direction matters. Use get_model_context to discover peers.'}, 'targetModelKey': {'type': 'string', 'pattern': '^[a-z0-9]+(?:-[a-z0-9]+)*$', 'maxLength': 200, 'minLength': 1, 'description': "Required exact canonical key of the target in the source model's stored peers. 1â\x80\x93200 lowercase ASCII letters/digits in single-hyphen-separated groups; exact match, must differ from sourceModelKey. Existence of two models does not guarantee a relation."}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['schemaVersion', 'knowledgeVersion', 'data', 'evidence', 'sources', 'freshness', 'limitations'], 'properties': {'data': {'type': 'object', 'required': ['sourceModelKey', 'targetModelKey', 'label', 'relationType', 'relationMeaning', 'classification', 'reasons', 'rationale', 'limitations', 'citationUrl'], 'properties': {'label': {'type': 'string', 'description': 'Human-readable label supplied by the knowledge record.'}, 'reasons': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Published reasons for the stored comparison relation.'}, 'rationale': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Published semantic rationale when supplied, otherwise the stored reasons; not newly generated explanation.'}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}, 'relationType': {'enum': ['DIRECT_ALTERNATIVE', 'CONTROL_MODEL', 'POWERTRAIN_CONTRAST', 'CROSS_BODY_COMPARISON'], 'type': 'string', 'description': 'Stored relation kind. CONTROL_MODEL, POWERTRAIN_CONTRAST and CROSS_BODY_COMPARISON must not be called direct alternatives.'}, 'classification': {'enum': ['OFFICIAL', 'DERIVED', 'EDITORIAL'], 'type': 'string', 'description': 'Knowledge classification: OFFICIAL, reproducibly DERIVED, or EDITORIAL. Preserve this label; it is not a confidence score.'}, 'sourceModelKey': {'type': 'string', 'pattern': '^[a-z0-9]+(?:-[a-z0-9]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Canonical source model key of the directed stored comparison relation.'}, 'targetModelKey': {'type': 'string', 'pattern': '^[a-z0-9]+(?:-[a-z0-9]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Canonical target model key of the directed stored comparison relation.'}, 'relationMeaning': {'type': 'string', 'description': 'Human-readable interpretation of the stored relationType.'}, 'importantDifference': {'type': 'string', 'description': 'Optional published difference between these models; absent means not supplied.'}}, 'description': '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.', 'additionalProperties': False}, 'sources': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['sourceId', 'kind', 'visibility', 'label', 'category', 'citationUrl', 'sourceUrl', 'freshness', 'limitations'], 'properties': {'kind': {'type': 'string', 'const': 'SOURCE', 'description': 'Discriminator: SOURCE is one public source; SOURCE_GROUP is an explicit grouped provenance record.'}, 'label': {'type': 'string', 'description': 'Human-readable label supplied by the knowledge record.'}, 'category': {'enum': ['OFFICIAL_PRIMARY_DATA', 'OFFICIAL_GUIDANCE', 'PRIMARY_NON_GOVERNMENT', 'REPUTABLE_EDITORIAL', 'BACKGROUND_REFERENCE', 'KENTEKENKOMPAS_DERIVED', 'KENTEKENKOMPAS_EDITORIAL'], 'type': 'string', 'description': 'Detailed provenance category. Keep it distinct from the coarser OFFICIAL/DERIVED/EDITORIAL classification.'}, 'sourceId': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'freshness': {'type': 'object', 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'sourceUrl': {'type': 'string', 'format': 'uri', 'description': 'Original public source URL for a SOURCE record; distinct from the KentekenKompas explanation URL.'}, 'visibility': {'type': 'string', 'const': 'PUBLIC', 'description': 'PUBLIC marks provenance permitted in the public knowledge contract.'}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['sourceId', 'kind', 'visibility', 'label', 'category', 'citationUrl', 'description', 'memberSourceIds', 'memberOrderMeaning', 'citationUrls', 'freshness', 'limitations'], 'properties': {'kind': {'type': 'string', 'const': 'SOURCE_GROUP', 'description': 'Discriminator: SOURCE is one public source; SOURCE_GROUP is an explicit grouped provenance record.'}, 'label': {'type': 'string', 'description': 'Human-readable label supplied by the knowledge record.'}, 'category': {'enum': ['OFFICIAL_PRIMARY_DATA', 'OFFICIAL_GUIDANCE', 'PRIMARY_NON_GOVERNMENT', 'REPUTABLE_EDITORIAL', 'BACKGROUND_REFERENCE', 'KENTEKENKOMPAS_DERIVED', 'KENTEKENKOMPAS_EDITORIAL'], 'type': 'string', 'description': 'Detailed provenance category. Keep it distinct from the coarser OFFICIAL/DERIVED/EDITORIAL classification.'}, 'sourceId': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'freshness': {'type': 'object', 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'visibility': {'type': 'string', 'const': 'PUBLIC', 'description': 'PUBLIC marks provenance permitted in the public knowledge contract.'}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'description': {'type': 'string', 'description': "Public explanation of the source group's purpose and composition."}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}, 'citationUrls': {'type': 'array', 'items': {'type': 'string', 'format': 'uri'}, 'description': "Human-readable citation links associated with the group; not its members' sourceUrl fields."}, 'memberSourceIds': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'minItems': 1, 'description': "Explicit, non-empty list of source IDs belonging to this group; use these rather than splitting the group's opaque sourceId."}, 'memberOrderMeaning': {'type': 'string', 'description': 'Explanation of whether/how member ordering matters; do not infer ranking or chronology.'}}, 'additionalProperties': False}]}, 'description': 'Resolved public SOURCE/SOURCE_GROUP records supporting this result. Search may leave this empty; use get_source_context for a discovered source ID.'}, 'coverage': {'type': 'object', 'description': 'Available coverage metadata; incomplete or absent coverage is not an assurance of complete knowledge. Preserve limitations.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'evidence': {'type': 'array', 'items': {'type': 'object', 'required': ['evidenceId', 'classification', 'sourceIds'], 'properties': {'sourceIds': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'description': 'Opaque IDs of supporting public sources or source groups. An empty array means no references exposed here, not proof of completeness.'}, 'evidenceId': {'type': 'string', 'description': 'Identifier of a cited evidence reference; resolve its sourceIds for provenance, not as a confidence score.'}, 'classification': {'enum': ['OFFICIAL', 'DERIVED', 'EDITORIAL'], 'type': 'string', 'description': 'Knowledge classification: OFFICIAL, reproducibly DERIVED, or EDITORIAL. Preserve this label; it is not a confidence score.'}}, 'additionalProperties': False}, 'description': 'Exposed evidence references with classifications and source IDs. May be empty (including search); not proof that knowledge has no provenance.'}, 'freshness': {'type': 'object', 'required': ['generatedAt'], 'properties': {'dataAsOf': {'type': 'string', 'description': 'Optional date/time to which the underlying data relates; absent means not supplied, not current.'}, 'generatedAt': {'type': 'string', 'description': "Timestamp of generation. At envelope level this is the active manifest's generatedAt, not a source refresh or publication date."}, 'sourceCheckedAt': {'type': 'string', 'description': 'Optional date/time when the source was checked, not necessarily the date the data describes.'}, 'editorialReviewedAt': {'type': 'string', 'description': 'Optional date/time of editorial review; does not certify that all underlying data was refreshed.'}}, 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'additionalProperties': False}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}, 'schemaVersion': {'type': 'string', 'const': 'kk-api-v1', 'description': 'Transport envelope contract kk-api-v1; distinct from the nested knowledge schema, knowledgeVersion and server version.'}, 'knowledgeVersion': {'type': 'string', 'description': 'Active knowledge release identifier from its manifest; not the API contract or MCP/registry server version.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['termKey'], 'properties': {'termKey': {'type': 'string', 'pattern': '^(?:term\\.)?[a-z0-9]+(?:-[a-z0-9]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Existing lowercase term slug or the same slug prefixed with term., e.g. apk or term.apk. 1ââ\x82¬â\x80\x9c200 characters; ASCII letters/digits with single hyphen separators. No spaces, uppercase or fuzzy matching; these fail schema validation before normalization.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['schemaVersion', 'knowledgeVersion', 'data', 'evidence', 'sources', 'freshness', 'limitations'], 'properties': {'data': {'type': 'object', 'required': ['schemaVersion', 'termId', 'term', 'question', 'answer', 'classification', 'sourceIds', 'freshness', 'limitations', 'citationUrl'], 'properties': {'term': {'type': 'string', 'description': 'Human-readable name of the existing Dutch vehicle term.'}, 'answer': {'type': 'string', 'description': 'Existing published answer text; returned without generating new factual claims.'}, 'termId': {'type': 'string', 'description': 'Canonical term identifier, including its term. prefix.'}, 'question': {'type': 'string', 'description': 'Existing published question answered by this knowledge record.'}, 'freshness': {'type': 'object', 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'sourceIds': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'description': 'Opaque IDs of supporting public sources or source groups. An empty array means no references exposed here, not proof of completeness.'}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}, 'schemaVersion': {'type': 'string', 'const': 'kk-public-knowledge-v1', 'description': 'Public knowledge record contract version kk-public-knowledge-v1; different from the enclosing API schema and server version.'}, 'classification': {'enum': ['OFFICIAL', 'DERIVED', 'EDITORIAL'], 'type': 'string', 'description': 'Knowledge classification: OFFICIAL, reproducibly DERIVED, or EDITORIAL. Preserve this label; it is not a confidence score.'}}, 'description': '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.', 'additionalProperties': False}, 'sources': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['sourceId', 'kind', 'visibility', 'label', 'category', 'citationUrl', 'sourceUrl', 'freshness', 'limitations'], 'properties': {'kind': {'type': 'string', 'const': 'SOURCE', 'description': 'Discriminator: SOURCE is one public source; SOURCE_GROUP is an explicit grouped provenance record.'}, 'label': {'type': 'string', 'description': 'Human-readable label supplied by the knowledge record.'}, 'category': {'enum': ['OFFICIAL_PRIMARY_DATA', 'OFFICIAL_GUIDANCE', 'PRIMARY_NON_GOVERNMENT', 'REPUTABLE_EDITORIAL', 'BACKGROUND_REFERENCE', 'KENTEKENKOMPAS_DERIVED', 'KENTEKENKOMPAS_EDITORIAL'], 'type': 'string', 'description': 'Detailed provenance category. Keep it distinct from the coarser OFFICIAL/DERIVED/EDITORIAL classification.'}, 'sourceId': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'freshness': {'type': 'object', 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'sourceUrl': {'type': 'string', 'format': 'uri', 'description': 'Original public source URL for a SOURCE record; distinct from the KentekenKompas explanation URL.'}, 'visibility': {'type': 'string', 'const': 'PUBLIC', 'description': 'PUBLIC marks provenance permitted in the public knowledge contract.'}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['sourceId', 'kind', 'visibility', 'label', 'category', 'citationUrl', 'description', 'memberSourceIds', 'memberOrderMeaning', 'citationUrls', 'freshness', 'limitations'], 'properties': {'kind': {'type': 'string', 'const': 'SOURCE_GROUP', 'description': 'Discriminator: SOURCE is one public source; SOURCE_GROUP is an explicit grouped provenance record.'}, 'label': {'type': 'string', 'description': 'Human-readable label supplied by the knowledge record.'}, 'category': {'enum': ['OFFICIAL_PRIMARY_DATA', 'OFFICIAL_GUIDANCE', 'PRIMARY_NON_GOVERNMENT', 'REPUTABLE_EDITORIAL', 'BACKGROUND_REFERENCE', 'KENTEKENKOMPAS_DERIVED', 'KENTEKENKOMPAS_EDITORIAL'], 'type': 'string', 'description': 'Detailed provenance category. Keep it distinct from the coarser OFFICIAL/DERIVED/EDITORIAL classification.'}, 'sourceId': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'freshness': {'type': 'object', 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'visibility': {'type': 'string', 'const': 'PUBLIC', 'description': 'PUBLIC marks provenance permitted in the public knowledge contract.'}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'description': {'type': 'string', 'description': "Public explanation of the source group's purpose and composition."}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}, 'citationUrls': {'type': 'array', 'items': {'type': 'string', 'format': 'uri'}, 'description': "Human-readable citation links associated with the group; not its members' sourceUrl fields."}, 'memberSourceIds': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'minItems': 1, 'description': "Explicit, non-empty list of source IDs belonging to this group; use these rather than splitting the group's opaque sourceId."}, 'memberOrderMeaning': {'type': 'string', 'description': 'Explanation of whether/how member ordering matters; do not infer ranking or chronology.'}}, 'additionalProperties': False}]}, 'description': 'Resolved public SOURCE/SOURCE_GROUP records supporting this result. Search may leave this empty; use get_source_context for a discovered source ID.'}, 'coverage': {'type': 'object', 'description': 'Available coverage metadata; incomplete or absent coverage is not an assurance of complete knowledge. Preserve limitations.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'evidence': {'type': 'array', 'items': {'type': 'object', 'required': ['evidenceId', 'classification', 'sourceIds'], 'properties': {'sourceIds': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'description': 'Opaque IDs of supporting public sources or source groups. An empty array means no references exposed here, not proof of completeness.'}, 'evidenceId': {'type': 'string', 'description': 'Identifier of a cited evidence reference; resolve its sourceIds for provenance, not as a confidence score.'}, 'classification': {'enum': ['OFFICIAL', 'DERIVED', 'EDITORIAL'], 'type': 'string', 'description': 'Knowledge classification: OFFICIAL, reproducibly DERIVED, or EDITORIAL. Preserve this label; it is not a confidence score.'}}, 'additionalProperties': False}, 'description': 'Exposed evidence references with classifications and source IDs. May be empty (including search); not proof that knowledge has no provenance.'}, 'freshness': {'type': 'object', 'required': ['generatedAt'], 'properties': {'dataAsOf': {'type': 'string', 'description': 'Optional date/time to which the underlying data relates; absent means not supplied, not current.'}, 'generatedAt': {'type': 'string', 'description': "Timestamp of generation. At envelope level this is the active manifest's generatedAt, not a source refresh or publication date."}, 'sourceCheckedAt': {'type': 'string', 'description': 'Optional date/time when the source was checked, not necessarily the date the data describes.'}, 'editorialReviewedAt': {'type': 'string', 'description': 'Optional date/time of editorial review; does not certify that all underlying data was refreshed.'}}, 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'additionalProperties': False}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}, 'schemaVersion': {'type': 'string', 'const': 'kk-api-v1', 'description': 'Transport envelope contract kk-api-v1; distinct from the nested knowledge schema, knowledgeVersion and server version.'}, 'knowledgeVersion': {'type': 'string', 'description': 'Active knowledge release identifier from its manifest; not the API contract or MCP/registry server version.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['answerId'], 'properties': {'answerId': {'type': 'string', 'pattern': '^answer\\.[a-z0-9-]+\\.[a-z0-9-]+$', 'maxLength': 200, 'minLength': 1, 'description': 'Stable existing Direct Answer identifier, 1ââ\x82¬â\x80\x9c200 characters, matching answer.<lowercase-model-or-topic>.<lowercase-intent> (ASCII letters, digits and hyphens in both parts). Copy the full ID from discovery; no free-text question.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['schemaVersion', 'knowledgeVersion', 'data', 'evidence', 'sources', 'freshness', 'limitations'], 'properties': {'data': {'type': 'object', 'required': ['answerId', 'question', 'intents', 'answer', 'evidenceIds', 'sourceIds', 'classification', 'freshness', 'limitations', 'citationUrl'], 'properties': {'topic': {'type': 'string', 'description': 'Optional topic identifier for a non-model or topic-specific Direct Answer.'}, 'answer': {'type': 'string', 'description': 'Existing published answer text; returned without generating new factual claims.'}, 'intents': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Existing intent labels attached to this Direct Answer; these are discovery metadata, not generated confidence estimates.'}, 'answerId': {'type': 'string', 'pattern': '^answer\\.[a-z0-9-]+\\.[a-z0-9-]+$', 'maxLength': 200, 'minLength': 1, 'description': 'Stable existing Direct Answer identifier, 1ââ\x82¬â\x80\x9c200 characters, matching answer.<lowercase-model-or-topic>.<lowercase-intent> (ASCII letters, digits and hyphens in both parts). Copy the full ID from discovery; no free-text question.'}, 'modelKey': {'type': 'string', 'pattern': '^[a-z0-9]+(?:-[a-z0-9]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Canonical model identifier from search results or kk://models, e.g. volkswagen-golf. 1ââ\x82¬â\x80\x9c200 characters; lowercase ASCII letters/digits separated by single hyphens. Exact match; no aliases, spaces, uppercase, URL or license plate.'}, 'question': {'type': 'string', 'description': 'Existing published question answered by this knowledge record.'}, 'freshness': {'type': 'object', 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'sourceIds': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'description': 'Opaque IDs of supporting public sources or source groups. An empty array means no references exposed here, not proof of completeness.'}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'evidenceIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Identifiers of the evidence supporting this answer; envelope evidence contains the exposed references.'}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}, 'classification': {'enum': ['OFFICIAL', 'DERIVED', 'EDITORIAL'], 'type': 'string', 'description': 'Knowledge classification: OFFICIAL, reproducibly DERIVED, or EDITORIAL. Preserve this label; it is not a confidence score.'}}, 'description': '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.', 'additionalProperties': False}, 'sources': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['sourceId', 'kind', 'visibility', 'label', 'category', 'citationUrl', 'sourceUrl', 'freshness', 'limitations'], 'properties': {'kind': {'type': 'string', 'const': 'SOURCE', 'description': 'Discriminator: SOURCE is one public source; SOURCE_GROUP is an explicit grouped provenance record.'}, 'label': {'type': 'string', 'description': 'Human-readable label supplied by the knowledge record.'}, 'category': {'enum': ['OFFICIAL_PRIMARY_DATA', 'OFFICIAL_GUIDANCE', 'PRIMARY_NON_GOVERNMENT', 'REPUTABLE_EDITORIAL', 'BACKGROUND_REFERENCE', 'KENTEKENKOMPAS_DERIVED', 'KENTEKENKOMPAS_EDITORIAL'], 'type': 'string', 'description': 'Detailed provenance category. Keep it distinct from the coarser OFFICIAL/DERIVED/EDITORIAL classification.'}, 'sourceId': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'freshness': {'type': 'object', 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'sourceUrl': {'type': 'string', 'format': 'uri', 'description': 'Original public source URL for a SOURCE record; distinct from the KentekenKompas explanation URL.'}, 'visibility': {'type': 'string', 'const': 'PUBLIC', 'description': 'PUBLIC marks provenance permitted in the public knowledge contract.'}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['sourceId', 'kind', 'visibility', 'label', 'category', 'citationUrl', 'description', 'memberSourceIds', 'memberOrderMeaning', 'citationUrls', 'freshness', 'limitations'], 'properties': {'kind': {'type': 'string', 'const': 'SOURCE_GROUP', 'description': 'Discriminator: SOURCE is one public source; SOURCE_GROUP is an explicit grouped provenance record.'}, 'label': {'type': 'string', 'description': 'Human-readable label supplied by the knowledge record.'}, 'category': {'enum': ['OFFICIAL_PRIMARY_DATA', 'OFFICIAL_GUIDANCE', 'PRIMARY_NON_GOVERNMENT', 'REPUTABLE_EDITORIAL', 'BACKGROUND_REFERENCE', 'KENTEKENKOMPAS_DERIVED', 'KENTEKENKOMPAS_EDITORIAL'], 'type': 'string', 'description': 'Detailed provenance category. Keep it distinct from the coarser OFFICIAL/DERIVED/EDITORIAL classification.'}, 'sourceId': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'freshness': {'type': 'object', 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'visibility': {'type': 'string', 'const': 'PUBLIC', 'description': 'PUBLIC marks provenance permitted in the public knowledge contract.'}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'description': {'type': 'string', 'description': "Public explanation of the source group's purpose and composition."}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}, 'citationUrls': {'type': 'array', 'items': {'type': 'string', 'format': 'uri'}, 'description': "Human-readable citation links associated with the group; not its members' sourceUrl fields."}, 'memberSourceIds': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'minItems': 1, 'description': "Explicit, non-empty list of source IDs belonging to this group; use these rather than splitting the group's opaque sourceId."}, 'memberOrderMeaning': {'type': 'string', 'description': 'Explanation of whether/how member ordering matters; do not infer ranking or chronology.'}}, 'additionalProperties': False}]}, 'description': 'Resolved public SOURCE/SOURCE_GROUP records supporting this result. Search may leave this empty; use get_source_context for a discovered source ID.'}, 'coverage': {'type': 'object', 'description': 'Available coverage metadata; incomplete or absent coverage is not an assurance of complete knowledge. Preserve limitations.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'evidence': {'type': 'array', 'items': {'type': 'object', 'required': ['evidenceId', 'classification', 'sourceIds'], 'properties': {'sourceIds': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'description': 'Opaque IDs of supporting public sources or source groups. An empty array means no references exposed here, not proof of completeness.'}, 'evidenceId': {'type': 'string', 'description': 'Identifier of a cited evidence reference; resolve its sourceIds for provenance, not as a confidence score.'}, 'classification': {'enum': ['OFFICIAL', 'DERIVED', 'EDITORIAL'], 'type': 'string', 'description': 'Knowledge classification: OFFICIAL, reproducibly DERIVED, or EDITORIAL. Preserve this label; it is not a confidence score.'}}, 'additionalProperties': False}, 'description': 'Exposed evidence references with classifications and source IDs. May be empty (including search); not proof that knowledge has no provenance.'}, 'freshness': {'type': 'object', 'required': ['generatedAt'], 'properties': {'dataAsOf': {'type': 'string', 'description': 'Optional date/time to which the underlying data relates; absent means not supplied, not current.'}, 'generatedAt': {'type': 'string', 'description': "Timestamp of generation. At envelope level this is the active manifest's generatedAt, not a source refresh or publication date."}, 'sourceCheckedAt': {'type': 'string', 'description': 'Optional date/time when the source was checked, not necessarily the date the data describes.'}, 'editorialReviewedAt': {'type': 'string', 'description': 'Optional date/time of editorial review; does not certify that all underlying data was refreshed.'}}, 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'additionalProperties': False}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}, 'schemaVersion': {'type': 'string', 'const': 'kk-api-v1', 'description': 'Transport envelope contract kk-api-v1; distinct from the nested knowledge schema, knowledgeVersion and server version.'}, 'knowledgeVersion': {'type': 'string', 'description': 'Active knowledge release identifier from its manifest; not the API contract or MCP/registry server version.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['schemaVersion', 'knowledgeVersion', 'data', 'evidence', 'sources', 'freshness', 'limitations'], 'properties': {'data': {'type': 'object', 'required': ['schemaVersion', 'status', 'prices', 'classification', 'sourceIds', 'freshness', 'limitations', 'citationUrl'], 'properties': {'prices': {'type': 'array', 'items': {'not': {}}, 'maxItems': 0, 'description': 'Always empty in this contract. Never interpret missing prices as zero or substitute an invented current price.'}, 'status': {'type': 'string', 'const': 'SOURCE_REQUIRED_AT_RUNTIME', 'description': 'SOURCE_REQUIRED_AT_RUNTIME means there is no configured validated current-price adapter; this is a successful status response, not a current price.'}, 'freshness': {'type': 'object', 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'sourceIds': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'description': 'Opaque IDs of supporting public sources or source groups. An empty array means no references exposed here, not proof of completeness.'}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'minItems': 1, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}, 'schemaVersion': {'type': 'string', 'const': 'kk-public-knowledge-v1', 'description': 'Public knowledge record contract version kk-public-knowledge-v1; different from the enclosing API schema and server version.'}, 'classification': {'enum': ['OFFICIAL', 'DERIVED', 'EDITORIAL'], 'type': 'string', 'description': 'Knowledge classification: OFFICIAL, reproducibly DERIVED, or EDITORIAL. Preserve this label; it is not a confidence score.'}}, 'description': '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.', 'additionalProperties': False}, 'sources': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['sourceId', 'kind', 'visibility', 'label', 'category', 'citationUrl', 'sourceUrl', 'freshness', 'limitations'], 'properties': {'kind': {'type': 'string', 'const': 'SOURCE', 'description': 'Discriminator: SOURCE is one public source; SOURCE_GROUP is an explicit grouped provenance record.'}, 'label': {'type': 'string', 'description': 'Human-readable label supplied by the knowledge record.'}, 'category': {'enum': ['OFFICIAL_PRIMARY_DATA', 'OFFICIAL_GUIDANCE', 'PRIMARY_NON_GOVERNMENT', 'REPUTABLE_EDITORIAL', 'BACKGROUND_REFERENCE', 'KENTEKENKOMPAS_DERIVED', 'KENTEKENKOMPAS_EDITORIAL'], 'type': 'string', 'description': 'Detailed provenance category. Keep it distinct from the coarser OFFICIAL/DERIVED/EDITORIAL classification.'}, 'sourceId': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'freshness': {'type': 'object', 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'sourceUrl': {'type': 'string', 'format': 'uri', 'description': 'Original public source URL for a SOURCE record; distinct from the KentekenKompas explanation URL.'}, 'visibility': {'type': 'string', 'const': 'PUBLIC', 'description': 'PUBLIC marks provenance permitted in the public knowledge contract.'}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['sourceId', 'kind', 'visibility', 'label', 'category', 'citationUrl', 'description', 'memberSourceIds', 'memberOrderMeaning', 'citationUrls', 'freshness', 'limitations'], 'properties': {'kind': {'type': 'string', 'const': 'SOURCE_GROUP', 'description': 'Discriminator: SOURCE is one public source; SOURCE_GROUP is an explicit grouped provenance record.'}, 'label': {'type': 'string', 'description': 'Human-readable label supplied by the knowledge record.'}, 'category': {'enum': ['OFFICIAL_PRIMARY_DATA', 'OFFICIAL_GUIDANCE', 'PRIMARY_NON_GOVERNMENT', 'REPUTABLE_EDITORIAL', 'BACKGROUND_REFERENCE', 'KENTEKENKOMPAS_DERIVED', 'KENTEKENKOMPAS_EDITORIAL'], 'type': 'string', 'description': 'Detailed provenance category. Keep it distinct from the coarser OFFICIAL/DERIVED/EDITORIAL classification.'}, 'sourceId': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'freshness': {'type': 'object', 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'visibility': {'type': 'string', 'const': 'PUBLIC', 'description': 'PUBLIC marks provenance permitted in the public knowledge contract.'}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'description': {'type': 'string', 'description': "Public explanation of the source group's purpose and composition."}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}, 'citationUrls': {'type': 'array', 'items': {'type': 'string', 'format': 'uri'}, 'description': "Human-readable citation links associated with the group; not its members' sourceUrl fields."}, 'memberSourceIds': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'minItems': 1, 'description': "Explicit, non-empty list of source IDs belonging to this group; use these rather than splitting the group's opaque sourceId."}, 'memberOrderMeaning': {'type': 'string', 'description': 'Explanation of whether/how member ordering matters; do not infer ranking or chronology.'}}, 'additionalProperties': False}]}, 'description': 'Resolved public SOURCE/SOURCE_GROUP records supporting this result. Search may leave this empty; use get_source_context for a discovered source ID.'}, 'coverage': {'type': 'object', 'description': 'Available coverage metadata; incomplete or absent coverage is not an assurance of complete knowledge. Preserve limitations.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'evidence': {'type': 'array', 'items': {'type': 'object', 'required': ['evidenceId', 'classification', 'sourceIds'], 'properties': {'sourceIds': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'description': 'Opaque IDs of supporting public sources or source groups. An empty array means no references exposed here, not proof of completeness.'}, 'evidenceId': {'type': 'string', 'description': 'Identifier of a cited evidence reference; resolve its sourceIds for provenance, not as a confidence score.'}, 'classification': {'enum': ['OFFICIAL', 'DERIVED', 'EDITORIAL'], 'type': 'string', 'description': 'Knowledge classification: OFFICIAL, reproducibly DERIVED, or EDITORIAL. Preserve this label; it is not a confidence score.'}}, 'additionalProperties': False}, 'description': 'Exposed evidence references with classifications and source IDs. May be empty (including search); not proof that knowledge has no provenance.'}, 'freshness': {'type': 'object', 'required': ['generatedAt'], 'properties': {'dataAsOf': {'type': 'string', 'description': 'Optional date/time to which the underlying data relates; absent means not supplied, not current.'}, 'generatedAt': {'type': 'string', 'description': "Timestamp of generation. At envelope level this is the active manifest's generatedAt, not a source refresh or publication date."}, 'sourceCheckedAt': {'type': 'string', 'description': 'Optional date/time when the source was checked, not necessarily the date the data describes.'}, 'editorialReviewedAt': {'type': 'string', 'description': 'Optional date/time of editorial review; does not certify that all underlying data was refreshed.'}}, 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'additionalProperties': False}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}, 'schemaVersion': {'type': 'string', 'const': 'kk-api-v1', 'description': 'Transport envelope contract kk-api-v1; distinct from the nested knowledge schema, knowledgeVersion and server version.'}, 'knowledgeVersion': {'type': 'string', 'description': 'Active knowledge release identifier from its manifest; not the API contract or MCP/registry server version.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['modelKey'], 'properties': {'modelKey': {'type': 'string', 'pattern': '^[a-z0-9]+(?:-[a-z0-9]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Canonical model identifier from search results or kk://models, e.g. volkswagen-golf. 1ââ\x82¬â\x80\x9c200 characters; lowercase ASCII letters/digits separated by single hyphens. Exact match; no aliases, spaces, uppercase, URL or license plate.'}, 'includeAnswers': {'type': 'boolean', 'default': False, 'description': "Optional, default false. When true, include the model's existing Direct Answers in data.answers and merge their evidence, sources and limitations. Does not generate answers or change the model's freshness."}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['schemaVersion', 'knowledgeVersion', 'data', 'evidence', 'sources', 'freshness', 'limitations'], 'properties': {'data': {'type': 'object', 'required': ['model', 'classification'], 'properties': {'model': {'type': 'object', 'required': ['schemaVersion', 'modelKey', 'brand', 'model', 'canonicalRoute', 'citationUrl', 'vehicleRole', 'bodyProfile', 'configurationProfile', 'vehicleFormContext', 'namedVariants', 'powertrainProfile', 'useFit', 'insights', 'buyerActions', 'riskQuestion', 'peers', 'directAnswerId', 'editorialIndicator', 'evidenceReferences', 'sourceIds', 'freshness', 'coverage', 'limitations'], 'properties': {'brand': {'type': 'string', 'description': 'Brand label of the canonical model, not an individual vehicle registration.'}, 'model': {'type': 'string', 'description': "Canonical model label or model-level knowledge object, as specified by the field's schema."}, 'peers': {'type': 'array', 'items': {}, 'description': 'Existing outgoing model relations. Relation type matters; not every peer is a direct alternative. Use compare_vehicle_models for a known pair.'}, 'useFit': {'type': 'object', 'description': 'Published use-fit context; editorial interpretation rather than a personal purchase recommendation.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'coverage': {'type': 'object', 'description': 'Available coverage metadata; incomplete or absent coverage is not an assurance of complete knowledge. Preserve limitations.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'insights': {'type': 'array', 'items': {}, 'description': 'Existing public model insights with their release-specific fields and limitations.'}, 'modelKey': {'type': 'string', 'pattern': '^[a-z0-9]+(?:-[a-z0-9]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Canonical model identifier from search results or kk://models, e.g. volkswagen-golf. 1ââ\x82¬â\x80\x9c200 characters; lowercase ASCII letters/digits separated by single hyphens. Exact match; no aliases, spaces, uppercase, URL or license plate.'}, 'freshness': {'type': 'object', 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'sourceIds': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'description': 'Opaque IDs of supporting public sources or source groups. An empty array means no references exposed here, not proof of completeness.'}, 'bodyProfile': {'type': 'object', 'description': "Imported public body-style profile. Retains the knowledge release's nested fields; not specifications of an individual vehicle.", 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}, 'vehicleRole': {'type': 'string', 'description': "Published description of the model's vehicle/use role."}, 'buyerActions': {'type': 'array', 'items': {}, 'description': 'Existing public buyer checks/actions; no external action is performed by returning them.'}, 'riskQuestion': {'type': 'object', 'description': 'Published model-level risk/question context, not an assessment of a specific car.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'namedVariants': {'type': 'array', 'items': {}, 'description': 'Existing public named-variant records; no inferred or generated variants.'}, 'schemaVersion': {'type': 'string', 'const': 'kk-public-knowledge-v1', 'description': 'Public knowledge record contract version kk-public-knowledge-v1; different from the enclosing API schema and server version.'}, 'canonicalRoute': {'type': 'string', 'description': 'Relative human-readable website route for the canonical model.'}, 'directAnswerId': {'type': 'string', 'pattern': '^answer\\.[a-z0-9-]+\\.[a-z0-9-]+$', 'maxLength': 200, 'minLength': 1, 'description': "Stable ID of this model's primary existing Direct Answer; retrieve it with get_answer_context."}, 'powertrainProfile': {'type': 'object', 'description': 'Imported public powertrain context; no promise of every engine or individual vehicle configuration.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'editorialIndicator': {'type': 'object', 'description': 'Imported indicator with explicit knowledge classification; not a probability or individual-vehicle verdict.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'evidenceReferences': {'type': 'array', 'items': {}, 'description': 'Public model-level evidence records as supplied by the release.'}, 'vehicleFormContext': {'type': 'object', 'description': 'Imported public vehicle-form context and its applicability boundaries.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'configurationProfile': {'type': 'object', 'description': 'Imported public configuration context; available variants and coverage are release-specific.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}, 'description': 'Validated model-level knowledge; not an assessment of one individual vehicle.', 'additionalProperties': False}, 'answers': {'type': 'array', 'items': {'type': 'object', 'required': ['answerId', 'question', 'intents', 'answer', 'evidenceIds', 'sourceIds', 'classification', 'freshness', 'limitations', 'citationUrl'], 'properties': {'topic': {'type': 'string', 'description': 'Optional topic identifier for a non-model or topic-specific Direct Answer.'}, 'answer': {'type': 'string', 'description': 'Existing published answer text; returned without generating new factual claims.'}, 'intents': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Existing intent labels attached to this Direct Answer; these are discovery metadata, not generated confidence estimates.'}, 'answerId': {'type': 'string', 'pattern': '^answer\\.[a-z0-9-]+\\.[a-z0-9-]+$', 'maxLength': 200, 'minLength': 1, 'description': 'Stable existing Direct Answer identifier, 1ââ\x82¬â\x80\x9c200 characters, matching answer.<lowercase-model-or-topic>.<lowercase-intent> (ASCII letters, digits and hyphens in both parts). Copy the full ID from discovery; no free-text question.'}, 'modelKey': {'type': 'string', 'pattern': '^[a-z0-9]+(?:-[a-z0-9]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Canonical model identifier from search results or kk://models, e.g. volkswagen-golf. 1ââ\x82¬â\x80\x9c200 characters; lowercase ASCII letters/digits separated by single hyphens. Exact match; no aliases, spaces, uppercase, URL or license plate.'}, 'question': {'type': 'string', 'description': 'Existing published question answered by this knowledge record.'}, 'freshness': {'type': 'object', 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'sourceIds': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'description': 'Opaque IDs of supporting public sources or source groups. An empty array means no references exposed here, not proof of completeness.'}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'evidenceIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Identifiers of the evidence supporting this answer; envelope evidence contains the exposed references.'}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}, 'classification': {'enum': ['OFFICIAL', 'DERIVED', 'EDITORIAL'], 'type': 'string', 'description': 'Knowledge classification: OFFICIAL, reproducibly DERIVED, or EDITORIAL. Preserve this label; it is not a confidence score.'}}, 'additionalProperties': False}, 'description': 'Existing model Direct Answers, present only when includeAnswers=true; an empty list means none exposed for the model.'}, 'classification': {'enum': ['OFFICIAL', 'DERIVED', 'EDITORIAL'], 'type': 'string', 'description': 'Knowledge classification: OFFICIAL, reproducibly DERIVED, or EDITORIAL. Preserve this label; it is not a confidence score.'}}, 'description': '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.', 'additionalProperties': False}, 'sources': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['sourceId', 'kind', 'visibility', 'label', 'category', 'citationUrl', 'sourceUrl', 'freshness', 'limitations'], 'properties': {'kind': {'type': 'string', 'const': 'SOURCE', 'description': 'Discriminator: SOURCE is one public source; SOURCE_GROUP is an explicit grouped provenance record.'}, 'label': {'type': 'string', 'description': 'Human-readable label supplied by the knowledge record.'}, 'category': {'enum': ['OFFICIAL_PRIMARY_DATA', 'OFFICIAL_GUIDANCE', 'PRIMARY_NON_GOVERNMENT', 'REPUTABLE_EDITORIAL', 'BACKGROUND_REFERENCE', 'KENTEKENKOMPAS_DERIVED', 'KENTEKENKOMPAS_EDITORIAL'], 'type': 'string', 'description': 'Detailed provenance category. Keep it distinct from the coarser OFFICIAL/DERIVED/EDITORIAL classification.'}, 'sourceId': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'freshness': {'type': 'object', 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'sourceUrl': {'type': 'string', 'format': 'uri', 'description': 'Original public source URL for a SOURCE record; distinct from the KentekenKompas explanation URL.'}, 'visibility': {'type': 'string', 'const': 'PUBLIC', 'description': 'PUBLIC marks provenance permitted in the public knowledge contract.'}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['sourceId', 'kind', 'visibility', 'label', 'category', 'citationUrl', 'description', 'memberSourceIds', 'memberOrderMeaning', 'citationUrls', 'freshness', 'limitations'], 'properties': {'kind': {'type': 'string', 'const': 'SOURCE_GROUP', 'description': 'Discriminator: SOURCE is one public source; SOURCE_GROUP is an explicit grouped provenance record.'}, 'label': {'type': 'string', 'description': 'Human-readable label supplied by the knowledge record.'}, 'category': {'enum': ['OFFICIAL_PRIMARY_DATA', 'OFFICIAL_GUIDANCE', 'PRIMARY_NON_GOVERNMENT', 'REPUTABLE_EDITORIAL', 'BACKGROUND_REFERENCE', 'KENTEKENKOMPAS_DERIVED', 'KENTEKENKOMPAS_EDITORIAL'], 'type': 'string', 'description': 'Detailed provenance category. Keep it distinct from the coarser OFFICIAL/DERIVED/EDITORIAL classification.'}, 'sourceId': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'freshness': {'type': 'object', 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'visibility': {'type': 'string', 'const': 'PUBLIC', 'description': 'PUBLIC marks provenance permitted in the public knowledge contract.'}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'description': {'type': 'string', 'description': "Public explanation of the source group's purpose and composition."}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}, 'citationUrls': {'type': 'array', 'items': {'type': 'string', 'format': 'uri'}, 'description': "Human-readable citation links associated with the group; not its members' sourceUrl fields."}, 'memberSourceIds': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'minItems': 1, 'description': "Explicit, non-empty list of source IDs belonging to this group; use these rather than splitting the group's opaque sourceId."}, 'memberOrderMeaning': {'type': 'string', 'description': 'Explanation of whether/how member ordering matters; do not infer ranking or chronology.'}}, 'additionalProperties': False}]}, 'description': 'Resolved public SOURCE/SOURCE_GROUP records supporting this result. Search may leave this empty; use get_source_context for a discovered source ID.'}, 'coverage': {'type': 'object', 'description': 'Available coverage metadata; incomplete or absent coverage is not an assurance of complete knowledge. Preserve limitations.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'evidence': {'type': 'array', 'items': {'type': 'object', 'required': ['evidenceId', 'classification', 'sourceIds'], 'properties': {'sourceIds': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'description': 'Opaque IDs of supporting public sources or source groups. An empty array means no references exposed here, not proof of completeness.'}, 'evidenceId': {'type': 'string', 'description': 'Identifier of a cited evidence reference; resolve its sourceIds for provenance, not as a confidence score.'}, 'classification': {'enum': ['OFFICIAL', 'DERIVED', 'EDITORIAL'], 'type': 'string', 'description': 'Knowledge classification: OFFICIAL, reproducibly DERIVED, or EDITORIAL. Preserve this label; it is not a confidence score.'}}, 'additionalProperties': False}, 'description': 'Exposed evidence references with classifications and source IDs. May be empty (including search); not proof that knowledge has no provenance.'}, 'freshness': {'type': 'object', 'required': ['generatedAt'], 'properties': {'dataAsOf': {'type': 'string', 'description': 'Optional date/time to which the underlying data relates; absent means not supplied, not current.'}, 'generatedAt': {'type': 'string', 'description': "Timestamp of generation. At envelope level this is the active manifest's generatedAt, not a source refresh or publication date."}, 'sourceCheckedAt': {'type': 'string', 'description': 'Optional date/time when the source was checked, not necessarily the date the data describes.'}, 'editorialReviewedAt': {'type': 'string', 'description': 'Optional date/time of editorial review; does not certify that all underlying data was refreshed.'}}, 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'additionalProperties': False}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}, 'schemaVersion': {'type': 'string', 'const': 'kk-api-v1', 'description': 'Transport envelope contract kk-api-v1; distinct from the nested knowledge schema, knowledgeVersion and server version.'}, 'knowledgeVersion': {'type': 'string', 'description': 'Active knowledge release identifier from its manifest; not the API contract or MCP/registry server version.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['sourceId'], 'properties': {'sourceId': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['schemaVersion', 'knowledgeVersion', 'data', 'evidence', 'sources', 'freshness', 'limitations'], 'properties': {'data': {'anyOf': [{'type': 'object', 'required': ['sourceId', 'kind', 'visibility', 'label', 'category', 'citationUrl', 'sourceUrl', 'freshness', 'limitations'], 'properties': {'kind': {'type': 'string', 'const': 'SOURCE', 'description': 'Discriminator: SOURCE is one public source; SOURCE_GROUP is an explicit grouped provenance record.'}, 'label': {'type': 'string', 'description': 'Human-readable label supplied by the knowledge record.'}, 'category': {'enum': ['OFFICIAL_PRIMARY_DATA', 'OFFICIAL_GUIDANCE', 'PRIMARY_NON_GOVERNMENT', 'REPUTABLE_EDITORIAL', 'BACKGROUND_REFERENCE', 'KENTEKENKOMPAS_DERIVED', 'KENTEKENKOMPAS_EDITORIAL'], 'type': 'string', 'description': 'Detailed provenance category. Keep it distinct from the coarser OFFICIAL/DERIVED/EDITORIAL classification.'}, 'sourceId': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'freshness': {'type': 'object', 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'sourceUrl': {'type': 'string', 'format': 'uri', 'description': 'Original public source URL for a SOURCE record; distinct from the KentekenKompas explanation URL.'}, 'visibility': {'type': 'string', 'const': 'PUBLIC', 'description': 'PUBLIC marks provenance permitted in the public knowledge contract.'}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['sourceId', 'kind', 'visibility', 'label', 'category', 'citationUrl', 'description', 'memberSourceIds', 'memberOrderMeaning', 'citationUrls', 'freshness', 'limitations'], 'properties': {'kind': {'type': 'string', 'const': 'SOURCE_GROUP', 'description': 'Discriminator: SOURCE is one public source; SOURCE_GROUP is an explicit grouped provenance record.'}, 'label': {'type': 'string', 'description': 'Human-readable label supplied by the knowledge record.'}, 'category': {'enum': ['OFFICIAL_PRIMARY_DATA', 'OFFICIAL_GUIDANCE', 'PRIMARY_NON_GOVERNMENT', 'REPUTABLE_EDITORIAL', 'BACKGROUND_REFERENCE', 'KENTEKENKOMPAS_DERIVED', 'KENTEKENKOMPAS_EDITORIAL'], 'type': 'string', 'description': 'Detailed provenance category. Keep it distinct from the coarser OFFICIAL/DERIVED/EDITORIAL classification.'}, 'sourceId': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'freshness': {'type': 'object', 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'visibility': {'type': 'string', 'const': 'PUBLIC', 'description': 'PUBLIC marks provenance permitted in the public knowledge contract.'}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'description': {'type': 'string', 'description': "Public explanation of the source group's purpose and composition."}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}, 'citationUrls': {'type': 'array', 'items': {'type': 'string', 'format': 'uri'}, 'description': "Human-readable citation links associated with the group; not its members' sourceUrl fields."}, 'memberSourceIds': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'minItems': 1, 'description': "Explicit, non-empty list of source IDs belonging to this group; use these rather than splitting the group's opaque sourceId."}, 'memberOrderMeaning': {'type': 'string', 'description': 'Explanation of whether/how member ordering matters; do not infer ranking or chronology.'}}, 'additionalProperties': False}], 'description': '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.'}, 'sources': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['sourceId', 'kind', 'visibility', 'label', 'category', 'citationUrl', 'sourceUrl', 'freshness', 'limitations'], 'properties': {'kind': {'type': 'string', 'const': 'SOURCE', 'description': 'Discriminator: SOURCE is one public source; SOURCE_GROUP is an explicit grouped provenance record.'}, 'label': {'type': 'string', 'description': 'Human-readable label supplied by the knowledge record.'}, 'category': {'enum': ['OFFICIAL_PRIMARY_DATA', 'OFFICIAL_GUIDANCE', 'PRIMARY_NON_GOVERNMENT', 'REPUTABLE_EDITORIAL', 'BACKGROUND_REFERENCE', 'KENTEKENKOMPAS_DERIVED', 'KENTEKENKOMPAS_EDITORIAL'], 'type': 'string', 'description': 'Detailed provenance category. Keep it distinct from the coarser OFFICIAL/DERIVED/EDITORIAL classification.'}, 'sourceId': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'freshness': {'type': 'object', 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'sourceUrl': {'type': 'string', 'format': 'uri', 'description': 'Original public source URL for a SOURCE record; distinct from the KentekenKompas explanation URL.'}, 'visibility': {'type': 'string', 'const': 'PUBLIC', 'description': 'PUBLIC marks provenance permitted in the public knowledge contract.'}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['sourceId', 'kind', 'visibility', 'label', 'category', 'citationUrl', 'description', 'memberSourceIds', 'memberOrderMeaning', 'citationUrls', 'freshness', 'limitations'], 'properties': {'kind': {'type': 'string', 'const': 'SOURCE_GROUP', 'description': 'Discriminator: SOURCE is one public source; SOURCE_GROUP is an explicit grouped provenance record.'}, 'label': {'type': 'string', 'description': 'Human-readable label supplied by the knowledge record.'}, 'category': {'enum': ['OFFICIAL_PRIMARY_DATA', 'OFFICIAL_GUIDANCE', 'PRIMARY_NON_GOVERNMENT', 'REPUTABLE_EDITORIAL', 'BACKGROUND_REFERENCE', 'KENTEKENKOMPAS_DERIVED', 'KENTEKENKOMPAS_EDITORIAL'], 'type': 'string', 'description': 'Detailed provenance category. Keep it distinct from the coarser OFFICIAL/DERIVED/EDITORIAL classification.'}, 'sourceId': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'freshness': {'type': 'object', 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'visibility': {'type': 'string', 'const': 'PUBLIC', 'description': 'PUBLIC marks provenance permitted in the public knowledge contract.'}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'description': {'type': 'string', 'description': "Public explanation of the source group's purpose and composition."}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}, 'citationUrls': {'type': 'array', 'items': {'type': 'string', 'format': 'uri'}, 'description': "Human-readable citation links associated with the group; not its members' sourceUrl fields."}, 'memberSourceIds': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'minItems': 1, 'description': "Explicit, non-empty list of source IDs belonging to this group; use these rather than splitting the group's opaque sourceId."}, 'memberOrderMeaning': {'type': 'string', 'description': 'Explanation of whether/how member ordering matters; do not infer ranking or chronology.'}}, 'additionalProperties': False}]}, 'description': 'Resolved public SOURCE/SOURCE_GROUP records supporting this result. Search may leave this empty; use get_source_context for a discovered source ID.'}, 'coverage': {'type': 'object', 'description': 'Available coverage metadata; incomplete or absent coverage is not an assurance of complete knowledge. Preserve limitations.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'evidence': {'type': 'array', 'items': {'type': 'object', 'required': ['evidenceId', 'classification', 'sourceIds'], 'properties': {'sourceIds': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'description': 'Opaque IDs of supporting public sources or source groups. An empty array means no references exposed here, not proof of completeness.'}, 'evidenceId': {'type': 'string', 'description': 'Identifier of a cited evidence reference; resolve its sourceIds for provenance, not as a confidence score.'}, 'classification': {'enum': ['OFFICIAL', 'DERIVED', 'EDITORIAL'], 'type': 'string', 'description': 'Knowledge classification: OFFICIAL, reproducibly DERIVED, or EDITORIAL. Preserve this label; it is not a confidence score.'}}, 'additionalProperties': False}, 'description': 'Exposed evidence references with classifications and source IDs. May be empty (including search); not proof that knowledge has no provenance.'}, 'freshness': {'type': 'object', 'required': ['generatedAt'], 'properties': {'dataAsOf': {'type': 'string', 'description': 'Optional date/time to which the underlying data relates; absent means not supplied, not current.'}, 'generatedAt': {'type': 'string', 'description': "Timestamp of generation. At envelope level this is the active manifest's generatedAt, not a source refresh or publication date."}, 'sourceCheckedAt': {'type': 'string', 'description': 'Optional date/time when the source was checked, not necessarily the date the data describes.'}, 'editorialReviewedAt': {'type': 'string', 'description': 'Optional date/time of editorial review; does not certify that all underlying data was refreshed.'}}, 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'additionalProperties': False}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}, 'schemaVersion': {'type': 'string', 'const': 'kk-api-v1', 'description': 'Transport envelope contract kk-api-v1; distinct from the nested knowledge schema, knowledgeVersion and server version.'}, 'knowledgeVersion': {'type': 'string', 'description': 'Active knowledge release identifier from its manifest; not the API contract or MCP/registry server version.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['query'], 'properties': {'limit': {'type': 'integer', 'default': 5, 'maximum': 10, 'minimum': 1, 'description': 'Optional maximum result count; integer 1ââ\x82¬â\x80\x9c10 inclusive, default 5. Fewer or zero results may be returned; this MCP limit differs from other transports.'}, 'query': {'type': 'string', 'maxLength': 200, 'minLength': 1, 'description': 'Required free-text query, 1ââ\x82¬â\x80\x9c200 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.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['schemaVersion', 'knowledgeVersion', 'data', 'evidence', 'sources', 'freshness', 'limitations'], 'properties': {'data': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'type', 'title', 'answerPreview', 'matchedTerms', 'matchedIntent', 'matchReasons', 'classification', 'freshnessSummary', 'relevanceScore', 'relevanceTier', 'citationUrl'], 'properties': {'id': {'type': 'string', 'description': '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.'}, 'type': {'type': 'string', 'description': 'Result kind (currently model, answer, term, topic or supplemental source); determines how its identifier can be used.'}, 'title': {'type': 'string', 'description': 'Human-readable title of the matched existing knowledge record.'}, 'modelKey': {'type': 'string', 'pattern': '^[a-z0-9]+(?:-[a-z0-9]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Canonical model identifier from search results or kk://models, e.g. volkswagen-golf. 1ââ\x82¬â\x80\x9c200 characters; lowercase ASCII letters/digits separated by single hyphens. Exact match; no aliases, spaces, uppercase, URL or license plate.'}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'matchReasons': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Deterministic matching/boost reason codes explaining ranking, not evidence for factual claims.'}, 'matchedTerms': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Normalized lexical query tokens found in the index record; may be empty for fixed intent-based supplemental results.'}, 'answerPreview': {'type': 'string', 'description': 'Existing short preview or fixed contract explanation; not a generated answer or a replacement for full context.'}, 'matchedIntent': {'type': 'string', 'description': 'Deterministic query-intent label used by search rules, not inferred user certainty.'}, 'relevanceTier': {'enum': ['EXACT', 'STRONG', 'RELATED'], 'type': 'string', 'description': 'Score band: EXACT >=140, STRONG >=55 and <140, RELATED <55. EXACT is a score label and does not guarantee a literal exact match.'}, 'classification': {'enum': ['OFFICIAL', 'DERIVED', 'EDITORIAL'], 'type': 'string', 'description': 'Knowledge classification: OFFICIAL, reproducibly DERIVED, or EDITORIAL. Preserve this label; it is not a confidence score.'}, 'relevanceScore': {'type': 'number', 'description': "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ââ\x82¬â\x80\x9c1 scale."}, 'freshnessSummary': {'type': 'object', 'description': 'Search-level freshness metadata/status. NOT_EXPOSED_IN_SEARCH_INDEX means dates are not exposed there; fetch exact context when available.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}, 'additionalProperties': False}, 'maxItems': 10, 'description': '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.'}, 'sources': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['sourceId', 'kind', 'visibility', 'label', 'category', 'citationUrl', 'sourceUrl', 'freshness', 'limitations'], 'properties': {'kind': {'type': 'string', 'const': 'SOURCE', 'description': 'Discriminator: SOURCE is one public source; SOURCE_GROUP is an explicit grouped provenance record.'}, 'label': {'type': 'string', 'description': 'Human-readable label supplied by the knowledge record.'}, 'category': {'enum': ['OFFICIAL_PRIMARY_DATA', 'OFFICIAL_GUIDANCE', 'PRIMARY_NON_GOVERNMENT', 'REPUTABLE_EDITORIAL', 'BACKGROUND_REFERENCE', 'KENTEKENKOMPAS_DERIVED', 'KENTEKENKOMPAS_EDITORIAL'], 'type': 'string', 'description': 'Detailed provenance category. Keep it distinct from the coarser OFFICIAL/DERIVED/EDITORIAL classification.'}, 'sourceId': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'freshness': {'type': 'object', 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'sourceUrl': {'type': 'string', 'format': 'uri', 'description': 'Original public source URL for a SOURCE record; distinct from the KentekenKompas explanation URL.'}, 'visibility': {'type': 'string', 'const': 'PUBLIC', 'description': 'PUBLIC marks provenance permitted in the public knowledge contract.'}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['sourceId', 'kind', 'visibility', 'label', 'category', 'citationUrl', 'description', 'memberSourceIds', 'memberOrderMeaning', 'citationUrls', 'freshness', 'limitations'], 'properties': {'kind': {'type': 'string', 'const': 'SOURCE_GROUP', 'description': 'Discriminator: SOURCE is one public source; SOURCE_GROUP is an explicit grouped provenance record.'}, 'label': {'type': 'string', 'description': 'Human-readable label supplied by the knowledge record.'}, 'category': {'enum': ['OFFICIAL_PRIMARY_DATA', 'OFFICIAL_GUIDANCE', 'PRIMARY_NON_GOVERNMENT', 'REPUTABLE_EDITORIAL', 'BACKGROUND_REFERENCE', 'KENTEKENKOMPAS_DERIVED', 'KENTEKENKOMPAS_EDITORIAL'], 'type': 'string', 'description': 'Detailed provenance category. Keep it distinct from the coarser OFFICIAL/DERIVED/EDITORIAL classification.'}, 'sourceId': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'freshness': {'type': 'object', 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'visibility': {'type': 'string', 'const': 'PUBLIC', 'description': 'PUBLIC marks provenance permitted in the public knowledge contract.'}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'description': {'type': 'string', 'description': "Public explanation of the source group's purpose and composition."}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}, 'citationUrls': {'type': 'array', 'items': {'type': 'string', 'format': 'uri'}, 'description': "Human-readable citation links associated with the group; not its members' sourceUrl fields."}, 'memberSourceIds': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'minItems': 1, 'description': "Explicit, non-empty list of source IDs belonging to this group; use these rather than splitting the group's opaque sourceId."}, 'memberOrderMeaning': {'type': 'string', 'description': 'Explanation of whether/how member ordering matters; do not infer ranking or chronology.'}}, 'additionalProperties': False}]}, 'description': 'Resolved public SOURCE/SOURCE_GROUP records supporting this result. Search may leave this empty; use get_source_context for a discovered source ID.'}, 'coverage': {'type': 'object', 'description': 'Available coverage metadata; incomplete or absent coverage is not an assurance of complete knowledge. Preserve limitations.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'evidence': {'type': 'array', 'items': {'type': 'object', 'required': ['evidenceId', 'classification', 'sourceIds'], 'properties': {'sourceIds': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[a-z0-9]+(?:[.:-][a-z0-9-]+)*$', 'maxLength': 200, 'minLength': 1, 'description': 'Opaque public SOURCE or SOURCE_GROUP ID, 1ââ\x82¬â\x80\x9c200 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.'}, 'description': 'Opaque IDs of supporting public sources or source groups. An empty array means no references exposed here, not proof of completeness.'}, 'evidenceId': {'type': 'string', 'description': 'Identifier of a cited evidence reference; resolve its sourceIds for provenance, not as a confidence score.'}, 'classification': {'enum': ['OFFICIAL', 'DERIVED', 'EDITORIAL'], 'type': 'string', 'description': 'Knowledge classification: OFFICIAL, reproducibly DERIVED, or EDITORIAL. Preserve this label; it is not a confidence score.'}}, 'additionalProperties': False}, 'description': 'Exposed evidence references with classifications and source IDs. May be empty (including search); not proof that knowledge has no provenance.'}, 'freshness': {'type': 'object', 'required': ['generatedAt'], 'properties': {'dataAsOf': {'type': 'string', 'description': 'Optional date/time to which the underlying data relates; absent means not supplied, not current.'}, 'generatedAt': {'type': 'string', 'description': "Timestamp of generation. At envelope level this is the active manifest's generatedAt, not a source refresh or publication date."}, 'sourceCheckedAt': {'type': 'string', 'description': 'Optional date/time when the source was checked, not necessarily the date the data describes.'}, 'editorialReviewedAt': {'type': 'string', 'description': 'Optional date/time of editorial review; does not certify that all underlying data was refreshed.'}}, 'description': 'Available freshness metadata. Distinguish dataAsOf, sourceCheckedAt, editorialReviewedAt and generatedAt; missing fields do not mean current.', 'additionalProperties': False}, 'citationUrl': {'type': 'string', 'format': 'uri', 'description': 'Human-readable KentekenKompas citation URL for this record/context; distinct from an original sourceUrl and a kk:// resource identity.'}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Explicit scope and interpretation limits to preserve in client answers. Empty does not certify complete coverage.'}, 'schemaVersion': {'type': 'string', 'const': 'kk-api-v1', 'description': 'Transport envelope contract kk-api-v1; distinct from the nested knowledge schema, knowledgeVersion and server version.'}, 'knowledgeVersion': {'type': 'string', 'description': 'Active knowledge release identifier from its manifest; not the API contract or MCP/registry server version.'}}, 'additionalProperties': False}
Letzte Tool-Änderungen
Ähnliche MCP-Server
concordance
Provides deterministic claim verification and audit receipts, along with Bible references, commentary, geography, indexed knowled…
canton-ccpedia
Searches and explains Canton Network and Daml documentation, governance proposals, forums, code examples, APIs, releases, and eco…
BNM Data Shop
Sells access to cached official reports, enforcement orders, regulatory documents, inspection records, and other public-source te…
api-evangelist
Provides API governance analysis, OpenAPI overlays and version diffs, security-sensitive field classification, code samples, matu…
OpenHelvetia Gateway
Provides sourced access to Swiss federal legislation and political data, including law metadata, versions, amendments, citations,…
website-search
Provides security article search and structured guidance, templates, frameworks, and review criteria for incident response, threa…
The Ainglish Project
Maintains a measured, auditable register of language constructs, proposals, evidence, adoption, contributors, protocols, and rati…
Torah Library
Provides searchable Jewish texts, commentaries, source sheets, dictionaries, manuscripts, calendars, learning schedules, parasha …