All docs

MCP & Widget Support

What MCP features and widget host types Studio currently supports.

MCP

Tools

Studio supports full tool invocation. You can call any tool, inspect the params, and see the raw response inline.

Studio also reads and displays tool annotations when present:

AnnotationWhat it means
readOnlyHintTool has no side effects
destructiveHintTool performs writes or deletions
idempotentHintCalling it multiple times has no further effect
openWorldHintTool talks to external services

Resources

Studio can list and read any MCP resource by URI. Resources with MIME type text/html;profile=mcp-app are recognized as interactive widgets and rendered automatically.

OAuth

Studio supports the full OAuth 2.1 + PKCE flow, including Dynamic Client Registration (RFC 7591) and Server Metadata Discovery (RFC 8414). You can step through the auth flow interactively from the UI.

Other authentication methods supported: Bearer token, custom request headers.


Widgets

Host types

A widget’s host type controls how Studio renders it - which platform APIs are mocked and which CSP profile is applied. Studio supports two host types:

HostDescription
ClaudeRenders with the MCP Apps / ext-apps protocol. Supports ui/initialize handshake, tool calls, resource reads, and display mode negotiation.
OpenAI / ChatGPTRenders with the OpenAI widget API. Mocks window.openai and supports the OpenAI Apps SDK.

The host type is configured per widget or per session. When a widget sends a ui/initialize request, Studio detects it automatically.

Display modes

Studio supports three display modes for widget rendering:

ModeDescription
inlineDefault. Widget renders inline in the Studio panel. Available for both host types.
fullscreenWidget expands to fill the screen. Available for both host types.
pipPicture-in-picture. Claude host only.

CSP sandbox

All widgets run inside a sandboxed iframe with a Content Security Policy derived from the widget’s own metadata. Allowed domains for scripts, connections, and redirects are declared by the widget - Studio enforces them strictly. Nothing outside those declared domains can be reached.

Questions, bugs, or feedback?

Reach the team at [email protected] . Bug reports, feature requests, and questions are all welcome.