About powerpoint MCP server
powerpoint MCP server is an MCP server for creating PowerPoint presentations. It is aimed at users who want an AI client to build slide decks, adding title, content, table, chart and picture slides.
Key features
- 01Create and open PPTX presentations
- 02Add title, section header and content slides
- 03Build tables and charts from supplied data
- 04Insert picture slides with captions
- 05Generate images with a FLUX model on TogetherAI
Use cases
- 01Generating a deck from a paper or source document
- 02Turning a data table into a report with charts
- 03Appending slides to an existing pptx file
MCP support
This is an MCP server that exposes tools such as create-presentation, add-slide-title-only, add-slide-title-with-chart and save-presentation so MCP clients can create, edit and save decks. Image generation requires the TOGETHER_API_KEY environment variable.
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 MCP server
A MCP server project that creates powerpoint presentations
Components
Tools
The server implements multiple tools:
create-presentation: Starts a presentation- Takes "name" as required string arguments
- Creates a presentation object
add-slide-title-only: Adds a title slide to the presentation- Takes "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 presentation- Takes "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 presentation- Takes "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 table- Takes "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 chart- Takes "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 slide- Takes "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 editing- Takes "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 FLUX model- Takes "prompt" and "file_name" as required string arguments
- Creates an image using the free FLUX model on TogetherAI (requires an API key)
Configuration
An environment variable is required for image generation via TogetherAI Register for an account: https://api.together.xyz/settings/api-keys
"env": {
"TOGETHER_API_KEY": "api_key"
}
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 | sh
Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
Clone the repo
git clone https://github.com/supercurses/powerpoint.git
Claude Desktop
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--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": {
"TOGETHER_API_KEY": "api_key"
},
"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 charts
Create a presentation about the attached paper. Please use the following images in the presentation:
author.jpeg
Assuming you have SQLite MCP Server installed.
Review 2024 Sales Data table. Create a presentation showing current trends, use tables and charts as appropriate
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.
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.