UI context for AI.

Let people select what matters. Give their assistant the context to understand it.

Get started

Analytics workspace

Sample data
Interaction pattern Click
Element metadata + text
Click an annotated KPI or account row to load its context.
Accounts Monthly recurring revenue
CompanyMRRPlanStatus
Developer view
Format:
Prompt text:
context source element metadata or explicit selection packet
select context above…
askable.toPromptContext() ready to inject at the model boundary
waiting for focus…

More than what meets the eye.

A selection is the start. Connect the data behind it and choose where it goes.

Beyond the visible rows

Include full datasets, documents, and app state. You choose the backing data, even when it is not on screen.

Connect your data

Bring your own chat

Deliver selected context to your chat, browser extension, iframe, or server through Bridge.

Explore Bridge

Review before sending

Send the exact snapshot someone reviewed, even if their selection changes before delivery.

The reviewed-request React API is on main, not yet released to npm.

Review the React guide

A small addition.
A shared understanding.

Keep your components, your data, and your model. Add context where your UI already has meaning.

Explore the integration

Structured data, attached to the element it describes.

<div
  data-askable='{
    "metric": "Monthly revenue",
    "value": 128400,
    "change": "+12.4%"
  }'
>
  $128,400
</div>
Watch the integration walkthrough

At home in your stack.

One core, with adapters for the way you build.

Connect the assistant you already use.

Choose how selected context reaches your assistant. Each connection needs its own setup and permissions.

In-app chat

Pass prompt context to your model or use Bridge to deliver a packet to your existing chat UI.

AI SDK examples

Browser companion

Capture page context through the extension example, or connect a page-side bridge to a local MCP companion.

Browser extension example

MCP clients

Expose approved context through an MCP server for clients such as Claude Desktop or Cursor. Configure the provider, transport, and authorization.

MCP integration guide

You control what leaves your app. Sanitize sensitive data before sharing it. The redaction gate checks the packet's redaction flag; it does not detect personal information for you.

Start with one element.

Add meaningful context to the interface you already have.