mcpField
M
mbb-decks

mbb-decks

github.com/floflo11文档处理21211 次安装25 周前更新
代码仓库

关于 mbb-decks

MBB Decks 是一项技能,可将 JSON 规范转换为咨询风格的 PowerPoint 演示文稿。它先引导用户确认逐页标题构成的故事线,再扩展内容,并按规定结构和视觉规范生成 .pptx。

主要功能

  1. 01根据 JSON 生成 .pptx 演示文稿
  2. 02先确定逐页标题故事线
  3. 03采用六部分演示文稿结构
  4. 04遵循 MECE 要点与引用规范
  5. 05提供图表和视觉系统指引
  6. 06使用 Python 脚本渲染演示文稿

适用场景

  1. 01制作面向高管的战略演示文稿
  2. 02将分析内容转成咨询风格演示文稿
  3. 03准备董事会预读材料或建议方案

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/floflo11/mbb-decks --skill mbb-decks

安装后在 Claude Code 中输入/mbb-decks确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

.gitignore
README.md
LICENSE
.claude-plugin/
marketplace.json
examples/data-center-landscape/
README.md
build_vanilla.py
input.json
examples/market-entry/
README.md
input.json
scripts/
build_deck.py
download_logos.py

详细介绍

MBB 演示文稿

根据 JSON 规范生成咨询级 .pptx 演示文稿。采用 MBB 的标准风格规则:行动式标题叙事、六部分结构、MECE 要点、引用规范,以及海军蓝与白色的编辑式视觉系统。

适用场景

  • 用户需要 MBB 演示文稿、麦肯锡风格演示文稿、咨询演示文稿、董事会预读材料、高管汇报、市场进入演示文稿、尽职调查演示文稿、建议书或战略演示文稿。
  • 用户提供了需要整理成面向非技术高管受众的幻灯片的分析内容。
  • 用户需要真正的 .pptx 文件,而不是 Markdown 大纲。

工作流:先制作幽灵版,再扩展内容

请勿跳过幽灵版步骤。这是影响质量的最关键环节。

  1. 验证渲染器依赖项(仅首次运行)。 生成任何演示文稿前,请先运行以下命令,确认已安装 Python 3.9+ 和 python-pptx:
    python3 -c "import pptx; print(f'python-pptx {pptx.__version__} on Python {__import__(\"sys\").version.split()[0]}')"
    
    如果命令输出版本号,请跳至步骤 1。如果出现 ModuleNotFoundError: No module named 'pptx' 错误,请告知用户:

    渲染器需要 python-pptx。请在终端运行 pip install python-pptx,然后回复“准备好了”,我就会继续。 等待用户确认后再继续。如果跳过此检查,构建脚本也会妥善处理,并显示相同的安装提示;但提前检查能带来更顺畅的体验。

  2. 幽灵版。 仅为每张幻灯片编写行动式标题(封面、执行摘要标题、议程项目、每张内容幻灯片的行动式标题、建议标题)。从头到尾将这些标题作为一段文字阅读。它们必须构成连贯的论证:情境 → 矛盾 → 解决方案,或主张 → 证据 → 建议。
  3. 请用户确认。 展示幽灵版,并询问:“这个叙事逻辑是否清晰?在扩展内容前,有什么需要添加、删减或调整顺序的吗?”等待用户确认。
  4. 扩展内容。 补充要点、图表、脚注和来源。每张幻灯片的内容都要围绕其行动式标题,并符合 MECE 原则。
  5. 渲染。 将 JSON 规范写入磁盘,并调用 scripts/build_deck.py。

演示文稿结构(六个部分)

严格限制:第 1 至 5 部分最多 15 张幻灯片。附录不受限制。

#部分说明
1封面标题、副标题、作者、组织。空白主题。
2执行摘要用一个标题回答“所以呢?”。包含 3 至 5 条符合 MECE 原则的要点。
3议程包含 2 至 4 个部分。部分标题须与分隔页一致。
4各部分内容每个部分以分隔页开篇(编号 + 标题)。每个部分包含 2 至 4 张内容幻灯片。
5建议标题 + 行动表格(负责人 / 行动 / 结果)。必须包含行动表格。
6附录可选。补充细节和支持性分析。采用与内容幻灯片相同的格式。

