OraFabric ChatGPT 插件包 — 提交说明
================================================================
打包时间：2026-10-27

值都已填好，可以直接上传。两处需要你在提交时留意，见下文。

----------------------------------------------------------------
包内已填的值
----------------------------------------------------------------
MCP 端点      https://orafabric.com/api/mcp
官网          https://orafabric.com
支持页        https://orafabric.com/contact?topic=enterprise
隐私政策      https://orafabric.com/privacy
服务条款      https://orafabric.com/terms
分类          Productivity（见下方说明）
品牌色        #156B52 / 深色模式 #4FB58E
图标          assets/logo.png + logo-dark.png，512x512 正方形

----------------------------------------------------------------
留意一：分类现在填的是 Productivity，上传后建议再核对
----------------------------------------------------------------
最早填的 Education 被校验拒绝，说明它不在合法取值里。
官方文档没有公布完整清单，只说以提交后台下拉菜单为准，
文档中出现过的确认有效值只有 Productivity 和 Developer Tools。

现在填的是 Productivity，确认可用。

上传后请打开后台的分类下拉看一眼真实列表。如果有
Research 或 Science，改成那个更贴切；改这一行即可：

  "category": "Productivity",

注意 plugin.json 里有两份 interface，两处都要改。

避开面向普通消费者的健康分类（如 Health & Fitness、Medical）。
产品定位是仅供研究、不提供医疗建议，归到健康类目会按医疗建议
的标准审核，要求严得多。
优先选教育、科学、研究、参考工具这类。

----------------------------------------------------------------
留意二：没有演示录屏
----------------------------------------------------------------
按你的要求没放 demo_recording_url 字段。

文档里把录屏列为 MCP 插件的必需项，所以有两种可能：
  a) 上传时直接报错，提示缺少该字段
  b) 上传通过，但审核阶段被要求补充

如果是 a，先录一段最简单的（网页端连接 + 问一个问题 + 展示回答），
传到 YouTube 不公开链接或 Loom，拿到地址后在 review 块里加：

  "demo_recording_url": "你的链接",

位置在 "commerce": false 这一行的上面。

----------------------------------------------------------------
ZIP 之外还要准备的
----------------------------------------------------------------
1. 已验证的 OpenAI 组织
   platform.openai.com → Settings → Organization → General

2. 域名验证文件
   需要在 orafabric.com 下放一个验证文件，路径形如
   /.well-known/openai-apps
   具体 token 以提交页面给出的为准。

3. 审核测试账号
   填在提交页面的 Review details 里，不要写进 ZIP。
   要求：五个数据集全开、月额度调高或不限、不能开 2FA、
         凭据即刻可用无需邮箱激活、有效期至少三个月。

4. 工具标注（在服务器上，不在 ZIP 里）
   每个工具必须有标注，缺标注扫描不过。
   retrieve_evidence 标 Read Only。

5. 每个工具的一句话理由（提交页面填）
   retrieve_evidence 可以写：
   Returns published research evidence for a user's question from the
   datasets their account subscribes to; read-only, and it does not
   write the answer.

----------------------------------------------------------------
提交前的阻塞项（重要）
----------------------------------------------------------------
目前有一个问题会导致五条正向测试用例全部失败。

现象：在普通 ChatGPT / Claude 对话里调用，模型只收到一段摘要
      （"48 findings from 35 papers"），收不到证据正文、
      原文句子和论文列表，因此写不出带引用的回答。

原因：完整证据包只放在 MCP 响应的 structuredContent 里，
      content[].text 里只有摘要。不读 structuredContent 的客户端
      就只能看到摘要。

修法：把完整证据包 JSON 序列化后同时写进 content[0].text，
      structuredContent 保持不变。

审核人员会在普通对话里逐条跑我们提交的测试用例，
这个不修，五条正向用例一条都过不了。

另有一个次要问题：摘要里报的证据条数和论文数是瘦身前的数字，
和实际投递的数量对不上，建议一并改成实际投递数量。

----------------------------------------------------------------
重新打包命令
----------------------------------------------------------------
在解压出的目录里执行：

  zip -r orafabric-chatgpt-plugin.zip plugin.json mcp.json assets

plugin.json 和 mcp.json 必须在压缩包根目录，不要外面再套文件夹。
