Skip to main content
ChatGPT supports MCP Apps. That means a widget built with the MCP Apps bridge can run in ChatGPT and in other MCP Apps-compatible hosts. mcp-use handles the compatibility details for you. Build the widget with the standard mcp-use server and React APIs; mcp-use emits the metadata ChatGPT needs and maps host behavior through the same hooks you use everywhere else.

How ChatGPT fits in

OpenAI’s Apps SDK remains supported, and ChatGPT also implements the MCP Apps UI standard. mcp-use generates MCP Apps metadata and ChatGPT compatibility metadata from the same widget definitions. In practice:
  • Use widget: { name } and widget({ props, output }) on the server.
  • Use useWidget() and useCallTool() in React widgets.
  • Let mcp-use translate compatibility metadata for ChatGPT.
  • Reach for Apps SDK extensions only when a ChatGPT-specific capability has no shared MCP Apps equivalent yet.

What mcp-use abstracts

The same widget code should work across supported hosts: These APIs keep widget code focused on behavior instead of host-specific bridge details.

Next steps

  • Use Build widgets for the normal MCP Apps workflow.
  • Use Model context to decide what the model and widget should see.
  • Use Interactivity for tool calls, state, follow-up messages, and display controls.