Sbroenne.PowerPointMcp.McpServer 0.1.4

{
  "servers": {
    "Sbroenne.PowerPointMcp.McpServer": {
      "type": "stdio",
      "command": "dnx",
      "args": ["Sbroenne.PowerPointMcp.McpServer@0.1.4", "--yes"]
    }
  }
}
                    
This package contains an MCP Server. The server can be used in VS Code by copying the generated JSON to your VS Code workspace's .vscode/mcp.json settings file.
dotnet tool install --global Sbroenne.PowerPointMcp.McpServer --version 0.1.4
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local Sbroenne.PowerPointMcp.McpServer --version 0.1.4
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=Sbroenne.PowerPointMcp.McpServer&version=0.1.4
                    
nuke :add-package Sbroenne.PowerPointMcp.McpServer --version 0.1.4
                    

MCP Server for PowerPoint

mcp-name: io.github.sbroenne/mcp-server-powerpoint

A Model Context Protocol server that automates Microsoft PowerPoint for AI assistants. It drives a live PowerPoint desktop instance via COM automation, so decks are created and edited exactly as they would be by hand — then exported to images so an AI can visually verify its own work.

Windows only. Requires Microsoft PowerPoint (desktop) to be installed.

Install

dotnet tool install --global Sbroenne.PowerPointMcp.McpServer

This installs the mcp-powerpoint command. Point your MCP client (Claude Desktop, VS Code, GitHub Copilot, etc.) at it over stdio:

{
  "mcpServers": {
    "powerpoint": {
      "command": "mcp-powerpoint"
    }
  }
}

Capabilities

13 tools with 141 operations across 13 domains:

Tool Ops Coverage
presentation 12 create, open, save, close, list, apply-template, get-theme-name, built-in/custom document properties
slide 14 slide lifecycle, solid + gradient backgrounds, sections
shape 36 shape creation, geometry, styling, effects, grouping, naming, hyperlinks
textframe 20 text content, font formatting, alignment, bullets, auto-size
table 12 tables, cell text, row/column edits, cell fill/border, merge
notes 2 set/get speaker notes
layout 4 set/get slide layout
master 10 title/body placeholder fonts, solid + gradient master backgrounds
animation 5 shape effects, transition read/write
image 7 add picture, brightness/contrast, recolor, crop
chart 10 charts, series, chart/axis titles, legend visibility, data replacement
smartart 7 SmartArt insertion and node editing
export 2 export a slide or every slide to images

Every domain is exposed as a single action-dispatch tool taking an action parameter — including presentation. Example MCP calls:

  • presentation(action="create", filePath="C:\\Decks\\demo.pptx")
  • presentation(action="apply-template", sessionId="...", templatePath="C:\\Templates\\brand.potx")
  • chart(action="add-chart", session_id="...", slide_index=2, ...)

How it works

ComInterop (STA thread + OLE message filter) → Core (domain command classes) → PowerPointMcp.Service (shared service layer) → McpServer (stdio host, calling the service in-process) and CLI (talks to the same service via a background named-pipe daemon). Each open presentation is a session identified by a sessionId; tools operate on a session until it is closed.

Licensed under the MIT License.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
0.1.4 87 7/28/2026
0.1.3 88 7/28/2026
0.1.1 116 7/22/2026
0.1.0 141 7/11/2026
0.0.2 115 7/9/2026
0.0.1 100 7/9/2026