Video wird geladen...
Video konnte nicht geladen werden
MCP tools have only ever returned text for the model to read. Now they return interactive UI. 🪄 TanStack AI's new MCP Apps support renders ui:// widgets right in the chat - static or fully interactive, with a client/server bridge.
133,087 Aufrufe • vor 3 Monaten •via X (Twitter)
32 Kommentare

Love this! Can imagine multiple possibilities! But I hope this is not the beginning of something awful like marketing banners in your MCP responses :)) Next coming up add blocker for MCPs :PP

This was always the direction for MCP. Returning just text from a tool that controls a UI was always going to feel limiting.

need a api description language, or OpenAPI extension scheme to get this right

Looks cool! 😊 That said, I'm looking forward to seeing more updates around TanStack Start again. My timeline has been very AI-heavy lately, and I'd love to see more of the core framework too.

love to see MCP's resource primitives done right 🤌

This is so helpful! Now I can remove my workaround 🤪

So we are back to ui now?

tbh surprised MCP renders real widgets now, but i'd only trust it for decisions once the model handles broken UI cleanly

the model now shipping pixels back is a real shift. does the client treat those ui:// widgets as sandboxed by default or does the host app own the trust boundary

This is clean

that changes everything. now we're not just writing code, we're building user experiences directly into the model itself.

the hard part is not rendering it's keeping widget state after tool retries

text chats feel like dial up now

The `ui://` bit is a real product shift. Text tools make the model narrate state; widgets let the user fix state in place. I’d test stale widget data and cancelled tool calls before celebrating the demo.

Very nice! I custom built this in vercels ai-sdk but nice to see first-class support

wow smth that @fastmcp had for a while

ya'll crazy for this one.

the real shift here isn't text to UI. it's tool to runtime. once a server can ship interactive widgets, MCP stops being a protocol and becomes an app platform. and platforms live or die on the trust boundary, not the render layer. who gets to draw in your agent's context is the question now.

Woww

@abhiaiyer @damien_schneid use chat + MessageFactory I guess

这就从工具调用变成小应用了

the chatbox said hold on lemme just install a whole app real quick

but who decides if the ui is trustworthy random mcp server pushing interactive widgets into my chat feels like a whole new attack surface 😭

interactive tool UI is great but it blurs the model/user action boundary, does the model get a structured event back so its world Model stays consistentt?

For agent workflows, scattered provider configs become a tax. AIDUKEY is meant to give that stack one cleaner API layer across models.

bro the chat is literally becoming a whole operating system at this point 💀

chat slowly becoming an app store 😐

the model doesn't see what the user clicks unless the bridge replays it back

bro the model isnt reading anymore its just SEEING that ui:// thing is gonna go crazy 🔥

This is a fascinating development for AI interaction.

does tanstack ai has ui package for react? if so can I use it with ai-sdk streamed events?

Rendering the widget is the easy part. The hard part is whose state it holds. UI painted for one model to read is still single-player. What matters is a surface multiple agents and humans can act on with shared state, so it's a place work happens, not a one-shot render.


