Summary
Add support for rendering rich HTML UIs from MCP tool responses using the mcp-ui SDK.
Background
MCP-UI allows MCP servers to return interactive UI resources (HTML, charts, forms, maps) alongside tool results. This would make tool outputs more visual and interactive instead of text-only.
Proposed Integration Points
1. Mobile (Canvas)
- When an MCP tool returns a
UIResource, render it via the existing canvas capability on paired mobile devices
- Requires canvas feature to be working reliably first
2. Telegram Web Apps
- Use Telegram's Web Apps feature to show inline UIs in chat
- Could display interactive widgets without leaving the conversation
3. Web Interface
- If/when Clawdbot has a web UI, render mcp-ui responses directly in the browser
Technical Requirements
- Detect
UIResource objects in MCP tool responses (via mcporter)
- Integrate
@mcp-ui/client for proper sandboxed rendering
- Handle UI actions (tool calls, prompts, links) from rendered UIs back to the agent
- Security: Sandbox all remote HTML content
Example Flow
User: "Show me weather for Tel Aviv"
Agent: *calls weather MCP tool via mcporter*
MCP Server: Returns UIResource with interactive weather widget
Clawdbot: *renders widget on mobile canvas or Telegram web app*
Resources
Priority
Nice-to-have — would significantly enhance UX for visual/interactive tool outputs.
Summary
Add support for rendering rich HTML UIs from MCP tool responses using the mcp-ui SDK.
Background
MCP-UI allows MCP servers to return interactive UI resources (HTML, charts, forms, maps) alongside tool results. This would make tool outputs more visual and interactive instead of text-only.
Proposed Integration Points
1. Mobile (Canvas)
UIResource, render it via the existing canvas capability on paired mobile devices2. Telegram Web Apps
3. Web Interface
Technical Requirements
UIResourceobjects in MCP tool responses (via mcporter)@mcp-ui/clientfor proper sandboxed renderingExample Flow
Resources
Priority
Nice-to-have — would significantly enhance UX for visual/interactive tool outputs.