---
title: "MCP resources"
description: "UI resource descriptors returned by resources/list."
sidebar:
  order: 4
---

<!-- Generated by apps/docs/scripts/generate-mcp-reference.mjs. -->

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

```json
[
  {
    "_meta": {
      "ui": {
        "csp": {
          "connectDomains": [
            "https://charm.ing",
            "https://usecharming.com",
            "https://cdn.jsdelivr.net"
          ],
          "frameDomains": [
            "https://charm.ing"
          ],
          "resourceDomains": [
            "https://charm.ing",
            "https://usecharming.com",
            "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://usecharming.com",
            "https://cdn.jsdelivr.net"
          ],
          "frameDomains": [
            "https://charm.ing"
          ],
          "resourceDomains": [
            "https://charm.ing",
            "https://usecharming.com",
            "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://charming/app"
  },
  {
    "_meta": {
      "ui": {
        "csp": {
          "connectDomains": [
            "https://charm.ing",
            "https://usecharming.com",
            "https://cdn.jsdelivr.net"
          ],
          "frameDomains": [
            "https://charm.ing"
          ],
          "resourceDomains": [
            "https://charm.ing",
            "https://usecharming.com",
            "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://charming/app-v1"
  },
  {
    "_meta": {
      "ui": {
        "csp": {
          "connectDomains": [
            "https://charm.ing",
            "https://usecharming.com",
            "https://cdn.jsdelivr.net"
          ],
          "frameDomains": [
            "https://charm.ing"
          ],
          "resourceDomains": [
            "https://charm.ing",
            "https://usecharming.com",
            "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-v2"
  }
]
```

## ChatGPT endpoint

```json
[
  {
    "_meta": {
      "openai/widgetCSP": {
        "connect_domains": [
          "https://charm.ing",
          "https://usecharming.com",
          "https://cdn.jsdelivr.net"
        ],
        "resource_domains": [
          "https://charm.ing",
          "https://usecharming.com",
          "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://usecharming.com",
            "https://cdn.jsdelivr.net"
          ],
          "resourceDomains": [
            "https://charm.ing",
            "https://usecharming.com",
            "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://usecharming.com",
          "https://cdn.jsdelivr.net"
        ],
        "resource_domains": [
          "https://charm.ing",
          "https://usecharming.com",
          "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://usecharming.com",
            "https://cdn.jsdelivr.net"
          ],
          "resourceDomains": [
            "https://charm.ing",
            "https://usecharming.com",
            "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://charming/chatgpt/app-v1"
  },
  {
    "_meta": {
      "openai/widgetCSP": {
        "connect_domains": [
          "https://charm.ing",
          "https://usecharming.com",
          "https://cdn.jsdelivr.net"
        ],
        "resource_domains": [
          "https://charm.ing",
          "https://usecharming.com",
          "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://usecharming.com",
            "https://cdn.jsdelivr.net"
          ],
          "resourceDomains": [
            "https://charm.ing",
            "https://usecharming.com",
            "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-v2"
  }
]
```

## Resource templates

Standard endpoint:

```json
[]
```

ChatGPT endpoint:

```json
[]
```

Found a bug or need a feature? [Tell us](/docs/capabilities/feedback) with `submit_feedback` or `POST /app/{id}/feedback`. Your feedback shapes what we build next.
