Skip to main content

Powerpoint MCP server

A MCP server project that creates powerpoint presentations

PowerPoint Server MCP server

Main Changes of this fork

Uses Stable Diffusion (ForgeUI/Automatic-1111) API instead of together ai.

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 T2I model
    • Takes "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 | sh

Windows

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

Clone the repo

git clone https://github.com/Ichigo3766/powerpoint-mcp.git

Claude 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 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

Credits

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.

Metadata

Release files for iflow-mcp_powerpoint 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for iflow-mcp_powerpoint 0.1.1
File Size Uploaded
iflow_mcp_powerpoint-0.1.1.tar.gz 55.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for iflow-mcp_powerpoint 0.1.1
File Interpreter ABI Platform
iflow_mcp_powerpoint-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 69.6 kB

Release files / iflow_mcp_powerpoint-0.1.1.tar.gz

Download URL iflow_mcp_powerpoint-0.1.1.tar.gz
Size 55.0 kB
Tags Source
SHA-256 checksum
How to use checksums
b9f55ab306ee84d9e6f06952300f8347fd16bd2336875041f27afee4d0edc7e8
BLAKE2b-256 checksum
How to use checksums
854905ce5ddb89850fcfd5c13e595db4560d36a224a8ca4568576255e40e5221
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.10 {"installer":{"name":"uv","version":"0.9.10"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / iflow_mcp_powerpoint-0.1.1-py3-none-any.whl

Download URL iflow_mcp_powerpoint-0.1.1-py3-none-any.whl
Size 14.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f5d2d346aaa82145d5ac0fc26a4635030db8e8738d6895745cba1e7e084efed9
BLAKE2b-256 checksum
How to use checksums
e5e75b7c2445b2b2ebdd1a347034f204f37f8511a28f0371a1c8c58b77398803
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.10 {"installer":{"name":"uv","version":"0.9.10"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page