行动式标题规则

除封面、分隔页和附录分隔页外,每张幻灯片都必须有行动式标题。行动式标题传达含义,正文提供论据。

  • 完整的一句话,10 至 15 个词。包含主语 + 动词 + 主张。
  • 具体明确。 “越南中产阶层消费到 2030 年以 7% 的年复合增长率增长”优于“市场很有吸引力”。
  • 独立成意。 读者只看行动式标题,也必须能理解论证。
  • 尽可能体现因果关系。 “X 推动 Y”优于“X 和 Y”。
  • 不要提问,也不要使用标签。 “市场规模测算”只是标签,不是行动式标题。请改为陈述发现。

撰写正文前,请按顺序阅读所有行动式标题。如果这些标题不能构成连贯的故事,请先理顺叙事逻辑,再扩展内容。

符合 MECE 原则的要点

每张幻灯片最多包含 3 至 5 条要点。要点必须:

  • 相互独立。 不得重叠。
  • 完全穷尽。 不遗漏行动式标题下显而易见的内容。
  • 结构平行。 同一张幻灯片上的要点采用相同的语法结构。
  • 具体明确。 包含数字、日期和专有名称。“已筛选 3 家本地合作伙伴”优于“考虑了几家合作伙伴”。

视觉系统

默认设置在 scripts/build_deck.py 中定义。除非用户明确要求,否则不要覆盖。

元素规格
背景白色 #FFFFFF
标题Georgia,深海军蓝 #051C2C
正文Calibri,近黑色 #1A1A1A
强调色电光蓝 #2251FF,仅少量用于分隔线和章节编号
网格线、分隔线浅灰色 #E5E7EB
脚注、来源、页码Calibri 8pt,中灰色 #949BA8
幻灯片尺寸16:9,13.333" × 7.5"
页边距左右各 0.5"
页码右下角,格式为 Page X / Y
页脚日期不显示
图标不显示,除非用户明确要求

图表类型

选择与行动标题中的主张相匹配的图表。

行动标题动词图表类型
“增长”“下降”“呈趋势变化”柱形图或折线图
“由……构成”“占比”100% 堆积柱形图或饼图(谨慎使用饼图)
“高于”“排名第一”按数值排序的横向条形图
“驱动”“解释”瀑布图或堆积条形图
“与……相关”散点图
“从 X 增长到 Y”瀑布图

目前,脚本可以整洁地渲染簇状柱形图。对于其他图表类型,请改用项目符号并以文字描述数据,然后在 PowerPoint 中手动添加图表,或扩展脚本。

引用格式

  • 正文中的行内标记:当具体数字或主张需要注明出处时,使用 [1]、[2] 等。
  • 幻灯片底部的来源行:Source: [text](url); [text](url)。使用 Markdown 风格的 [text](url) 语法,以便每个来源都能在 .pptx 中呈现为可点击的超链接。多个来源以分号分隔。对于没有公开 URL 的来源,也可以使用不带 (url) 的纯文本。
  • 脚注行:放在来源行上方,用于说明某个数字(例如,“不包括新加坡”)。脚注与来源不同。
  • 如果幻灯片没有提出具体的数据主张,则不添加来源行。

数据来源规则(重要)

这项技能的可信度取决于数据质量。这些规则适用于每张图表、每个项目符号以及所有包含数字的主张。

始终使用当前年份

运行环境上下文中提供了今天的日期。请使用该日期。

  • 对于历史数据:引用最新可用的发布版本。如果已有 2026 年的数据集,就不要引用 2023 年的版本。
  • 对于前瞻性预测:预测标签应从当前年份开始。如果今天是 2026 年,未来年份应标为 2026E、2027E、2028E。绝不要把过去的年份标为 E(预测)。
  • 对于脚注中的“截至”表述:写作“截至当前年份第 [当前季度] 季度”,不要使用过时日期。
仅使用权威、可信的来源

