{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreidvgwlyq5cext4yicatrbwxyntperel3opuxxaihp6mf4wbhd5zpe",
"uri": "at://did:plc:lk3jfj3zq4k4wxnk474axylu/app.bsky.feed.post/3molyyojl4kd2"
},
"path": "/t/published-chatgpt-app-widget-fails-with-failed-to-fetch-template-ecosystem-widget-404-ongoing-since-late-may/1383865#post_4",
"publishedAt": "2026-06-18T23:30:38.000Z",
"site": "https://community.openai.com",
"textContent": "Case Number: 09279117\n\nI found what appears to be the root cause, and it confirms this is a backend ingestion / widget snapshot issue on OpenAI’s side rather than an issue with our MCP server.\n\nFirst, to clarify your earlier questions:\n\nThe failure was observed on ChatGPT web/desktop as well, not only on mobile. I understand that interactive MCP apps may not be supported on mobile, but this issue is not limited to mobile behavior.\n\nAlso, I have not re-published the app yet because the app is already Published and visible in the directory, and I do not want to risk losing the app’s Published status. If refreshing or re-publishing from my side is safe and will not affect the Published status, please confirm and I can do it immediately.\n\nI exported and compared the configs of our Published version and our older Rejected version. The widget template’s `sediment_id` — OpenAI’s stored snapshot of the widget HTML — is empty in the Published version:\n\nPUBLISHED / live version:\n\n * App version ID: `asdk_app_v_69c5fe38431081918f0af247e22e648b`\n\n * Status: Published / Released\n\n * Template resource URI: `ui://widget/kfortune-20260510-7.html`\n\n * `sediment_id`: `\"\"`\n\n\n\n\nREJECTED / older version:\n\n * App version ID: `asdk_app_v_69b0d7fc8de48191a38b8a34bb518125`\n\n * Status: Rejected\n\n * Template resource URI: `ui://widget/index.html`\n\n * `sediment_id`: `\"file_00000000709471f59e9aef7156ea74cd\"`\n\n\n\n\nBecause the Published version’s `sediment_id` is empty, OpenAI’s backend appears to have no stored copy of the widget template for the live version. This fully explains the symptoms:\n\n * ChatGPT’s frontend requests the widget from:\n\n`[https://chatgpt.com/backend-api/ecosystem/widget?...&template_pointer=ui://widget/kfortune-20260510-7.html](https://chatgpt.com/backend-api/ecosystem/widget?...&template_pointer=ui://widget/kfortune-20260510-7.html)`\n\nand receives `404 Not Found`.\n\n * No `resources/read` request ever reaches our `/mcp` server, because the widget lookup fails before it gets that far.\n\n * Our MCP server is healthy. The `open_kfortune_ui` tool call reaches our `/mcp` endpoint and returns HTTP 200 with the correct template pointer.\n\n * Our `resources/read` handler returns HTTP 200 and the template HTML for any `ui://widget/kfortune-*.html` URI, but the request never reaches us.\n\n\n\n\nCould you please re-ingest / re-snapshot the widget template for the Published version so its `sediment_id` is populated?\n\nImportant: I would prefer not to re-publish the app myself unless you confirm it is safe, because I do not want to risk losing the app’s Published status. If a refresh or re-publish on our side is required to trigger the ingestion, please confirm that doing so will preserve the Published status, and I will do it immediately.\n\nAttachments for reference:\n\n * “Your Apps” screenshot confirming the app is Published, version 1.0.0, with “View in Directory”, alongside the older Rejected 1.0.0 version.\n\n * The two exported configs, Published and Rejected, showing the `sediment_id` difference.\n\n * Server-side log excerpt showing `open_kfortune_ui -> HTTP 200`.\n\n * Affected ChatGPT session transcript and “Failed to fetch template” screenshots, sent earlier.\n\n\n",
"title": "Published ChatGPT App widget fails with Failed to fetch template / ecosystem/widget 404 — ongoing since late May"
}