PluginBench
MCP Server
Maintained
MIT

MCP Server for PowerPoint MCP Server

io.github.trsdn/mcp-server-ppt

Automate PowerPoint with AI using natural language commands through the native COM API.

What is the MCP Server for PowerPoint MCP server?

The PptMcp MCP Server for Microsoft PowerPoint is a Model Context Protocol server that enables AI assistants like Claude and GitHub Copilot to automate PowerPoint presentations through conversational commands. It provides 33 specialized tools covering slides, shapes, text, charts, tables, images, animations, exports, and more—all through PowerPoint's native COM API on Windows.

PptMcp lets you control Microsoft PowerPoint presentations using natural language. Create slides, add shapes and text, build charts and tables, apply themes, run VBA macros, and export to PDF or video—all from an AI conversation. It works with Claude, GitHub Copilot, ChatGPT, and other MCP-compatible clients, and shows real-time changes in PowerPoint as the AI works.

How to install MCP Server for PowerPoint

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "mcp-server-ppt": {
      "command": "dnx",
      "args": [
        "PptMcp.McpServer"
      ]
    }
  }
}

Tools & capabilities

Tools this server exposes to the agent.

  • Files — Open, close, create, save, list, and validate presentations
  • Slides — Create, duplicate, move, delete, apply layouts, hide/unhide, generate thumbnails, clone with replace
  • Shapes — Add, move, resize, fill with colors/gradients, apply lines, shadows, glows, reflections, opacity, 3D effects, rotation, z-order, grouping, connectors, merge, flip, scale
  • Text — Get/set text, find and replace, format, spacing, bullets, case conversion, symbols, alt-text audit
  • Slide Tables — Create tables, read/write cells and rows, add/delete rows and columns, merge cells, format, borders
  • Charts — Create charts, set data, title, type, legend, axis titles, data table
  • Images — Insert images, crop, adjust brightness/contrast, set transparent color
  • Media — Insert audio/video, get media info, configure playback settings
  • SmartArt — Get diagram info, add/delete nodes, change layout and style, adjust levels
  • Design/Themes — Apply themes, color schemes, fonts, archetypes, palettes, layout grids, style profiles
  • Slide Background — Get background, set solid color, gradient, image, reset to master
  • Masters & Layouts — List masters and layouts, edit master shapes, delete unused layouts
  • Placeholders — List placeholders, set text, set image
  • Headers & Footers — Get/set footer text, slide numbers, date
  • Page Setup — Configure slide size, orientation, first slide number
  • Shape Alignment — Align and distribute shapes on slides
  • Animations — List, add, remove, clear animations; configure timing and reorder
  • Transitions — Get, set, remove slide transitions; copy to all slides
  • Slideshow — Start, stop, navigate, check status, configure slideshow settings
  • Custom Shows — Create, list, delete custom slide shows

Use cases

  • Create and build multi-slide presentations from scratch with titles, content, and layouts using natural language
  • Automate repetitive formatting tasks like applying themes, colors, fonts, and animations across slides
  • Generate charts and tables with live data and customize titles, legends, and axis labels
  • Export presentations to PDF, images, or video format for distribution
  • Run VBA macros and manage presentation metadata, comments, and speaker notes programmatically

MCP Server for PowerPoint MCP server FAQ

What is PptMcp?

PptMcp is an MCP server that lets AI assistants like Claude and GitHub Copilot control Microsoft PowerPoint through natural language commands. It provides 33 tools covering slides, shapes, text, charts, tables, images, animations, exports, and more.

Is PptMcp free?

Yes, PptMcp is open-source under the MIT License and free to use. You only need a Windows machine with Microsoft PowerPoint 2016 or later installed.

How do I install PptMcp in Cursor or Claude?

Install via `dotnet tool install --global PptMcp.McpServer` (requires .NET 9), or use `npx -y mcp-server-ppt` without .NET. Then configure your MCP client to run the `mcp-ppt` command. See the installation guide for detailed steps.

What are the system requirements?

Windows only (COM interop is Windows-specific), Microsoft PowerPoint 2016 or later, and a desktop environment. The server controls the actual PowerPoint application, not just files.

Does PptMcp collect data?

No. PptMcp runs entirely on your machine and collects no telemetry, analytics, or crash reporting. Presentations are edited locally; content is never uploaded.

Can I use PptMcp on Linux or macOS?

No, PptMcp is Windows-only because it uses PowerPoint's native COM API. For other platforms, consider PowerPoint-free alternatives or Open XML SDK libraries.

README (reference)

Source of truth, from the repository.

PptMcp - MCP Server for Microsoft PowerPoint

Release Release Workflow NuGet MCP Server NuGet CLI License: MIT .NET Platform Built with Copilot

Install in VS Code Install in VS Code Insiders Install in Cursor

The install badges register the server as ppt-mcp running the mcp-ppt command. Install the tool first with dotnet tool install --global PptMcp.McpServer, otherwise the client has nothing to launch.

Automate PowerPoint with AI — A Model Context Protocol (MCP) server for comprehensive PowerPoint automation through conversational AI.

PptMcp enables AI assistants such as GitHub Copilot, Claude, and ChatGPT to automate Microsoft PowerPoint through natural language commands. It covers real presentation work end to end: create slides, edit text, place shapes and images, build charts and tables, apply themes, run VBA, export to PDF or video, and manage live PowerPoint windows safely through the native COM API.

Origin and credit: This project builds on the original MCP automation foundation created by Stefan Broenner (sbroenne) in mcp-server-excel, extended here into a full PowerPoint-focused toolchain.

Releases and packages: GitHub Releases | NuGet: PptMcp.McpServer | NuGet: PptMcp.CLI

For multi-phase build / verify / repair workflows from source, the repo also includes the official orchestration client under src\PptMcp.Agent.

🛡️ 100% Safe — Uses PowerPoint's Native COM API — Zero risk of file corruption. Uses PowerPoint's official COM API ensuring complete safety and compatibility.

💡 Interactive Development — See results instantly in PowerPoint. Add slides, create charts, format text, and iterate. PowerPoint becomes your AI-powered workspace.

Technical Requirements:

  • ⚠️ Windows Only — COM interop is Windows-specific
  • ⚠️ PowerPoint Required — Microsoft PowerPoint 2016 or later must be installed
  • ⚠️ Desktop Environment — Controls actual PowerPoint process (not for server-side processing)

🎯 What You Can Do

33 specialized tools with 224 operations:

  • 📁 Files (1 tool, 6 ops) — Open, close, create, save, list, validate presentations
  • 📄 Slides (1 tool, 15 ops) — Create, duplicate, move, delete, apply layouts, hide/unhide, thumbnails, clone-with-replace
  • 🔷 Shapes (1 tool, 35 ops) — Add, move, resize, fill, gradient, line, shadow, glow, reflection, opacity, 3D, rotation, z-order, grouping, connectors, merge, flip, scale
  • ✏️ Text (1 tool, 18 ops) — Get/set text, find, replace, format, spacing, bullets, case, symbols, alt-text audit
  • 📋 Slide Tables (1 tool, 13 ops) — Create, read/write cells and rows, add/delete rows and columns, merge, format, borders
  • 📊 Charts (1 tool, 10 ops) — Create, set data, title, type, legend, axis titles, data table
  • 🖼️ Images (1 tool, 4 ops) — Insert, crop, brightness/contrast, transparent color
  • 🎥 Media (1 tool, 4 ops) — Insert audio/video, media info, playback settings
  • 🧩 SmartArt (1 tool, 6 ops) — Diagram info, add/delete nodes, layout, style, level changes
  • 🎨 Design/Themes (1 tool, 19 ops) — Themes, color schemes, fonts, archetypes, palettes, layout grids, style profiles
  • 🖌️ Slide Background (1 tool, 5 ops) — Get, solid color, gradient, image, reset to master
  • 🎭 Masters & Layouts (1 tool, 5 ops) — List masters and layouts, edit master shapes, delete unused
  • 📌 Placeholders (1 tool, 3 ops) — List placeholders, set text, set image
  • 📃 Headers & Footers (1 tool, 2 ops) — Get/set footer text, slide numbers, date
  • 📐 Page Setup (1 tool, 3 ops) — Slide size, orientation, first slide number
  • ↔️ Shape Alignment (1 tool, 2 ops) — Align and distribute shapes on slides
  • 🎬 Animations (1 tool, 6 ops) — List, add, remove, clear, timing, reorder
  • 🔀 Transitions (1 tool, 4 ops) — Get, set, remove, copy to all slides
  • 📺 Slideshow (1 tool, 5 ops) — Start, stop, navigate, status, configure
  • 🎞️ Custom Shows (1 tool, 3 ops) — Create, list, delete custom slide shows
  • 📂 Sections (1 tool, 4 ops) — List, add, rename, delete presentation sections
  • 📥 Slide Import (1 tool, 1 op) — Import slides from another .pptx file
  • 📝 Notes (1 tool, 5 ops) — Get, set, clear, append, read all speaker notes
  • 💬 Comments (1 tool, 4 ops) — Add, list, delete, clear slide comments
  • 🔗 Hyperlinks (1 tool, 5 ops) — Add, get, list, remove, validate hyperlinks
  • 🏷️ Tags (1 tool, 3 ops) — Custom metadata on slides and shapes
  • 🗂️ Document Properties (1 tool, 4 ops) — Get/set built-in and custom properties
  • ♿ Accessibility (1 tool, 3 ops) — Audit, get/set reading order
  • 🔤 Proofing (1 tool, 3 ops) — Spell check, get/set language
  • 📤 Export (1 tool, 9 ops) — PDF, slide images, video (MP4), print, save-as, extract text/images
  • 🖨️ Print Options (1 tool, 2 ops) — Get/set print configuration
  • ⚙️ VBA (1 tool, 5 ops) — List, view, import, delete, run macros
  • 🪟 Window (1 tool, 7 ops) — Info, minimize, restore, maximize, zoom, view mode

