I craft unique cereal names, stories, and ridiculously cute Cereal Baby images.

Office-PowerPoint-MCP-Server
A MCP (Model Context Protocol) server for PowerPoint manipulation using python-pptx. This server provides tools for creating, editing, and manipulating PowerPoint presentations through the MCP protocol.
3 years
Works with Finder
1
Github Watches
6
Github Forks
40
Github Stars
Office-PowerPoint-MCP-Server
A MCP (Model Context Protocol) server for PowerPoint manipulation using python-pptx. This server provides tools for creating, editing, and manipulating PowerPoint presentations through the MCP protocol.
Example
Pormpt
Output
Demo's GIF -> (./public/demo.mp4)
Features
- Round-trip any Open XML presentation (.pptx file) including all its elements
- Add slides
- Populate text placeholders, for example to create a bullet slide
- Add image to slide at arbitrary position and size
- Add textbox to a slide; manipulate text font size and bold
- Add table to a slide
- Add auto shapes (e.g. polygons, flowchart shapes, etc.) to a slide
- Add and manipulate column, bar, line, and pie charts
- Access and change core document properties such as title and subject
Installation
Prerequisites
- Python 3.10 or higher
- pip package manager
Installation Options
Option 1: Using the Setup Script (Recommended)
The easiest way to set up the PowerPoint MCP Server is using the provided setup script, which automates the installation process:
python setup_mcp.py
This script will:
- Check prerequisites
- Offer installation options:
- Install from PyPI (recommended for most users)
- Set up local development environment
- Install required dependencies
- Generate the appropriate MCP configuration file
- Provide instructions for integrating with Claude Desktop
The script offers different paths based on your environment:
- If you have
uvx
installed, it will configure using UVX (recommended) - If the server is already installed, it provides configuration options
- If the server is not installed, it offers installation methods
Option 2: Manual Installation
-
Clone the repository:
git clone https://github.com/GongRzhe/Office-PowerPoint-MCP-Server.git cd Office-PowerPoint-MCP-Server
-
Install dependencies:
pip install -r requirements.txt
-
Make the server executable:
chmod +x ppt_mcp_server.py
Usage
Starting the Server
Run the server:
python ppt_mcp_server.py
MCP Configuration
Option 1: Local Python Server
Add the server to your MCP settings configuration file:
{
"mcpServers": {
"ppt": {
"command": "python",
"args": ["/path/to/ppt_mcp_server.py"],
"env": {}
}
}
}
Option 2: Using UVX (No Local Installation Required)
If you have uvx
installed, you can run the server directly from PyPI without local installation:
{
"mcpServers": {
"ppt": {
"command": "uvx",
"args": [
"--from", "office-powerpoint-mcp-server", "ppt_mcp_server"
],
"env": {}
}
}
}
Available Tools
Presentation Tools
- create_presentation: Create a new PowerPoint presentation
- open_presentation: Open an existing PowerPoint presentation from a file
- save_presentation: Save the current presentation to a file
- get_presentation_info: Get information about the current presentation
- set_core_properties: Set core document properties of the current presentation
Slide Tools
- add_slide: Add a new slide to the current presentation
- get_slide_info: Get information about a specific slide
- populate_placeholder: Populate a placeholder with text
- add_bullet_points: Add bullet points to a placeholder
Text Tools
- add_textbox: Add a textbox to a slide
Image Tools
- add_image: Add an image to a slide
- add_image_from_base64: Add an image from a base64 encoded string to a slide
Table Tools
- add_table: Add a table to a slide
- format_table_cell: Format a table cell
Shape Tools
- add_shape: Add an auto shape to a slide
Chart Tools
- add_chart: Add a chart to a slide
Examples
Creating a New Presentation
# Create a new presentation
result = use_mcp_tool(
server_name="ppt",
tool_name="create_presentation",
arguments={}
)
presentation_id = result["presentation_id"]
# Add a title slide
result = use_mcp_tool(
server_name="ppt",
tool_name="add_slide",
arguments={
"layout_index": 0, # Title slide layout
"title": "My Presentation",
"presentation_id": presentation_id
}
)
slide_index = result["slide_index"]
# Populate subtitle placeholder
result = use_mcp_tool(
server_name="ppt",
tool_name="populate_placeholder",
arguments={
"slide_index": slide_index,
"placeholder_idx": 1, # Subtitle placeholder
"text": "Created with PowerPoint MCP Server",
"presentation_id": presentation_id
}
)
# Save the presentation
result = use_mcp_tool(
server_name="ppt",
tool_name="save_presentation",
arguments={
"file_path": "my_presentation.pptx",
"presentation_id": presentation_id
}
)
Adding a Chart
# Add a chart slide
result = use_mcp_tool(
server_name="ppt",
tool_name="add_slide",
arguments={
"layout_index": 1, # Content slide layout
"title": "Sales Data",
"presentation_id": presentation_id
}
)
slide_index = result["slide_index"]
# Add a column chart
result = use_mcp_tool(
server_name="ppt",
tool_name="add_chart",
arguments={
"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
}
)
License
MIT
相关推荐
Evaluator for marketplace product descriptions, checks for relevancy and keyword stuffing.
Confidential guide on numerology and astrology, based of GG33 Public information
Converts Figma frames into front-end code for various mobile frameworks.
Advanced software engineer GPT that excels through nailing the basics.
Take an adjectivised noun, and create images making it progressively more adjective!
Discover the most comprehensive and up-to-date collection of MCP servers in the market. This repository serves as a centralized hub, offering an extensive catalog of open-source and proprietary MCP servers, complete with features, documentation links, and contributors.
Micropython I2C-based manipulation of the MCP series GPIO expander, derived from Adafruit_MCP230xx
A unified API gateway for integrating multiple etherscan-like blockchain explorer APIs with Model Context Protocol (MCP) support for AI assistants.
Mirror ofhttps://github.com/agentience/practices_mcp_server
Mirror ofhttps://github.com/bitrefill/bitrefill-mcp-server
Reviews

user_AfedVci6
As a dedicated user of Office-PowerPoint-MCP-Server, I am thoroughly impressed with its performance and ease of use. Created by GongRzhe, this product is a game-changer for managing PowerPoint presentations in a server environment. It has significantly enhanced my productivity and efficiency. I highly recommend checking out more about it on GitHub: https://github.com/GongRzhe/Office-PowerPoint-MCP-Server.