首页
/ 开源项目教程:Office-PowerPoint-MCP-Server

开源项目教程:Office-PowerPoint-MCP-Server

2025-05-20 20:37:54作者:郦嵘贵Just

1. 项目介绍

Office-PowerPoint-MCP-Server 是一个基于 Model Context Protocol (MCP) 协议的 PowerPoint 操作服务器,使用 python-pptx 库进行操作。该服务器提供了创建、编辑和操作 PowerPoint 演示文稿的工具,允许开发者通过 MCP 协议与 PowerPoint 文档进行交互。

2. 项目快速启动

环境准备

  • Python 3.10 或更高版本
  • pip 包管理器

安装步骤

使用安装脚本(推荐)

最简单的安装方法是使用提供的安装脚本,该脚本自动化了安装过程:

python setup_mcp.py

该脚本将:

  • 检查环境依赖
  • 提供安装选项:
    • 从 PyPI 安装(推荐大多数用户)
    • 设置本地开发环境
  • 安装所需依赖
  • 生成相应的 MCP 配置文件
  • 提供与 Claude Desktop 集成的说明

手动安装

  • 克隆仓库:
git clone https://github.com/GongRzhe/Office-PowerPoint-MCP-Server.git
cd Office-PowerPoint-MCP-Server
  • 安装依赖:
pip install -r requirements.txt
  • 使服务器脚本可执行:
chmod +x ppt_mcp_server.py

启动服务器

运行以下命令启动服务器:

python ppt_mcp_server.py

MCP 配置

本地 Python 服务器

将服务器添加到您的 MCP 设置配置文件中:

{
  "mcpServers": {
    "ppt": {
      "command": "python",
      "args": ["/path/to/ppt_mcp_server.py"],
      "env": {}
    }
  }
}

使用 UVX(无需本地安装)

如果您安装了 UVX,可以直接从 PyPI 运行服务器而无需本地安装:

{
  "mcpServers": {
    "ppt": {
      "command": "uvx",
      "args": ["--from", "office-powerpoint-mcp-server", "ppt_mcp_server"],
      "env": {}
    }
  }
}

3. 应用案例和最佳实践

以下是一个创建新演示文稿并添加图表的例子:

创建新演示文稿

# 创建新演示文稿
result = use_mcp_tool("ppt", "create_presentation", {})
presentation_id = result["presentation_id"]

# 添加标题幻灯片
result = use_mcp_tool("ppt", "add_slide", {
    "layout_index": 0, # 标题幻灯片布局
    "title": "My Presentation",
    "presentation_id": presentation_id
})
slide_index = result["slide_index"]

# 填充副标题占位符
result = use_mcp_tool("ppt", "populate_placeholder", {
    "slide_index": slide_index,
    "placeholder_idx": 1, # 副标题占位符
    "text": "Created with PowerPoint MCP Server",
    "presentation_id": presentation_id
})

# 保存演示文稿
result = use_mcp_tool("ppt", "save_presentation", {
    "file_path": "my_presentation.pptx",
    "presentation_id": presentation_id
})

添加图表

# 添加图表幻灯片
result = use_mcp_tool("ppt", "add_slide", {
    "layout_index": 1, # 内容幻灯片布局
    "title": "Sales Data",
    "presentation_id": presentation_id
})
slide_index = result["slide_index"]

# 添加柱状图
result = use_mcp_tool("ppt", "add_chart", {
    "slide_index": slide_index,
    "chart_type": "column",
    "left": 1.0,
    "top": 2.0,
    "width": 8.0,
    "height": 4.5,
    "categories": ["Q1", "Q2", "Q3", "Q4"],
    "series_names": ["2023", "2024"],
    "series_values": [[100, 120, 140, 160], [110, 130, 150, 170]],
    "has_legend": True,
    "legend_position": "bottom",
    "has_data_labels": True,
    "title": "Quarterly Sales",
    "presentation_id": presentation_id
})

4. 典型生态项目

Office-PowerPoint-MCP-Server 作为开源项目,可以融入更广泛的生态系统。以下是一些可能的生态项目:

  • 集成到自动化工作流程中,例如使用 Jenkins、Travis CI 或 GitHub Actions 自动生成报告。
  • 开发桌面应用程序,如使用 Electron 将 MCP 服务器封装成易于使用的应用。
  • 教育和培训工具,用于教授 Python 和 PowerPoint 编程。

通过这些最佳实践和应用案例,开发者可以更好地理解并使用 Office-PowerPoint-MCP-Server,创造出功能丰富且实用的解决方案。

登录后查看全文
热门项目推荐

项目优选

收起
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
138
188
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
187
266
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
892
529
kernelkernel
deepin linux kernel
C
22
6
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
370
387
KonadoKonado
Konado是一个对话创建工具,提供多种对话模板以及对话管理器,可以快速创建对话游戏,也可以嵌入各类游戏的对话场景
GDScript
20
12
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
7
0
ShopXO开源商城ShopXO开源商城
🔥🔥🔥ShopXO企业级免费开源商城系统,可视化DIY拖拽装修、包含PC、H5、多端小程序(微信+支付宝+百度+头条&抖音+QQ+快手)、APP、多仓库、多商户、多门店、IM客服、进销存,遵循MIT开源协议发布、基于ThinkPHP8框架研发
JavaScript
94
15
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
337
1.11 K
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
1.08 K
0