- Home
- MCP servers
- PowerPoint MCP CrossPlatform Server
PowerPoint MCP CrossPlatform Server
- python
0
GitHub Stars
python
Language
4 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"vancealexander-powerpoint_mcp_crossplatform": {
"command": "python",
"args": [
"-m",
"powerpoint_mcp_server"
]
}
}
}You have a cross-platform MCP server that lets you create, edit, and manage PowerPoint presentations from Claude Desktop using the Model Context Protocol. It runs on Windows, macOS, and Linux, and chooses the best adapter automatically so you can focus on your content rather than the integration details.
How to use
You connect Claude Desktop to this MCP server to issue natural language commands that drive PowerPoint. Start the server locally, then configure Claude Desktop to talk to it via MCP. Typical workflows include creating a new presentation, adding slides, inserting text, applying layouts, and saving the final file. You can perform actions such as creating a title slide, adding content slides, and saving changes to a .pptx file. When you send commands, the server handles platform differences and uses the best available PowerPoint adapter for your system.
How to install
Prerequisites: you need Python 3.10+ installed on your machine.
-
Create and activate a virtual environment.
-
Install the MCP server package.
-
Run the MCP server so Claude Desktop can connect to it.
Configuration for Claude Desktop
{
"mcpServers": {
"powerpoint": {
"command": "python",
"args": ["-m", "powerpoint_mcp_server"]
}
}
}
Additional notes
The MCP server is implemented in Python. It automatically handles platform differences by selecting the appropriate adapter: COM API on Windows, python-pptx on other platforms. On Windows, you have the option to install pywin32 for direct COM access to PowerPoint. On macOS and Linux, operations rely on the python-pptx library. The server exposes a set of core operations for managing presentations and slides, as well as content editing capabilities.
Architecture overview
┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ Claude Desktop │◄──►│ MCP Protocol │◄──►│ This Server │
└─────────────────┘ └──────────────────┘ └─────────────────┘
│
▼
┌─────────────────┐
│ Platform Detect │
└─────────────────┘
│
┌────────────────────┼────────────────────┐
▼ ▼ ▼
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ Windows COM API │ │ python-pptx │ │ Fallback Handler│
│ (pywin32) │ │ (Cross-platform)│ │ (No adapter) │
└─────────────────┘ └─────────────────┘ └─────────────────┘
Development
To develop and test locally, follow these steps to set up a development environment, run tests, and build the package.
Available tools
initialize_powerpoint
Initialize a PowerPoint connection for subsequent operations.
get_platform_info
Query system and adapter information to understand available capabilities.
create_presentation
Create a new PowerPoint presentation from scratch.
open_presentation
Open an existing PowerPoint file by path.
save_presentation
Save a presentation to a given path.
close_presentation
Close an active presentation session.
get_slides
List all slides within a presentation.
add_slide
Add a new slide with a specified layout type.
get_slide_text
Extract text from a specific slide.
set_slide_title
Set the title for a specific slide.
add_text_box
Add a text box to a slide with specified content.
update_text
Update text content within a slide element.