📚 Complete Feature Reference → — Detailed documentation of all 224 operations

💬 Example Prompts

Create & Build Presentations:

  • "Create a new PowerPoint presentation called QuarterlyReport.pptx with a title slide"
  • "Add 5 slides with a 'Title and Content' layout"
  • "Insert a company logo image on the first slide"

Content & Formatting:

  • "Add a textbox on slide 2 with the text 'Q1 Revenue Summary' in bold 24pt Arial"
  • "Create a table on slide 3 with columns for Region, Q1, Q2, Q3, Q4"
  • "Set the shape fill color to #0078D4 and add a 2pt border"

Charts & Visuals:

  • "Create a bar chart on slide 4 showing quarterly revenue data"
  • "Set the chart title to 'Revenue by Quarter'"
  • "Add an entrance animation to the chart shape"

Automation:

  • "Export the presentation as PDF"
  • "Run the FormatAllSlides macro"
  • "Show me PowerPoint while you work" — watch changes in real-time

🪟 Agent Mode — Watch AI Work in PowerPoint:

  • "Show me PowerPoint side-by-side while you build this presentation" — real-time visibility
  • "Let me watch while you create the slides"
  • Status bar shows live progress: "PptMcp: Creating chart on slide 4..."

👥 Who Should Use This?

Perfect for:

  • ✅ Presenters automating repetitive PowerPoint workflows
  • ✅ Developers building PowerPoint-based reporting solutions
  • ✅ Business users managing complex presentation decks
  • ✅ Teams maintaining presentation templates and VBA macros

Not suitable for:

  • ❌ Server-side processing (use libraries like Open XML SDK instead)
  • ❌ Linux/macOS users (Windows + PowerPoint installation required)
  • ❌ High-volume batch operations (consider PowerPoint-free alternatives)

🚀 Quick Start

PlatformInstallation
Any MCP Client (no .NET)npx -y mcp-server-ppt
Any MCP Client (.NET tool)dotnet tool install --global PptMcp.McpServer
Details📖 Installation Guide

⚠️ Important: Close all PowerPoint files before using. The server requires exclusive access to presentations during automation.

🔧 CLI vs MCP Server

This package provides both CLI and MCP Server interfaces. Choose based on your use case:

InterfaceBest ForWhy
CLI (pptcli)Coding agents (Copilot, Cursor, Windsurf)Fewer tokens — single tool, no large schemas.
MCP ServerConversational AI (Claude Desktop, VS Code Chat)Rich tool discovery, persistent connection.

Manual Installation:

# Install MCP Server and CLI
dotnet tool install --global PptMcp.McpServer
dotnet tool install --global PptMcp.CLI

Without .NET installed: the MCP server is also published to npm as a wrapper that downloads a self-contained build on first use. Point any client at npx -y mcp-server-ppt instead of mcp-ppt. Windows x64 only.

Windows package managers (pending first submission): every release now builds a standalone pptcli archive with a SHA256 and renders ready-to-submit winget and Chocolatey manifests (see packaging/). The listings themselves are not live yet, so the commands below will not resolve until the first submission is accepted — tracked in #112.

# Not available yet - listed here so the intended install path is documented
winget install trsdn.pptcli
choco install pptcli

Both packages will pull the .NET 9 Desktop Runtime as a dependency, because the archive is a framework-dependent build. Neither can install Microsoft PowerPoint, which remains a prerequisite.

