此MCP服务器支持动态创建、编辑和保存PowerPoint演示文稿。基于MCP,并使用python-pptx库,它提供了一个灵活的接口来添加幻灯片、图片、表格和其他元素。用户可以通过与大型语言模型聊天轻松地制作、编辑和保存演示文稿,简化整个工作流程。
创建演示文稿
使用标题初始化一个新的PowerPoint演示文稿,并生成一个唯一的演示文稿ID。
幻灯片操作
演示文稿管理
克隆仓库
git clone https://github.com/ltc6539/mcp-ppt.git
cd mcp-ppt
创建虚拟环境(可选但推荐)
python3 -m venv .venv
source .venv/bin/activate # 在Windows上使用:.venv\Scripts\activate
然后将MCP添加到您的项目依赖项中
uv add "mcp[cli]"
uv run mcp
您可以在Claude Desktop中安装此服务器,并通过运行以下命令立即与其交互:
mcp install server-local.py
或者,您可以使用MCP Inspector进行测试:
mcp dev server-local.py
如果Claude桌面出现错误,您可能需要在命令字段中放置uv可执行文件的完整路径。您可以通过在MacOS/Linux上运行which uv或在Windows上运行where uv来获取此路径。
启动时,服务器会将Python和python-pptx版本信息记录到stderr。执行过程中出现的任何错误也会打印到stderr,便于调试。
每个MCP工具函数都可以直接通过MCP服务器访问。以下是主要的操作:
create_presentation(title: str) -> stradd_title_slide(prs_id: str, title: str, subtitle: Optional[str] = None) -> stradd_content_slide(prs_id: str, title: str, content: List[str]) -> stradd_section_slide(prs_id: str, section_title: str, background_color: Optional[str] = None) -> stradd_image_slide(prs_id: str, title: str, image_path: str, image_description: str) -> stradd_table_slide(prs_id: str, title: str, headers: List[str], rows: List[List[str]]) -> strsave_presentation(prs_id: str, output_path: str) -> strget_presentation_download_link(prs_id: str) -> strget_presentation_info(prs_id: str) -> strpresentation://{prs_id}/outlineremove_slide(prs_id: str, slide_index: int) -> strexport_to_base64(prs_id: str) -> strsvggenerator_prompt(description: str) -> list[base.Message]generate_svg(prs_id: str, svg_markup: str, title: str = None, width: float = 6.0) -> str错误检查:
每个工具都会验证输入(例如,验证演示文稿ID或文件存在),并返回描述性的错误消息。
临时目录:
服务器确保文件保存在可写的目录中(通常是/tmp),并在提供的路径是只读的情况下相应地回退。
日志:
错误和版本信息输出到stderr,以帮助调试和监控。
欢迎贡献。如果您遇到问题或有改进建议,请打开一个问题或提交一个拉取请求。