
PPTX MCP Server

2025.05.04
2
PythonPPTX 生成自动化工具演示文稿编辑内容生成开发效率
PPTX MCP Server 是一个基于 FastMCP 的服务器,用于通过编程方式创建、编辑和渲染 PowerPoint (PPTX) 演示文稿。它支持幻灯片创建、文本和形状插入、图像嵌入以及将幻灯片渲染为 PNG 图像(需要 LibreOffice)。
View on GitHub
Overview
基本能力
产品定位
PPTX MCP Server 是一个用于自动化生成和编辑 PowerPoint 演示文稿的工具,特别适合需要批量生成或动态修改 PPTX 文件的开发者和内容创作者。
核心功能
- 创建/清空演示文稿:支持创建新的或重置现有的 PPTX 文件。
- 添加幻灯片:可插入具有自定义布局的幻灯片。
- 文本和内容:支持在幻灯片中添加标题、内容和自定义文本框。
- 形状:可插入多种 PowerPoint 形状(包括流程图元素)。
- 图像:支持将图像嵌入到幻灯片中。
- 幻灯片描述:提供幻灯片内容的文本摘要,用于验证。
- 幻灯片渲染:将幻灯片渲染为 PNG 图像(需要 LibreOffice)。
- 下载 PPTX:支持下载生成的演示文稿文件。
适用场景
- 自动化生成演示文稿,如报告、培训材料等。
- 动态修改现有演示文稿,如更新数据或内容。
- 批量处理多个 PPTX 文件,如批量添加水印或logo。
工具列表
create_or_clear_presentation(filename)
:创建或清空演示文稿。add_slide(filename, layout_index)
:添加幻灯片。add_title_and_content(filename, slide_index, title, content)
:添加标题和内容。add_textbox(filename, slide_index, text, left_inches, top_inches, width_inches, height_inches, font_size_pt, bold)
:添加文本框。add_shape(filename, slide_index, shape_type_name, left_inches, top_inches, width_inches, height_inches, text)
:添加形状。add_picture(filename, slide_index, image, left_inches, top_inches, width_inches, height_inches)
:添加图片。get_slide_content_description(filename, slide_index)
:获取幻灯片内容描述。get_slide_image(filename, slide_index)
:获取幻灯片图像(需要 LibreOffice)。get_pptx_file(filename)
:下载 PPTX 文件。
常见问题解答
- Q: 为什么幻灯片渲染功能不起作用? A: 请确保已安装 LibreOffice 并已将其添加到系统 PATH 中。
- Q: 如何自定义幻灯片布局?
A: 可以在
presentations/templates/
目录中添加自定义模板。
使用教程
使用依赖
- 安装 Python 3.12+。
- 安装 Python 依赖:
bash pip install -r requirements.txt
- 安装 LibreOffice(用于图像渲染):
- Linux:
sudo pacman -S libreoffice-fresh
或sudo apt install libreoffice
- macOS:
brew install --cask libreoffice
- Windows: 从 libreoffice.org 下载
安装教程
- 克隆或下载项目代码。
- 安装依赖(如上所述)。
- 启动服务器:
bash python server.py
或使用 FastMCP 开发模式:bash fastmcp dev server.py
调试方式
- 确保服务器已启动并运行在指定的主机和端口上(默认
127.0.0.1:8000
)。 - 使用 API 工具(如 Postman 或 curl)测试 API 端点。
- 检查日志以获取错误信息。