PowerPoint MCP Server
The PowerPoint MCP Server allows you to programmatically create, modify, and manage PowerPoint presentations with various features:
Create & Edit: Create new presentations or open and edit existing ones (with automatic backups)
Add Various Slides: Insert title slides, section headers, content slides, comparison slides, and slides with tables, charts, or images
Dynamic Content: Generate tables and charts from provided data
Image Capabilities: Generate images via Stable Diffusion API or use existing images
Save & Export: Save presentations to specified folders
Integration: Works with MCP clients like Claude Desktop for seamless workflow integration
Configuration: Supports environment variables for API access and file paths
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@PowerPoint MCP Server create a presentation about quarterly sales with a title slide, section headers, and charts"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Powerpoint MCP server
A MCP server project that creates powerpoint presentations
Main Changes of this fork
Uses Stable Diffusion (ForgeUI/Automatic-1111) API instead of together ai.
Related MCP server: PowerPoint Editor MCP Server
Components
Tools
The server implements multiple tools:
create-presentation: Starts a presentationTakes "name" as required string arguments
Creates a presentation object
add-slide-title-only: Adds a title slide to the presentationTakes "presentation_name" and "title" as required string arguments
Creates a title slide with "title" and adds it to presentation
add-slide-section-header: Adds a section header slide to the presentationTakes "presentation_name" and "header" as required string arguments
Creates a section header slide with "header" (and optionally "subtitle") and adds it to the presentation
add-slide-title-content: Adds a title with content slide to the presentationTakes "presentation_name", "title", "content" as required string arguments
Creates a title with content slide with "title" and "content" and adds it to presentation
add-slide-title-with-table: Adds a title slide with a tableTakes "presentation_name", "title", "data" as required string and array arguments
Creates a title slide with "title" and adds a table dynamically built from data
add-slide-title-with-chart: Adds a title slide with a chartTakes "presentation_name", "title", "data" as required string and object arguments
Creates a title slide with "title" and adds a chart dynamically built from data. Attempts to figure out the best type of chart from the data source.
add-slide-picture-with-caption: Adds a picture with caption slideTakes "presentation_name", "title", "caption", "image_path" as required string arguments
Creates a picture with caption slide using the supplied "title", "caption", and "image_path". Can either use images created via the "generate-and-save-image" tool or use an "image_path" supplied by the user (image must exist in folder_path)
open-presentation: Opens a presentation for editingTakes "presentation_name" as required arguments
Opens the given presentation and automatically saves a backup of it as "backup.pptx"
This tool allows the client to work with existing pptx files and add slides to them. Just make sure the client calls "save-presentation" tool at the end.
save-presentation: Saves the presentation to a file.Takes "presentation_name" as required arguments.
Saves the presentation to the folder_path. The client must call this tool to finalize the process.
generate-and-save-image: Generates an image for the presentation using a T2I modelTakes "prompt" and "file_name" as required string arguments
Creates an image using stable diffusion api (ForgeUI/Automatic1111)
Configuration
An environment variable is required for image generation via ForgeUI API
"env":
{
"SD_WEBUI_URL": "http://your-sd-webui-url:7860",
"SD_AUTH_USER": "your-username", // Optional: if authentication is enabled
"SD_AUTH_PASS": "your-password", // Optional: if authentication is enabled
}A folder_path is required. All presentations and images will be saved to this folder.
"--folder-path",
"/path/to/decks_folder"Quickstart
Install
Make sure you have UV installed
MacOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | shWindows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"Clone the repo
git clone https://github.com/Ichigo3766/powerpoint-mcp.gitClaude Desktop (works with any mcp client)
On MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
--directory: the path where you cloned the repo above (ex: /full/path/to/powerpoint-mcp/src)--folder-path: the path where powerpoint decks and images will be saved to. Also the path where you should place any images you want the MCP server to use.
# Add the server to your claude_desktop_config.json
"mcpServers": {
"powerpoint": {
"command": "uv",
"env": {
"SD_WEBUI_URL": "http://your-sd-webui-url:7860",
"SD_AUTH_USER": "your-username", // Optional: if authentication is enabled
"SD_AUTH_PASS": "your-password", // Optional: if authentication is enabled
},
"args": [
"--directory",
"/path/to/powerpoint",
"run",
"powerpoint",
"--folder-path",
"/path/to/decks_folder"
]
}
}Usage Examples
Create a presentation about fish, create some images and include tables and chartsCreate a presentation about the attached paper. Please use the following images in the presentation:
author.jpegAssuming you have SQLite MCP Server installed.
Review 2024 Sales Data table. Create a presentation showing current trends, use tables and charts as appropriateCredits
This project is a fork of powerpoint by supercurses, with additional features and modifications. The original project provided the foundation for this MCP server.
License
This MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.
Available Tools
11 toolsadd-slide-comparisonA
Add a new a comparison slide with title and comparison content. Use when you wish to compare two concepts
Inputs: left_side_content (required), left_side_title (required), presentation_name (required), right_side_content (required), +2 more.
add-slide-picture-with-captionC
Add a new slide with a picture and caption to an existing presentation
Inputs: caption (required), image_path (required), presentation_name (required), title (required).
add-slide-section-headerC
This tool adds a section header (a.k.a segue) slide to the presentation you are working on. The tool doesn't return anything. It requires the presentation_name to work on.
Inputs: header (required), presentation_name (required), subtitle.
add-slide-title-contentC
Add a new slide with a title and content to an existing presentation
Inputs: content (required), presentation_name (required), title (required).
add-slide-title-onlyB
This tool adds a new title slide to the presentation you are working on. The tool doesn't return anything. It requires the presentation_name to work on.
Inputs: presentation_name (required), title (required).
add-slide-title-with-chartC
Add a new slide with a title and chart. The chart type will be automatically selected based on the data structure.
Inputs: data (required), presentation_name (required), title (required).
add-slide-title-with-tableC
Add a new slide with a title and table containing the provided data
Inputs: data (required), presentation_name (required), title (required).
create-presentationB
This tool starts the process of generating a new powerpoint presentation with the name given by the user. Use this tool when the user requests to create or generate a new presentation.
Inputs: name (required).
generate-and-save-imageB
Generates an image using a FLUX model and save the image to the specified path. The tool will return a PNG file path. It should be used when the user asks to generate or create an image or a picture.
Inputs: file_name (required), prompt (required).
open-presentationB
Opens an existing presentation and saves a copy to a new file for backup. Use this tool when the user requests to open a presentation that has already been created.
Inputs: presentation_name (required), output_path.
save-presentationA
Save the presentation to a file. Always use this tool at the end of any process that has added slides to a presentation.
Inputs: presentation_name (required), output_path.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 11 tools
Most tools have distinct purposes focused on slide types or presentation management, but 'generate-and-save-image' stands out as unrelated to PowerPoint operations, potentially causing confusion. The slide-adding tools are well-differentiated by content type (comparison, picture, title-only, etc.), making them easy to distinguish for their specific use cases.
The naming follows a consistent 'verb-noun' pattern with hyphens (e.g., add-slide-comparison, create-presentation), which is clear and predictable. However, 'generate-and-save-image' deviates slightly by including an 'and' conjunction, breaking the pure verb-noun flow, though it remains readable and understandable.
With 11 tools, the count is reasonable for a PowerPoint server, covering slide creation, presentation management, and an image generation tool. It's slightly on the higher side but well-scoped for the domain, with each tool serving a specific function without obvious redundancy.
The toolset covers core presentation operations like creating, opening, saving, and adding various slide types, but lacks tools for editing or deleting slides, updating content, or managing slide order. The inclusion of 'generate-and-save-image' adds an unrelated capability, but for PowerPoint-specific tasks, there are notable gaps in lifecycle coverage.
Maintenance
Related MCP Connectors
Generate AI slide decks and export native PowerPoint (.pptx) and PDF presentations from chat.
AI presentations in your brand from a prompt, text or file; present by link, export PDF and PPTX
Create professionally designed, editable PowerPoint presentations from a prompt.
Create, edit, export and manage presentations. Requires a paid PPT.AI API merchant account.
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceA server that enables creating and editing PowerPoint presentations programmatically through the Model Context Protocol, supporting features like adding slides, images, textboxes, charts, and tables.12,321 PyPI1,862MIT
- FlicenseNot gradedqualityDmaintenanceA server that provides PowerPoint presentation creation and editing capabilities through the Model Context Protocol, allowing users to create slides, add text, images, shapes and other content programmatically.2-
- AlicenseNot gradedqualityDmaintenanceAI-powered Office automation server that enables creating, editing, and processing Word, Excel, and PowerPoint documents through natural language instructions using Python-based libraries.1MIT
- AlicenseNot gradedqualityDmaintenanceEnables creation of professional PowerPoint presentations with AI-generated content and images, supporting multiple LLMs and image services via MCP protocol.MIT