Skip to content
Charming Docs
Esc
navigateopen⌘Jpreview
On this page

MCP resources

UI resource descriptors returned by resources/list.

Most MCP clients load the standard MCP Apps resource. ChatGPT loads its own resource URI and receives extra widget metadata for inline rendering.

Standard endpoint

[
  {
    "_meta": {
      "ui": {
        "csp": {
          "connectDomains": [
            "https://charm.ing",
            "https://cdn.jsdelivr.net"
          ],
          "frameDomains": [
            "https://charm.ing"
          ],
          "resourceDomains": [
            "https://fonts.googleapis.com",
            "https://fonts.gstatic.com",
            "https://cdn.jsdelivr.net"
          ]
        },
        "prefersBorder": false
      }
    },
    "description": "Interactive web app hosted by Charming",
    "mimeType": "text/html;profile=mcp-app",
    "name": "Buildy App Viewer",
    "uri": "ui://buildy/app"
  },
  {
    "_meta": {
      "ui": {
        "csp": {
          "connectDomains": [
            "https://charm.ing",
            "https://cdn.jsdelivr.net"
          ],
          "frameDomains": [
            "https://charm.ing"
          ],
          "resourceDomains": [
            "https://fonts.googleapis.com",
            "https://fonts.gstatic.com",
            "https://cdn.jsdelivr.net"
          ]
        },
        "prefersBorder": false
      }
    },
    "description": "Interactive web app hosted by Charming",
    "mimeType": "text/html;profile=mcp-app",
    "name": "Charming App Viewer",
    "uri": "ui://charming/app"
  }
]

ChatGPT endpoint

[
  {
    "_meta": {
      "openai/widgetCSP": {
        "connect_domains": [
          "https://charm.ing",
          "https://cdn.jsdelivr.net"
        ],
        "frame_domains": [
          "https://charm.ing"
        ],
        "resource_domains": [
          "https://fonts.googleapis.com",
          "https://fonts.gstatic.com",
          "https://cdn.jsdelivr.net"
        ]
      },
      "openai/widgetDescription": "Charming renders the interactive web app created or opened by the tool.",
      "openai/widgetDomain": "https://charm.ing",
      "ui": {
        "csp": {
          "connectDomains": [
            "https://charm.ing",
            "https://cdn.jsdelivr.net"
          ],
          "frameDomains": [
            "https://charm.ing"
          ],
          "resourceDomains": [
            "https://fonts.googleapis.com",
            "https://fonts.gstatic.com",
            "https://cdn.jsdelivr.net"
          ]
        },
        "domain": "https://charm.ing",
        "prefersBorder": false
      }
    },
    "description": "Interactive web app hosted by Charming",
    "mimeType": "text/html;profile=mcp-app",
    "name": "Buildy App Viewer",
    "uri": "ui://buildy/chatgpt/app-v1"
  },
  {
    "_meta": {
      "openai/widgetCSP": {
        "connect_domains": [
          "https://charm.ing",
          "https://cdn.jsdelivr.net"
        ],
        "frame_domains": [
          "https://charm.ing"
        ],
        "resource_domains": [
          "https://fonts.googleapis.com",
          "https://fonts.gstatic.com",
          "https://cdn.jsdelivr.net"
        ]
      },
      "openai/widgetDescription": "Charming renders the interactive web app created or opened by the tool.",
      "openai/widgetDomain": "https://charm.ing",
      "ui": {
        "csp": {
          "connectDomains": [
            "https://charm.ing",
            "https://cdn.jsdelivr.net"
          ],
          "frameDomains": [
            "https://charm.ing"
          ],
          "resourceDomains": [
            "https://fonts.googleapis.com",
            "https://fonts.gstatic.com",
            "https://cdn.jsdelivr.net"
          ]
        },
        "domain": "https://charm.ing",
        "prefersBorder": false
      }
    },
    "description": "Interactive web app hosted by Charming",
    "mimeType": "text/html;profile=mcp-app",
    "name": "Charming App Viewer",
    "uri": "ui://charming/chatgpt/app-v1"
  }
]

Resource templates

Standard endpoint:

[]

ChatGPT endpoint:

[]

Was this page helpful?