PPT自动生成服务

通过Model Context Protocol(MCP)提供自动生成和编辑PowerPoint演示文稿的API服务,支持AI模型或其他客户端快速创建和修改PPT文档。

  • by 1282saa
  • Python
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 1282saa/ppt_se

使用说明

PowerPoint MCP服务器

该项目提供了一个服务器,可以通过Model Context Protocol(MCP)自动创建和操作PowerPoint演示文稿。使AI模型或其他客户端可以轻松创建和编辑PowerPoint文档。

主要功能

  • 创建新的PowerPoint演示文稿
  • 打开现有PowerPoint文件
  • 添加和编辑幻灯片
  • 添加文本、图像、表格、图表等元素
  • 通过设计系统设置应用一致的风格
  • 通过MCP协议提供API

项目结构

mcp开发/ ├&main.py#主入口点(新建) ├&config_loader.py#设置加载程序(新建) ├&ppt_generator.py#PPT生成模块(幻灯片生成.py重命名) ├&README.md#文档(自动_PPT_README.md重命名) ├&requirements.txt#所需软件包列表 ├&data/#数据文件夹 │├&slide_content.json#幻灯片内容(转到幻灯片.json) │└&design_system.json#设计设置(转到ppt_design_system_config_v2.json) ├&output/#创建的文件存储文件夹 └&utils/#实用程序模块文件夹(保留现有)

执行流

  1. main.py -从主入口开始
  2. config_loader.py通过加载设计设置
  3. ppt_generator.py通过处理幻灯片内容并生成PPT
  4. utils 通过模块操作PowerPoint
  5. 最终文件 output 保存到文件夹

安装方法

要求

  • Python 3.6或更高版本
  • python-pptx库
  • mcp库

安装步骤

# 필요한 패키지 설치
pip install python-pptx mcp[cli]

执行方法

启动MCP服务器

python main.py

默认情况下,服务器在localhost:8000上运行。要使用其他主机/端口,请:

python main.py --host 0.0.0.0 --port 8080

运行测试客户端

python test_client.py

可用工具

演示工具

  • create_presentation:创建新演示文稿
  • open_presentation:打开现有演示文稿
  • save_presentation:保存演示文稿

幻灯片工具

  • add_slide_to_presentation:添加幻灯片
  • add_content_to_slide:将内容添加到幻灯片
  • add_bullet_points_to_slide:在幻灯片中添加项目符号

模板工具

  • generate_from_template:使用模板和数据创建演示文稿

故障排除

  • 错误:找不到软件包: pip install python-pptx mcp[cli] 使用命令安装所需的软件包。
  • 错误:无法启动服务器:请检查端口是否已在使用中,并指定其他端口。
  • 错误:无法保存演示文稿:请检查输出路径是否有效,是否具有写入权限。

文件格式

幻灯片内容文件(JSON)

data/slide_content.json的基本结构如下:

{
  "title": "프레젠테이션 제목",
  "mainTopics": {
    "주제1": {
      "하위주제1": { ... },
      "하위주제2": { ... }
    },
    "주제2": [ ... ]
  }
}

设计系统设置(JSON)

data/design_system.json的基本结构如下:

{
  "slide_text_settings": {
    "title_font": "Arial",
    "title_font_size": 32,
    ...
  },
  "table_styles": {
    "default": {
      "header_bg_color": [200, 200, 200],
      ...
    }
  },
  ...
}

自定义

自定义内容

data/slide_content.json 您可以通过修改文件来更改演示文稿的内容。

定制设计

data/design_system.json 可以通过修改文件来更改设计样式。

自定义代码

ppt_generator.py 通过修改文件中的以下方法,可以更改幻灯片的创建方式:

  • _create_title_slide:创建封面幻灯片
  • _create_topic_slides:创建主题幻灯片
  • _create_subtopic_slide:创建子主题幻灯片
  • _create_term_table:创建术语表
  • _create_item_list:创建项目列表