🤖 Optional: Official Agent Client from Source

For larger deck-building tasks, this repo also ships an official source-side controller: src\PptMcp.Agent.

It is intentionally not a third server surface. Instead, it sits above the MCP server and runs one client-side loop:

  • plan the deck
  • execute through normal sequential MCP tool calls
  • verify the generated deck
  • repair incomplete output when needed

Quick start:

dotnet build src\PptMcp.McpServer\PptMcp.McpServer.csproj -c Release

Set-Location src\PptMcp.Agent
npm install
npm run check
npm test

node .\src\cli.mjs run `
  --task "Build a 5-slide executive deck on Q4 revenue performance and next actions." `
  --output "C:\Users\you\Documents\q4-revenue-deck.pptx"

Read more:

⚙️ How It Works — COM Automation & Unified Service Architecture

PptMcp uses Windows COM automation to control the actual PowerPoint application (not just .pptx files).

Both the MCP Server and CLI communicate with a shared PptMcp Service that manages PowerPoint sessions. This unified architecture enables:

┌─────────────────────┐     ┌─────────────────────┐
│   MCP Server        │     │   CLI (pptcli)    │
│  (AI assistants)    │     │  (coding agents)    │
└─────────┬───────────┘     └─────────┬───────────┘
          │                           │
          └──────────┬────────────────┘
                     ▼
          ┌─────────────────────────┐
          │   PptMcp Service      │
          │  (shared session mgmt)  │
          └─────────┬───────────────┘
                    ▼
          ┌─────────────────────────┐
          │   PowerPoint COM API    │
          │  (PowerPoint.Application)│
          └─────────────────────────┘

Key Benefits:

  • ✅ Shared Sessions — CLI and MCP Server can access the same open presentations
  • ✅ Single PowerPoint Instance — No duplicate processes or file locks
  • ✅ System Tray UI — Monitor active sessions via the PptMcp tray icon

💡 Tip: Watch PowerPoint While AI Works By default, PowerPoint runs hidden for faster automation. To see changes in real-time, just ask:

  • "Show me PowerPoint while you work"
  • "Let me watch what you're doing"
  • "Open PowerPoint so I can see the changes"

The AI will display the PowerPoint window so you can watch every operation happen live!

📋 Additional Information

📚 CLI Guide → | MCP Server Guide → | Agent Client → | Eval Framework → | Archetype Pipeline → | All Agent Skills →

License: MIT License - see LICENSE file

Contributing: See CONTRIBUTING.md for guidelines

Built With: This entire project was developed using GitHub Copilot AI assistance - mainly with Claude but lately with Auto-mode.

🔒 Privacy Policy

PptMcp runs entirely on your machine and collects no data.

Data collectionNone. No telemetry, no analytics, no crash reporting.
Usage and storagePresentations are opened, edited and saved locally by the PowerPoint installation on the same computer. Slide content, speaker notes, embedded data and file paths are never uploaded by this software.
Third-party sharingNone by this software. One outbound request is made at startup — a plain GET to api.nuget.org to check for a newer release. It sends no data about you, your files or your usage. Disable it with PPTMCP_NO_UPDATE_CHECK=1.
Data retentionNothing is retained, because nothing is collected.
ContactOpen an issue

One caveat worth stating plainly: PptMcp is normally driven by an AI assistant. Whatever that assistant sends to its own model provider is governed by that assistant's privacy policy, not this one.

📄 Full Privacy Policy →

Acknowledgments:

  • Microsoft PowerPoint Team — For comprehensive COM automation APIs
  • Model Context Protocol community — For the AI integration standard
  • Open Source Community — For inspiration and best practices

Related Projects

Upstream projects by Stefan Broenner:

Related MCP servers

Windows UI Automation MCP server for desktop inspection and element lookup. Windows only.

3
C#
MIT
View repository →
WOWord logo

Word

Active

Microsoft Word automation for AI assistants. Requires Word for Windows.

2
C#
MIT
View repository →

Wraps local Ollama models so bulk generation runs on your own hardware, not a paid API.

0
TypeScript
Apache-2.0
View repository →

MCP server exposing TrueCalc spreadsheet formula evaluation as tools for AI assistants.

0
Rust
MIT
View repository →

MCP server for DigitalOcean — manage Droplets, databases, domains, and more

0
Python
MIT
View repository →

Address-level storm event data and forecasted property risk API for AI agents

View repository →