用途:构建、脚手架、重构与排查 ChatGPT Apps SDK 应用;这类应用由 MCP 服务器与小组件 UI 组成。
主要能力:先按应用原型分类(tool-only、vanilla-widget、react-widget、interactive-decoupled、submission-ready),再规划工具(名称、schema、注解、输出),选择上游示例或本地回退脚手架,生成 MCP 服务器与小组件代码,并按最小可用仓库契约做校验。
工作流:强制先使用 $openai-docs 获取当前 Apps SDK 文档(如 apps-sdk/build/mcp-server、apps-sdk/build/chatgpt-ui、apps-sdk/build/examples、apps-sdk/plan/tools、apps-sdk/reference、apps-sdk/quickstart);若不可用则用 mcp__openaiDeveloperDocs__search_openai_docs 与 mcp__openaiDeveloperDocs__fetch_openai_doc。文档搜索超时可直接按 URL 取页面。
用法要点:给用户提示时把本技能与 $openai-docs 配对;先规划工具再写代码,保持一工具一职责;数据类、连接器类、同步或面向公司知识/深度研究的应用默认使用标准 search 与 fetch 工具形状;小组件优先走 MCP Apps 桥(监听 ui/notifications/tool-result、用 tools/call),ChatGPT 专属能力再用 window.openai。资源元数据需设置 _meta.ui.csp 的精确 connectDomains 与 resourceDomains,可选 _meta.ui.domain、_meta.ui.prefersBorder。
本地测试:在 http://localhost:<port>/mcp 运行 MCP 服务器,用 HTTPS 隧道(如 ngrok http <port>)暴露,在 ChatGPT 开发者模式添加远程 MCP 应用并粘贴公开 MCP URL;工具或元数据变更后刷新应用。
限制与注意:不要凭空生成大型自定义脚手架,优先复制最小的匹配上游示例再按当前文档调整;不要仅把 window.openai 当唯一集成路径;脚手架脚本 scripts/scaffold_node_ext_apps.mjs 仅在无更合适上游示例、可接受 Node + 普通 HTML 小组件时使用;发布与提交步骤仅在明确需要公开上架时使用,需组织验证与 Owner 角色,并使用公开生产端点与合规 CSP。