PowerPoint MCP Server & CLI - 18 tools, ~98 operations for AI-powered PowerPoint automation via COM API
claude mcp add powerpoint -- npx -y add-mcp{
"mcpServers": {
"powerpoint": {
"command": "npx",
"args": ["-y", "add-mcp"]
}
}
}MCP Servers overview
# PowerPointMcp — MCP Server & CLI for Microsoft PowerPoint
[](https://marketplace.visualstudio.com/items?itemName=sbroenne.powerpoint-mcp)
[](https://github.com/sbroenne/mcp-server-powerpoint/releases)
[](https://github.com/sbroenne/mcp-server-powerpoint/actions/workflows/ci.yml)
[](https://github.com/sbroenne/mcp-server-powerpoint/releases/latest)
[](https://opensource.org/licenses/MIT)
[](https://dotnet.microsoft.com/download/dotnet/10.0)
[](https://github.com/sbroenne/mcp-server-powerpoint)
[](https://copilot.github.com/)
**Automate PowerPoint with AI** — a [Model Context Protocol](https://modelcontextprotocol.io) server and CLI
for live, real-time PowerPoint automation through conversational AI. Sibling project to
[mcp-server-excel](https://github.com/sbroenne/mcp-server-excel), following the same layered
architecture: `ComInterop` → `Core` → `CLI` / `MCP Server`.
**MCP Server for PowerPoint** enables AI assistants (GitHub Copilot, Claude, ChatGPT) to build and
edit real `.pptx` presentations through natural language — slides, shapes, text, tables, charts,
speaker notes, and layouts — no VBA or PowerPoint object-model knowledge required.
**🛡️ Live COM automation, not file parsing** — Most PowerPoint MCP servers manipulate `.pptx`
files offline with libraries like `python-pptx`, or use agent-run scripts with LibreOffice-rendered
thumbnails. This project instead drives a **live, real PowerPoint desktop instance** via
`Microsoft.Office.Interop.PowerPoint` — the official Primary Interop Assembly. That means
true-fidelity rendering, compatibility with an already-open deck, and zero risk of producing a
`.pptx` that PowerPoint itself can't open, because PowerPoint is the one writing it.
**🖼️ Export-to-verify** — the core differentiator. After any visual edit, export the slide (or the
whole deck) to an image with `export(action="export-slide-to-image", ...)` /
`export(action="export-all-slides-to-images", ...)` and let a
vision-capable AI assistant *see* the result — catching overlapping shapes, text overflow, and
layout regressions that text-only automation simply cannot detect.
**Technical Requirements:**
- ⚠️ **Windows Only** — COM interop is Windows-specific
- ⚠️ **PowerPoint Required** — Microsoft PowerPoint 2016 or later must be installed
- ⚠️ **Desktop Environment** — controls a real PowerPoint process (not for server-side processing)
> [!TIP]
> **Also automating spreadsheets?** Check out [Excel MCP Server](https://excelmcpserver.dev/) —
> the sister project, built the same way.
## 🎯 What You Can Do
**13 MCP tools with 137 operations across 13 domains:**
- 🗂️ **Presentation** (12 ops) — create, open, save, close, list sessions, apply a `.potx`/`.pptx`
template's masters/theme/layouts, read the current theme name, read/write built-in and custom
document properties
- 📑 **Slide** (14 ops) — add, count, delete, duplicate, reorder, per-slide background color, sections
- ▭ **Shape** (36 ops) — rectangles, text boxes, auto shapes, lines, connectors, fill/line/shadow,
rotation, flip, z-order, grouping, naming, alt text
- ✏️ **TextFrame** (20 ops) — text, font size/name/color, bold, italic, underline, alignment, bullets
- 📊 **Table** (12 ops) — add, cell text, insert/delete rows & columns, cell fill/border, merge cells
- 🗣️ **Notes** (2 ops) — set/get speaker notes
- 🖼️ **Layout** (2 ops) — set/get slide layout
- 🎭 **Master** (8 ops) — slide master title/body placeholder fonts, background color
- 🎬 **Animation** (5 ops) — shape entrance/emphasis/exit effects, slide transitions
- 🖼️ **Image** (7 ops) — insert and adjust pictures (brightness, contrast, recolor, crop)
- 📈 **Chart** (10 ops) — add chart, multi-series data, titles, axis titles, legend
- 🔀 **SmartArt** (7 ops) — insert and edit SmartArt diagrams
- 🖼️ **Export** (2 ops) — export a slide, or all slides, to images for visual verification
Every domain is exposed as a single **action-dispatch tool** (e.g. `shape`, `table`, `chart`,
`presentation`) with an `action` parameter selecting the specific operation — keeping the tool
list small for AI assistants while still exposing every operation.
📚 **[Complete Feature Reference →](https://powerpointmcpserver.dev/features/)** — detailed
documentation of every tool and operation
## 💬 Example Prompts
**Build a deck from scratch:**
- *"Create a new presentation with a title slide and three content slides about our Q3 results,
then export it as images so I can see it."*
**Tables & charts:**
- *"Add a 4x3 table summarizing this data, then add a bar chart next to it."*
**Formatting & shapes:**
- *"Make the title bold and blue, and move the logo to the top-right corner."*
**Speaker notes:**
- *"Write speaker notes for each slide summarizing the key talking point."*
**Templates & themes:**
- *"Apply our corporate template to this deck without losing any of the slide content."*
**Visual verification:**
- *"Export slide 3 as an image and tell me if the chart overlaps the text box."*
## 👥 Who Should Use This?
**Perfect for:**
- ✅ AI assistants and coding agents that need to build or edit `.pptx` decks
- ✅ Anyone automating repetitive slide-deck workflows (reports, status decks, templates)
- ✅ Teams that want export-to-verify visual checks on every automated edit
**Not suitable for:**
- ❌ Server-side/headless processing (this drives a real desktop PowerPoint process)
- ❌ Linux/macOS users (Windows + PowerPoint installation required)
## 🚀 Quick Start
| Platform | Installation |
|----------|-------------|
| **VS Code** | [Install Extension](https://marketplace.visualstudio.com/items?itemName=sbroenne.powerpoint-mcp) (one-click, recommended) |
| **Claude Desktop** | Download `.mcpb` from [latest release](https://github.com/sbroenne/mcp-server-powerpoint/releases/latest) |
| **Any MCP Client** | Download `mcp-powerpoint.exe` from [latest release](https://github.com/sbroenne/mcp-server-powerpoint/releases/latest) and add to PATH |
| **Details** | 📖 [Full Installation Guide →](https://powerpointmcpserver.dev/installation/) |
**⚠️ Important:** Close any open instances of the target file before automating it — the server
needs exclusive access to the presentation while it's driving PowerPoint.
## 🔧 CLI vs MCP Server
This project provides both a **CLI** and an **MCP Server** interface. Choose based on your use case:
| Interface | Best For | Why |
|-----------|----------|-----|
| **CLI** (`pptcli` / `powerpointcli.exe`) | Coding agents (Copilot, Cursor, Windsurf) + scripting | Single tool, no large schemas — better for cost-sensitive, high-throughput automation. |
| **MCP Server** (`mcp-powerpoint`) | Conversational AI (Claude Desktop, VS Code Chat) | Rich tool discovery, persistent session. Better for interactive, exploratory workflows. |
**Manual installation:**
```powershell
# Primary: Download standalone executables from latest release (no .NET runtime required)
# https://github.com/sbroenne/mcp-server-powerpoint/releases/latest
# - PowerPointMcp-MCP-Server-{version}-windows.zip → extract mcp-powerpoint.exe
# - PowerPointMcp-CLI-{version}-windows.zip → extract powerpointcli.exe
# Secondary: Install via .NET tool (requires .NET 10 runtime)
dotnet tool install --global Sbroenne.PowerPointMcp.McpServer
dotnet tool install --global Sbroenne.PowerPointMcp.CLI
# After installing either way, auto-configure your coding agents:
npx add-mcp "mcp-powerpoint" --name powerpoint-mcp
```
```powershell
# Optional: Install the agent skill for better AI guidance
npx skills add sbroenne/mcp-server-powerpoint --skill powerpoint-mcp
```
> 💡 The VS Code extension installs this skill automatically. Manual `npx skills add` is for other
> MCP clients (Claude Code, Cursor, Windsurf, etc.).
## ⚙️ How It Works - COM Automation & Unified Service Architecture
**PowerPointMcp uses Windows COM automation to control the actual PowerPoint application (not
just `.pptx` files).**
The **MCP Server** and **CLI** are two equal, first-class entry points. Each hosts its own
**PowerPointMcp Service** that manages presentation sessions — the MCP Server runs it
**in-process** (direct calls, no pipe), while the CLI uses a **background daemon** over a named
pipe so sessions persist across CLI invocations:
```
┌──────────────────────┐ ┌──────────────────────┐
│ MCP Server │ │ CLI (pptcli) │
│ (AI assistants) │ │ (coding agents) │
└──────────┬───────────┘ └──────────┬───────────┘
│ in-process │ named pipe →
│ (direct calls) │ background daemon
▼ ▼
┌──────────────────────┐ ┌──────────────────────┐
│ PowerPointMcp │ │ PowerPointMcp │
│ Service │ │ Service │
│ (session mgmt) │ │ (daemon; sessions │
│ │ │ persist across │
│ │ │ CLI invocations) │
└──────────┬───────────┘ └──────────┬───────────┘
▼ ▼
Core Commands Core Commands
▼ ▼
┌──────────────────────┐ ┌──────────────────────┐
│ PowerPointWhat people ask about mcp-server-powerpoint
What is sbroenne/mcp-server-powerpoint?
+
sbroenne/mcp-server-powerpoint is mcp servers for the Claude AI ecosystem. PowerPoint MCP Server & CLI - 18 tools, ~98 operations for AI-powered PowerPoint automation via COM API It has 6 GitHub stars and was last updated today.
How do I install mcp-server-powerpoint?
+
You can install mcp-server-powerpoint by cloning the repository (https://github.com/sbroenne/mcp-server-powerpoint) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.
Is sbroenne/mcp-server-powerpoint safe to use?
+
sbroenne/mcp-server-powerpoint has not been audited yet by our security agent. Review the original repository on GitHub before using it in production.
Who maintains sbroenne/mcp-server-powerpoint?
+
sbroenne/mcp-server-powerpoint is maintained by sbroenne. The last recorded GitHub activity is from today, with 4 open issues.
Are there alternatives to mcp-server-powerpoint?
+
Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.
Deploy mcp-server-powerpoint to your cloud
Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.
Maintain this repo? Add a badge to your README
Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.
[](https://claudewave.com/repo/sbroenne-mcp-server-powerpoint)<a href="https://claudewave.com/repo/sbroenne-mcp-server-powerpoint"><img src="https://claudewave.com/api/badge/sbroenne-mcp-server-powerpoint" alt="Featured on ClaudeWave: sbroenne/mcp-server-powerpoint" width="320" height="64" /></a>More MCP Servers
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
User-friendly AI Interface (Supports Ollama, OpenAI API, ...)
An open-source AI agent that brings the power of Gemini directly into your terminal.
The fastest path to AI-powered full stack observability, even for lean teams.
🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl!
Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface