For developers · Checked 1 October 2026

Compose Multiplatform 1.12 and the Hot Reload MCP server

Short answer: the latest Compose Multiplatform is 1.12.1, released on September 22, 2026, after 1.12.0 in late August. The headline feature is an experimental MCP server in Compose Hot Reload: an AI coding agent can reload your running desktop app, take screenshots, read the semantic tree and logs, and click or type to check its own edits. Connect it by pointing your agent’s MCP config at the hotMcpServer Gradle task. 1.12 also brings automatic font fallback on web and a v2 window and dialog API for desktop.

Hot Reload MCP tools

From JetBrains’ Compose Hot Reload documentation, read 1 October 2026. The README lists all tools and parameters.

ToolWhat the agent can do
reloadRecompile the project and hot-reload changed classes
take_screenshotCapture the current state of an app window
get_semantic_treeRead the Compose semantic tree to understand the UI
get_logsRead recent logs, including runtime exceptions
click, type_text, scrollSimulate user input to test flows

Connecting an AI agent

Hot Reload runs your shared UI in the desktop target, so your project needs one; from Compose Multiplatform 1.10.0 the Hot Reload plugin is bundled and on by default for such projects. It needs Kotlin 2.1.20 or later and a JVM target of Java 21 or earlier. To connect an agent, add an MCP server whose command is ./gradlew with the arguments --no-daemon, --quiet, --console=plain and hotMcpServer, for example in .mcp.json. Gradle matches the short name to the target task; if a module has several JVM targets, use the full name, such as :composeApp:hotMcpServerJvm or :app:hotMcpServerDesktop. With several windows open, the agent can list them and pick one. On the Apple side, the same idea arrived in Xcode, see the Xcode MCP server.

Web, iOS and desktop changes

Web: characters your fonts don’t cover used to show as empty boxes; Compose for web now downloads the matching Noto font subset on demand and recomposes the text, so Japanese, Arabic, Devanagari and emoji render without bundling fonts. A box can appear briefly while the font loads. iOS: lazy layouts scroll more smoothly because item deactivation moved out of the drawing phase, and the Skia update to Milestone 150 fixes duplicate-symbol conflicts in apps that bundle their own Skia. Desktop: the experimental v2 WindowState and DialogState API in androidx.compose.ui.window.v2 lets you choose the screen, set minimum and maximum sizes, size a window to its content and place dialogs relative to their parent. LocalSystemTheme is deprecated.

Versions and requirements

Compose Multiplatform 1.12.1 is based on Jetpack Compose 1.12.1, covered in the latest Compose BOM and Compose 1.12; JetBrains says its releases usually trail Jetpack Compose by one to three months. Its Material 3 artifact is still 1.12.0-alpha03, based on Material 3 1.5.0-alpha22, and its Navigation 3 artifact is 1.1.2, see Navigation 3. Minimum platforms are Android 5.0, iOS 14, macOS 13 on Apple silicon, Windows 10, Ubuntu 20.04 and browsers with WasmGC. Desktop apps need JDK 11 or later, and JDK 17 or later to package native distributions. For iOS styling, see Compose Multiplatform and Liquid Glass.

Where Censuus fits

One codebase on every platform helps you ship; being found brings people to it. Censuus ranks apps by the visits they draw, and adding your app is free through the List my app form. Placement comes from traffic and sponsorship: apps climb on the visits they draw, and a sponsor can pay to rise higher.

Frequently asked questions

What is the latest version of Compose Multiplatform?

Compose Multiplatform 1.12.1, released on September 22, 2026. 1.13.0 is in alpha.

How do I connect an AI agent to Compose Hot Reload?

Configure an MCP server in your agent, for example in .mcp.json, that runs ./gradlew --no-daemon --quiet --console=plain hotMcpServer. This needs Compose Multiplatform 1.12.0 or later and a desktop target.

Does Compose Hot Reload work on Android?

JetBrains documents it for the desktop target and says other targets are being explored. You can run shared UI code in the desktop app as a sandbox while you work.

Why is Compose Hot Reload not working?

Check the requirements JetBrains lists: a desktop target, Kotlin 2.1.20 or later, and a JVM target of Java 21 or earlier. Before Compose Multiplatform 1.10.0 you also had to add the plugin by hand.

How does Compose Multiplatform for web handle missing characters?

From 1.12, it downloads the needed Noto font subset when it finds unsupported characters and recomposes the text.

Guides for app developers

Put your app in the ranking

Censuus ranks apps by the visits they draw and by sponsorship, no bots. Listing is free; sponsorship raises placement.