Reach users through their AI assistants and agents.
Write A2UI applications in TypeScript, not JSON. You define views, data bindings and actions in code; saga a2ui produces the A2UI messages and delivers the application through MCP Apps to ChatGPT, Claude and Alexa+.
saga means Simple Agentic Apps. It combines robust foundations from Google's A2UI project with Machine Wisdom's production and safety expertise, designed to fit your existing API platform.
Framework website · Example applications and source · Build tic-tac-toe with React
Hosted examples consume the SDK packages; their application source is maintained in the examples repository.
Meet the adopters building with saga a2ui.
Your team knows what customers should be able to do with your service. saga a2ui provides the application foundations for turning those tasks into interactive experiences, from browsing content to taking an action through an existing API. The aim is to give your team a head start and reduce the custom application code it has to maintain as these experiences evolve.
A2UI describes the interface, its data bindings and updates, independently of how messages travel between an agent and its host. Delivery can use MCP Apps or A2A (planned). saga a2ui connects the application model to rendered components, user actions and the application's lifecycle, with an MCP Apps integration. You can build on that foundation while keeping your own services, authentication and business rules.
Use TypeScript to define an interface, update it as application data changes, and bind a component to a typed action. Define actions that run locally or call your backend, with behavior expressed in code rather than embedded in the A2UI JSON. saga a2ui manages the action's connection to the view, including what happens when a result arrives after the view has changed or closed.
The action guide follows a notes application through these interactions, showing how the same application contract serves different views.
Start with a Node, Express, Fastify, Hono or Hapi backend, or add saga a2ui to an existing service. saga a2ui carries the verified request identity through to your application, where your server checks permissions and performs the operation.
Application processing, MCP integration, components and the React and Lit renderer integrations have separate packages, so you can choose the parts your application uses and review their dependencies. The package guide explains their responsibilities and how they fit together.
saga a2ui's FaithfulCard component presents Markdown in a styled card, preserving the supplied answer, including source attribution for RAG agents. It renders that answer directly, without asking the host LLM to paraphrase it for display.
Your application chooses which links may open and which image hosts are allowed. For content that needs more restrictive handling, links can remain inactive and images can wait until the reader chooses to load them. These settings let you adapt the presentation to where your content comes from and what readers should be able to do with it.
saga a2ui's code was Daybreak Blue certified in November 2026, after more than five days of security scanning and remediation with OpenAI Daybreak Blue at Extra High. The final scan covered all 1,033 tracked files and found no new reportable findings. 37 findings were closed through 27 independently reviewed pull requests.
saga a2ui bounds every path where it meets untrusted input:
- Conversation payloads and operation results are size- and shape-checked.
- Protected media is capped.
- Each served card carries a Content-Security-Policy derived from its content policy.
- Known issues in upstream MCP and A2UI libraries are blocked before they can be reached.
Explore a Patreon-style subscription and podcast experience using synthetic accounts and media. Browse episodes, switch accounts and try protected playback, including denied access and expired playback grants. The demo runs locally and does not connect to Patreon.
From a source checkout, with Node 22.23.3 or newer and npm:
npm ci
npm run build:demo
cd apps/lit-host/dist/demo
npm install --omit=dev
npm startOpen the Open the demo host page: address printed by the server. The demo includes its own local host, so you can explore the application without deploying it or connecting an assistant. See the podcast demo guide for its controls and setup.
For a browser walkthrough of actions and their implementation, try the interactive notes tour. It runs against a simulated server and links each explanation to the source.
React and Lit are both supported application paths. Their MCP stacks provide typed surfaces, action controls and the optional FaithfulCard application, with framework-specific rendering and lifecycle integration. Choose the stack that matches your application. Start with Getting started, which covers what every application needs, then follow one of two tracks:
- Build tic-tac-toe with React: build a game in your own app directory with npm packages, then play against Claude or ChatGPT. To try a finished, hosted version first, see the hosted game and its source.
- Build the notes application with Lit: a view composed with the Lit stack, leading into the action guide.
To add the React stack to an application you already have, use the React integration guide. Ansari Faithful Answers uses the React stack. The demo and five of the six generated starters use Lit, and one starter uses React on Hono; choose by framework and the workflow you need.
For Hapi, the integration map shows how to reuse the bridge in your own app, with a registration example, bridge-owned lifecycle handling and the application’s responsibilities.
The seven-package public release set includes the Lit and React renderers and their MCP stacks. Applications install one stack plus framework peers; packages export TypeScript source for use with a bundler. See public installation for registry availability and exact-version recipes, and the React integration guide for React dependency configuration.
- Action guide: connect interactions to application behavior.
- Development reference: build and test the SDK.
- Candidate updates and rollback: keep installed packages and views together.
- Host compatibility: choose a host for your application.
- Blueprints: explore the architecture and component contracts.
- Building with saga a2ui: IASER's Ansari integration and how to share your application.
Younes Abouelnagah, founder of Machine Wisdom AI
Working on Headspace for Alexa+ inspired saga a2ui. Getting the production integration working took attention away from the application itself, and the player remained bespoke. I evaluated other approaches, but couldn't find one that fit our existing API platform and the dependency-review requirements we worked within. We built the integration in-house.
I wanted robust application foundations that another team could adopt within the platform it already operated. I chose A2UI for its application model and the engineering behind it, with MCP Apps providing host integration. saga a2ui brings those pieces together with the application behavior I wanted to reuse on the next project.
My perspective on content safety comes from AMP and Gmail Add-ons, alongside five years as a Principal Engineer in Roblox Trust and Safety. That experience informs how saga a2ui handles displayed content and the choices it leaves with the application developer.
Amazon's announcement of Headspace's Alexa+ integration describes the project that inspired this work.
saga a2ui is maintained by Machine Wisdom for its clients.
Talk to Machine Wisdom AI about bringing your services to Alexa+, ChatGPT, Claude and more, or join saga a2ui adopters by following the Quick Start guide.
We welcome fixes, reproducible bug reports, application examples and contributions to the A2UI and MCP Apps ecosystem. Open an issue or read Contributing. Report vulnerabilities through Security.
SDK code is licensed under Apache-2.0, with third-party notices for included work.
