A2UI JSON Schema Files
This directory contains the formal JSON Schema definitions for the A2UI protocol.
Schema Descriptions
-
server_to_client.json: This is the core, catalog-agnostic schema for messages sent from the server to the client. It defines the four main message types (beginRendering,surfaceUpdate,dataModelUpdate,deleteSurface) and their structure. In this schema, thecomponentobject within asurfaceUpdatemessage is generic ("additionalProperties": true), allowing any component definitions to be passed. -
client_to_server.json: This schema defines the structure for event messages sent from the client to the server. This includes user-initiated actions (userAction), error reporting (error), and the crucialclientUiCapabilitiesmessage, which allows a client to inform the server about the component catalog it supports. -
catalog_description_schema.json: This is a meta-schema that defines the structure of an A2UI component catalog. A catalog consists of acomponentsobject and astylesobject, where each key is a component/style name and the value is a JSON schema defining its properties. This allows for the creation of custom component sets. -
standard_catalog_definition.json: This file is a concrete implementation of a catalog, conforming to thecatalog_description_schema.json. It defines the standard set of components (e.g.,Text,Image,Row,Card) and styles that are part of the baseline A2UI specification. -
server_to_client_with_standard_catalog.json: This is a resolved, LLM-friendly version of the server-to-client schema. It is generated by combiningserver_to_client.jsonwith thestandard_catalog_definition.json. In this version, the genericcomponentobject is replaced with a strictoneOfdefinition that includes every component from the standard catalog. This provides a complete, strictly-typed schema that is ideal for LLMs to use for generating valid A2UI messages without ambiguity.