Ppt MCP Server
PowerPoint presentation manipulation and automated design layout tools for AI assistants.
Data last scanned last week · Reviewed last month
Overview
Ppt MCP Server enables AI agents to programmatically interact with PowerPoint files using the python-pptx library. It supports a comprehensive range of file operations, including creating presentations from templates, adding slides, and inserting dynamic content like text boxes, images, and data-driven charts. Beyond basic file editing, the server includes specialized modules for layout management, such as snap-to-grid tools, professional shape libraries, and style profile management. It also provides analytical features, allowing users to extract text content, critique presentation designs, and perform bulk generation of documents based on schema-driven JSON inputs.
Our verdict
This server carries a high risk level with a security score of 18/100. It is a community-maintained project that has not undergone editorial review, and the repository has not received a commit in over a year (395 days), suggesting it may no longer be actively supported. Given the lack of verified authentication or read-only mode documentation, users should exercise extreme caution and avoid using this in environments with sensitive corporate data.
- Extensive feature set for automated PowerPoint content generation
- Zero direct dependencies simplifies the supply-chain surface
- Detailed README documentation for tool capabilities and configuration
- Repository has not been updated in over 395 days
- Lack of verified security reviews for authentication and file access
- Single contributor increases bus-factor dependency risk
- High security risk score of 18/100
Setup
{
"mcpServers": {
"ppt-mcp": {
"args": [
"-y",
"powerpoint-mcp-server"
],
"command": "npx"
}
}
}Paste into ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows), then restart Claude Desktop. Some servers require API keys or tokens as environment variables — check the project's README and add an "env" object if needed.
- No read-only mode — running this grants full read/write access.
- No built-in authentication — anyone with access to this config can invoke every tool it exposes.
Tools
| Tool | Description | Risk |
|---|---|---|
| create_presentation | Create presentations from scratch or templates | medium |
| load_presentation | Load existing PowerPoint files for editing | low |
| save_presentation | Save presentations with automatic path resolution | medium |
| add_slide | Add slides with different layouts (title, content, blank, etc.) | medium |
| extract_text | Extract all text content for analysis | low |
| get_presentation_info | Get metadata and structure information | low |
| add_text_box | Rich text formatting (font size, bold, italic, colors) | medium |
| add_image | Images from files or URLs with precise positioning | medium |
| add_chart | Data-driven charts (column, bar, line, pie, area) | medium |
| create_from_json | Schema-driven presentation creation | medium |
Compatibility
| Client | Local | Docker | Remote | Read-only |
|---|---|---|---|---|
| ChatGPT | ||||
| Claude Desktop | ||||
| Cursor | ||||
| VS Code | ||||
| Windsurf |
Frequently asked questions
›Are there any specific OS requirements for using this server?
Yes, the screenshot_slides feature is only available on Windows systems.
›What PowerPoint file formats are supported?
The server exclusively supports the .pptx format, which corresponds to PowerPoint 2007 and newer versions.
›How are concurrent editing requests handled?
The server operates in a single-threaded manner, meaning it does not support concurrent access to presentations.
›Does the server keep presentation data in persistent storage during editing?
No, presentations are kept in memory while operations are being performed.
›What is the core library used by this server?
The server is built upon the python-pptx library to handle PowerPoint file manipulations.
Alternatives
Badge
Maintain this server? Add the live badge to your README.