The style variables object from McpUiHostContext.styles.variables
The element to apply styles to (defaults to document.documentElement)
// Use CSS variables in your styles
document.body.style.background = "var(--color-background-primary)";
// Apply when host context changes
app.onhostcontextchanged = (ctx) => {
if (ctx.styles?.variables) {
applyHostStyleVariables(ctx.styles.variables);
}
};
// Apply initial styles after connecting
app.connect().then(() => {
const ctx = app.getHostContext();
if (ctx?.styles?.variables) {
applyHostStyleVariables(ctx.styles.variables);
}
});
app.onhostcontextchanged = (ctx) => {
const container = document.getElementById("app-root");
if (container && ctx.styles?.variables) {
applyHostStyleVariables(ctx.styles.variables, container);
}
};
body {
background-color: var(--color-background-primary);
color: var(--color-text-primary);
}
.card {
background-color: var(--color-background-secondary);
border: 1px solid var(--color-border-primary);
}
McpUiStyles for the available CSS variablesMcpUiHostContext for the full host context structure
Apply host style variables as CSS custom properties on an element.
This function takes the
variablesobject fromMcpUiHostContext.stylesand sets each CSS variable on the specified root element (defaults todocument.documentElement). This allows apps to use the host's theming values via CSS variables likevar(--color-background-primary).