以下是按领域列出的简短非穷尽来源清单,Claude 应优先查阅:

领域权威来源
宏观经济与贸易World Bank、IMF、OECD、BIS、UN ComTrade、WTO
云和 AI 基础设施Synergy Research Group、IDC、Dell'Oro Group、Gartner、JLL Data Center Outlook、Structure Research
能源与气候IEA、BloombergNEF、EIA、Lazard LCOE、NREL ATB、Wood Mackenzie
金融市场Bloomberg、S&P Global、Refinitiv (LSEG)、FactSet、Capital IQ、PitchBook、Preqin
咨询/战略报告McKinsey Global Institute、BCG、Bain(公开引用)、Oliver Wyman
消费者Euromonitor、Nielsen、Kantar、eMarketer、Statista
上市公司公司 10-K、10-Q、S-1、业绩电话会文字稿(SEC EDGAR)
监管与政策Federal Reserve、BLS、BEA、ECB、EU Commission、监管机构申报文件

不要使用:随意的博客文章、AI 生成的摘要、无法核实引用来源的付费内容,或将“Statista projections”作为数字主张的唯一来源。

每个来源都应包含可点击的 URL(如果有)

格式:Source: [BloombergNEF Energy Transition Investment Trends, 2025](https://about.bnef.com/energy-transition-investment/); [IEA World Energy Outlook, 2024](https://www.iea.org/reports/world-energy-outlook-2024)

构建脚本会自动:

  • 将每个 [text](url) 片段渲染为 .pptx 中的超链接。
  • 在渲染时向每个 URL 发送 HEAD 请求。如果 URL 返回 4xx 错误,链接会被静默移除,只渲染纯文本。读者不会看到失效的链接。
  • 对于非 4xx 结果(网络超时、DNS 错误、HEAD 请求被拦截),保留链接,因为我们无法确切判断链接是否失效。

如果找不到特定报告的公开 URL,请将来源保留为纯文本。不要编造 URL。

将图表与解读配对

切勿只放一张图表就交付图表幻灯片。每张图表幻灯片都应在同一页上附带解读面板,让读者一目了然地看到图表和要点。如果描述图表的项目符号最终出现在下一张幻灯片上,请将它们合并。

两种布局:

  • commentary_position: "right"(默认)。图表占左侧 62%,右侧为包含三到四条项目符号的“KEY TAKEAWAYS”面板。适用于大多数图表幻灯片。
  • commentary_position: "below"。图表在顶部横跨整页(高度约 2.8"),解读内容放在下方的两列中。当图表需要更多横向空间(包含 5 个以上类别且有多个系列)或要点有 4 条以上时使用。

将徽标用作项目符号标记

如果解读内容或两列项目符号聚焦于某个具名实体(公司、监管机构、主权基金),请使用该实体的徽标作为项目符号标记,而不是抽象图标或普通圆点。此技能会从 logo.dev 自动下载徽标(技能附带一个公开令牌;如需使用私有配额,可通过 LOGODEV_TOKEN 覆盖),并将其缓存在 assets/logos/ 中。如果 logo.dev 尚无该域名的品牌标识,则会返回 HTTP 202,此时项目符号将使用普通的 • 标记,而不是占位符。

项目符号条目可以是:

  • 纯字符串 → 使用 • 标记渲染。
  • { "icon": "→", "text": "..." } → 使用海军蓝色的字形作为标记渲染。
  • { "logo": "microsoft.com", "text": "..." } → 使用公司徽标作为标记渲染。首次渲染时自动下载并缓存。
  • { "logo": "...", "icon": "...", "text": "..." } → 优先使用徽标。

如果项目符号描述的是概念而非实体(例如地区、原则),请使用 icon,而不是 logo。如果提到了多家公司,请拆分该项目符号,使每个项目各有一个核心实体。

JSON 规范

脚本会读取符合以下结构的 JSON 文件。完整示例请参见 examples/market-entry/input.json 和 examples/data-center-landscape/input.json。

{
  "meta": { "title": "...", "subtitle": "...", "author": "...", "organization": "..." },
  "executive_summary": {
    "headline": "Full-sentence claim, 15 to 25 words",
    "bullets": ["...", "...", "..."]
  },
  "agenda": [
    { "title": "Section title", "subtitle": "Optional subtitle" }
  ],
  "sections": [
    {
      "title": "Matches an agenda title",
      "slides": [
        {
          "action_title": "Full sentence, 10 to 15 words",
          "content_type": "bullets",       // or "bar_chart" or "two_column"

          // for content_type "bullets"
          "bullets": [
            "Plain bullet text",
            { "icon": "$", "text": "Bullet with abstract icon marker" },
            { "logo": "microsoft.com", "text": "Bullet with company logo marker" }
          ],

          // for content_type "bar_chart"
          "chart": {
            "categories": ["A", "B", "C"],
            "series": [{ "name": "...", "values": [1.0, 2.0, 3.0] }],
            "unit": "USD millions"
          },
          "commentary": [                  // optional; pairs with chart
            { "logo": "aws.amazon.com", "text": "AWS-specific takeaway" },
            { "logo": "microsoft.com", "text": "Azure-specific takeaway" },
            { "icon": "◆", "text": "General takeaway not tied to one company" }
          ],
          "commentary_position": "right",  // or "below"; default "right"

          // for content_type "two_column"
          "left_header": "...",
          "left":  [ "plain", { "icon": "$", "text": "..." }, { "logo": "...", "text": "..." } ],
          "right_header": "...",
          "right": [ /* same shape as left */ ],

          "footnote": "Optional. Auto-prefixed with '*'. Body or chart label should carry a matching '*' marker.",
          "source": "Optional. Format: '[Org], [Publication], [Year]; [Org 2], [Year]'"
        }
      ]
    }
  ],
  "recommendations": {
    "headline": "Approve / proceed / invest claim",
    "actions": [
      { "owner": "CFO", "action": "Specific action by date", "outcome": "What it produces" }
    ]
  },
  "appendix": [
    // Same shape as section slides
  ]
}

调用构建脚本

python scripts/build_deck.py <input.json> <output.pptx>

脚本会验证幻灯片数量;如果主演示文稿超过 15 张幻灯片,则会打印警告。

常见错误

错误修正方法
行动标题只是一个标签(“市场规模评估”)改写为带有动词和结论的句子
行动标题之间无法串联成一个故事重新排序或改写。把它们连起来当作一段话,大声读一遍。
每张幻灯片超过五个要点精简到三个,或拆分幻灯片
要点重复行动标题要点必须补充证据,而非重述结论
图表幻灯片没有说明文字在同一张幻灯片上添加 commentary 面板;切勿将描述图表的要点放到下一张幻灯片
图表只是装饰,没有支撑作用换成能够证明行动标题的图表
数据幻灯片没有来源添加来源。每项数值结论都需要注明出处。
正文中零散点缀装饰性图标删除。图标或徽标只能用作要点标记,不能用作页面装饰
要点提到一家公司,却使用抽象图标换成 {"logo": "<domain>", "text": "..."};徽标会成为标记
在同一面板中混用徽标标记和深蓝圆形图标去掉图标字形的圆形背景(脚本会自动处理)
使用长破折号换成句号或逗号。风格指南规定不使用长破折号。
页脚中有日期删除。风格指南规定省略日期。
主演示文稿超过 15 张幻灯片将详细内容移至附录。

遇到以下危险信号时,停止并重新开始

  • “我先写幻灯片,之后再构思故事。”停止。先制作 Ghost deck。
  • “行动标题太长了,我要缩短它。”确认它仍然是完整的结论。如果缩短后变成了标签,这种取舍就不合适。
  • “三个要点不够,我还有更多内容要说。”拆成两张幻灯片,或将详细内容移至附录。
  • “我会把图表放在一张幻灯片上,再把描述图表的要点放在下一张。”停止。合并它们,并在同一张幻灯片上添加 commentary 面板。
  • “我会加几个图标,让页面更直观。”提到公司的要点使用徽标。概念类要点才使用抽象图标。切勿零散点缀装饰性图标。

评论

支持 Markdown