Presentation Agent MCP
A TypeScript-based MCP server that automatically generates structured technical presentation PPTX files via deck JSON and layout engine.
README
Presentation Agent MCP
一个基于 TypeScript 的 Presentation MCP Server —— 通过结构化 Deck JSON 和 Layout Engine 自动生成技术汇报 PPTX。
What it does
通过 MCP tools 提供以下能力:
- create_deck: 根据主题自动生成结构化 Deck JSON(6-10 页)
- get_deck: 读取已生成的 Deck JSON
- review_deck: 审查 PPT 内容结构(标题过长、bullet 过多、缺页等)
- update_slide: 对单页进行增量修改
- export_pptx: 导出真实
.pptx文件 - create_storyline: 生成故事线
- create_style_profile: 获取风格配置
Architecture
Client (Codex/ChatGPT/Claude)
│ MCP
▼
Presentation MCP Server (stdio)
│
▼
Presentation Runtime
├── Storyline Planner → 生成故事线
├── Deck Generator → 生成结构化 Deck JSON
├── Layout Engine → 布局计算
├── Review Engine → 内容审查
├── Incremental Editor → 单页修改
└── PptxExporter → PPTX 导出
核心约束:所有内容必须先进入 Deck JSON,所有布局必须经过 Layout Engine,LLM 不允许直接写 PPTX。
Install
cd presentation-agent-mcp
npm install
Run locally
# Start the MCP server (stdio mode)
npm start
For development with auto-reload:
npm run dev
Test
npm test
Test coverage
- Schema tests: Deck/Slide schema validation
- Layout tests: All 6 slide types render valid elements within bounds
- Review tests: 10+ static check rules
- Export tests: PPTX buffer generation with real PptxGenJS
MCP tools
| Tool | Description | Input |
|---|---|---|
create_style_profile |
Get style profile | style_id (default/allen_huawei_tech) |
create_storyline |
Generate storyline | topic, audience?, purpose?, research_brief?, slide_count? |
create_deck |
Create deck JSON | topic, audience?, purpose?, research_brief?, slide_count?, style_id? |
get_deck |
Read deck JSON | deck_id |
review_deck |
Review deck structure | deck_id |
update_slide |
Update a single slide | deck_id, slide_id, instruction |
export_pptx |
Export to PPTX | deck_id |
Example workflow
Full closed loop
1. create_deck
2. review_deck
3. export_pptx
4. update_slide
5. export_pptx again
Via MCP Inspector
npx @modelcontextprotocol/inspector node --loader tsx src/index.ts
Example create_deck input
{
"topic": "Agentic AI 时代端侧 OS 架构演进",
"audience": "操作系统架构师和技术管理层",
"purpose": "说明端侧负载变化,并提出 AgentOS Kernel 架构演进方向",
"slide_count": 8,
"style_id": "allen_huawei_tech"
}
Built-in styles
- default: Clean default presentation style
- allen_huawei_tech: 面向技术战略、架构演进的技术汇报风格
- 16:9 宽屏(13.333 x 7.5 inch)
- 主色调: #A80000
- 字体: Arial
- 支持 title/agenda/insight/comparison/architecture/summary
Slide types
- title: 封面页
- agenda: 议程页(最多 6 项)
- insight: 洞察页(关键观点 + 证据卡片)
- comparison: 对比页(左右两栏)
- architecture: 架构页(分层架构图)
- summary: 总结页(3 Takeaways + 下一步行动)
Current limitations (V0.1)
- No real LLM: 使用确定性规则生成内容,不接外部 LLM
- No Deep Research: V0.1 不包含联网研究能力
- No UI: 纯 MCP Server,无 Web 界面
- Basic layouts: 固定坐标布局,非 constraint-based
- No image support: V0.1 不包含图片搜索和渲染
- No PDF export
- Local storage only: 使用本地 filesystem 存储
- No complex animations
Roadmap
V0.2
- 接入真实 LLM
- Deck Patch 机制
- 更强的 slide-level incremental editing
- 增加 roadmap、timeline、case_study 页面类型
- Remote MCP 部署
V0.3
- 接入 Deep Research
- 企业知识库集成
- Web Console + PPT 预览
- 图标库和 SVG 架构图生成
V1.0
- ChatGPT App 化
- 多用户 / 权限 / 模板市场
- OpenDesk Presentation Agent 集成
Development
npm run typecheck # TypeScript type check
npm test # Run tests
npm run dev # Start with tsx watch
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。