PowerPoint Automation MCP Server for Claude Desktop
LocalAbout PowerPoint Automation MCP Server for Claude Desktop
A Windows MCP server for controlling Microsoft PowerPoint through Claude Desktop. It supports presentation and slide editing through PowerPoint’s COM API.
Key features
- 01Create, open, save, and close presentations
- 02List open presentations
- 03Read slide details and text
- 04Add slides and text boxes
- 05Edit shape text and slide titles
Use cases
- 01Create and save a presentation
- 02Inspect slide content
- 03Add slides and text to an existing deck
MCP support
Exposes PowerPoint automation functions to MCP clients such as Claude Desktop, including presentation management and slide editing.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEPowerPoint Automation MCP Server for Claude Desktop
This project provides a PowerPoint automation server that works with Claude Desktop via the Model Control Protocol (MCP). It allows Claude to interact with Microsoft PowerPoint, enabling tasks like creating presentations, adding slides, modifying content, and more.
Features
- Create, open, save, and close PowerPoint presentations
- List all open presentations
- Get slide information and content
- Add new slides with different layouts
- Add text boxes to slides
- Update text content in shapes
- Set slide titles
- And more!
Quick Start
- Use
uvxto run:
uvx --from https://github.com/socamalo/PPT_MCP_Server.git mcp-ppt
Installation
-
Clone this repository:
-
Install dependencies:
uv add fastmcp pywin32 -
Configure Claude Desktop:
- Open Claude Desktop
- Navigate to settings
- Configure the MCP server as explained below
Configuration
To configure Claude Desktop to use this MCP server, add the following to your Claude Desktop configuration file, located at %APPDATA%\Claude\claude_desktop_config.json:
{
"mcpServers": {
"ppts": {
"command": "uv",
"args": ["run", "path/to/main.py"]
}
}
}
If you're using a virtual environment or alternative Python executable (like uv):
{
"mcpServers": {
"ppts": {
"command": "C:\\Path\\To\\Python\\Scripts\\uv.exe",
"args": ["run", "C:\\Path\\To\\Project\\main.py"]
}
}
}
Usage
Once configured, you can use Claude Desktop to control PowerPoint. Example interactions:
-
Initialize PowerPoint:
Could you open PowerPoint for me? -
Create a new presentation:
Please create a new PowerPoint presentation. -
Add a slide:
Add a new slide to the presentation. -
Add content:
Add a text box to slide 1 with the text "Hello World". -
Save the presentation:
Save the presentation to C:\Users\username\Documents\presentation.pptx
Available Functions
The server provides the following PowerPoint automation functions:
initialize_powerpoint(): Connect to PowerPoint and make it visibleget_presentations(): List all open presentationsopen_presentation(path): Open a presentation from a fileget_slides(presentation_id): Get all slides in a presentationget_slide_text(presentation_id, slide_id): Get text content of a slideupdate_text(presentation_id, slide_id, shape_id, text): Update text in a shapesave_presentation(presentation_id, path): Save a presentationclose_presentation(presentation_id, save): Close a presentationcreate_presentation(): Create a new presentationadd_slide(presentation_id, layout_type): Add a new slideadd_text_box(presentation_id, slide_id, text, left, top, width, height): Add a text boxset_slide_title(presentation_id, slide_id, title): Set the title of a slide
Requirements
- Windows with Microsoft PowerPoint installed
- Python 3.7+
- Claude Desktop client
pywin32andfastmcpPython packages
Limitations
- Works only on Windows with PowerPoint installed
- The PowerPoint application will open and be visible during operations
- Limited to the capabilities exposed by the PowerPoint COM API
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.