PPTX MCP Server
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., "@PPTX MCP ServerGenerate a 3-slide presentation from 'base' template."
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.
PPTX MCP Server
A Model Context Protocol (MCP) server that enables AI assistants to programmatically generate PowerPoint (.pptx) presentations. It acts as an engine that clones slide layouts from a master template, injecting text and images dynamically.
Built with Python and python-pptx.
How It Works
This server expects a directory containing:
Master templates (
.pptx): Your corporate template with predefined slide layouts.Schemas (
.schema.yaml): Companion files for each template that map semantic field names (liketitleorphoto) to exact shape positions and styling on the slides.
The AI assistant can query the schema to understand the available slide types and then request a full presentation generation.
Related MCP server: Deckbuilder MCP Server
Available Tools
pptx_get_schema: Returns the slide types available in a.pptxtemplate and the fields each slide type accepts. Call this before generating to know the required structure.pptx_generate: Generates a.pptxpresentation from a template and a structured list of slides. Injects text and downloads external image URLs to place them on the slides. Returns the local path of the generated file.
Setup & Installation
Clone the repository:
git clone https://github.com/Themetralla3000/pptx-mcp-server.git cd pptx-mcp-serverCreate a virtual environment and install dependencies:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate pip install -r requirements.txtConfigure the environment variables (or
.envfile):cp .env.example .env
Configuration
Set up the paths where templates are stored and where generated files should be saved.
PPTX_TEMPLATES_DIR=/absolute/path/to/templates
PPTX_OUTPUT_DIR=/absolute/path/to/outputSchema Format Example
To use a template named base.pptx, create a base.schema.yaml file in your templates directory:
slide_types:
title_slide:
source_index: 0
fields:
- name: main_title
type: text
shape_index: 0
- name: subtitle
type: text
shape_index: 1
image_slide:
source_index: 1
fields:
- name: title
type: text
shape_index: 0
- name: photo
type: image
shape_index: 1Usage with Claude Desktop / Cursor
To use this MCP with Claude Desktop or Cursor, configure it to run the Python script within its virtual environment:
{
"mcpServers": {
"pptx": {
"command": "/absolute/path/to/pptx-mcp-server/venv/bin/python",
"args": ["/absolute/path/to/pptx-mcp-server/server.py"],
"env": {
"PPTX_TEMPLATES_DIR": "/absolute/path/to/templates",
"PPTX_OUTPUT_DIR": "/absolute/path/to/output"
}
}
}
}License
MIT License
🛠️ Adding New Templates
Creating the .schema.yaml by hand can be difficult because you need to know the exact internal shape_index of every element in your PowerPoint file.
To solve this, a helper script is included:
python extract_schema.py /path/to/templates/my_new_presentation.pptxThis script will read your .pptx file and generate a base my_new_presentation.schema.yaml right next to it, listing every text box and image placeholder along with their internal IDs and sample text.
You just need to open the generated YAML and rename the fields to semantic names (e.g. title, company_logo) and delete the shapes you don't want the AI to be able to modify.
This server cannot be deployed
Maintenance
Related MCP Connectors
Generate polished PowerPoint presentations from text prompts, YouTube videos, or structured outlin…
Generate professional PowerPoint presentations from text, YouTube videos, or structured JSON data.…
Deterministic, fully editable PowerPoint from typed slide intents. 200+ layouts, brand templates.
Generate, edit, and export AI presentations to PDF, PPTX, or a shareable link.
Related MCP Servers
- AlicenseAqualityDmaintenanceCreates and manipulates PowerPoint presentations with capabilities for adding various slide types, generating images, and incorporating tables and charts through natural language commands.11144MIT
- AlicenseNot gradedqualityCmaintenanceCreates professional PowerPoint presentations from Markdown or JSON with intelligent layout recommendations, rich content support including tables and images, and automatic template selection based on content analysis.7Apache 2.0
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to programmatically create, manipulate, and analyze Microsoft PowerPoint presentations with advanced formatting and template management.4MIT
- FlicenseNot gradedqualityDmaintenanceEnables AI-powered generation of PowerPoint presentations with dynamic content, themes, and tones. Supports custom topics, audience, and slide count via the generate_ppt tool.-