Generative UI

Generative UI without generated code

Generative UI means the interface is made for the question instead of designed in advance. WebKnox does it with typed cards: your app shows a tested card with sources, and no model writes its code.

In your chat appweather.forecast
What is the weather in Dresden?

15° and partly cloudy in Dresden right now. Light rain starts around 8 pm and gets heavier after 10 pm; it eases off by about 7 am, and Thursday stays mostly dry with a high of 12°.

What generative UI means

Nielsen Norman Group calls it an interface generated in real time by AI to fit the user's needs and context. Google Research goes further, with a model that writes a whole interactive page for one prompt. There is no formal standard, so the term now covers very different ways of building.

Four ways to build it

The main differences are who decides what appears on screen, and where the data comes from.

ApproachWho decides the layoutWhere the data comes fromExamples
The model writes the interfaceThe model, as HTML, CSS and JavaScriptWhat the model knows or is givenGoogle Research's generative UI, CopilotKit's open mode
The model composes approved componentsThe model, from your catalogYour tools and the modelA2UI, OpenUI by Thesys, assistant-ui's generative UI
Tools map to your componentsYou, in advance; the model picks a toolYour toolsVercel AI SDK, CopilotKit, assistant-ui's tool UIs
An API returns a typed cardThe card type, with your theme and layoutMostly WebKnox's sources, named on the cardWebKnox

Two related standards decide how a UI reaches the app, not who makes it. MCP Apps let an MCP server show its own view in the chat, and Adaptive Cards are JSON cards that a host draws natively. WebKnox is available as an MCP App too.

How typed cards work

Your app sends the conversation and gets back data it can check against a schema.

  1. A question goes in

    Send the conversation. WebKnox picks a skill, or answers matched: false so your own model can reply.

  2. A typed card comes back

    The answer has a card type, data that follows the type's JSON Schema, plain text and its sources.

  3. Your app shows it

    <webknox-answer> draws every card type in your theme. For other screens there are hosted embeds and images.

Terminal
curl https://api.webknox.com/v2/answers \
  -H "Authorization: Bearer $WEBKNOX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"messages": [{"role": "user", "content": "What is the weather in Dresden?"}]}'

# {"matched": true, "text": "15° and partly cloudy…",
#  "card": {"type": "weather.forecast", "version": 1, "data": {…}},
#  "sources": [{"name": "MET Norway", …}]}

In code, it's one tool with the AI SDK. Without code, add it to your AI app over MCP.

17 card types, ready to show

These are recorded answers, drawn by the same element your app would use.

When WebKnox is the wrong choice

Typed cards only fit questions WebKnox has a card for.

  • Your interface is about your own data, such as orders, tickets or dashboards. Use tools mapped to your components, or a catalog.
  • You want forms and multi-step workflows. WebKnox shows answers, not your app's processes.
  • You need a layout no card has. A catalog or generated UI gives you more freedom, with more to review.
  • You need web search or long research. WebKnox answers what it has a card for, and says so when it hasn't.

It fits when people ask everyday questions in your chat, assistant or display, and you want an answer that looks right without designing it.

Questions about generative UI

What is generative UI?

An interface created for the moment by AI rather than fully designed in advance. Depending on the tool, a model writes it, composes it from approved components, or picks a ready-made one.

Is WebKnox generative UI?

In the broad sense, yes: each question gets the card that fits it, filled with its data. No model writes the card's code, which makes this the most constrained approach and the easiest to test.

Can a model get a card wrong?

Most cards show data from named sources, such as MET Norway for the weather. Some text is written by a model: a comparison's rows, for example, while its photos come from Wikimedia Commons. If WebKnox has no answer, it says so with matched: false, and your own model replies.

Does it work with the AI SDK and MCP?

Yes. @webknox/ai-sdk adds it to the AI SDK as a tool, and the MCP server adds it to Claude, ChatGPT, VS Code and other AI apps.

Ship your first card this afternoon