MCP Server for PowerPoint について
MCP Server for PowerPointは、Windowsのデスクトップ版Microsoft PowerPointを操作して、プレゼンテーションを作成・編集します。AIアシスタントやスクリプト向けにMCPサーバーとコマンドラインを提供し、PDFや画像への出力による確認にも対応します。
主な機能
- 01プレゼンテーションの作成と編集
- 02スライド、図形、テキストの管理
- 03グラフ、表、メディアの追加
- 04発表者ノートとアニメーションの設定
- 05PDFやスライド画像への出力
活用シーン
- 01素材からプレゼンテーションを作成
- 02レポートのスライドをまとめて更新
- 03画像出力で文字のはみ出しや重なりを確認
MCP 対応
MCP サーバーは、ドメイン別のアクション振り分けツールを通じて、PowerPointの編集、管理、出力機能を MCP クライアントに公開します。Windowsにデスクトップ版PowerPointが必要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
PowerPointMcp — Microsoft PowerPoint 向け MCP サーバーと CLI
AI アシスタントやスクリプトを使って、実際の PowerPoint プレゼンテーションを作成・編集できます。
新しいスライド資料を作成するか、既存の .pptx ファイルを更新できます。Windows にインストールされた Microsoft PowerPoint デスクトップアプリケーションを使って、スライドの追加、テキストや図形の書式設定、グラフや表の作成、画像の挿入、発表者ノートの作成ができます。
作業方法を選べます。 Model Context Protocol サーバー経由で AI アシスタントを接続する、GitHub Copilot Chat と VS Code 拡張機能を使う、またはターミナルコマンドやスクリプトから pptcli を実行できます。パッケージの利用にはデスクトップ版 PowerPoint が必要です。PowerPoint の代わりになるものではありません。
実際の結果を確認できます。 MCP サーバーは、PowerPoint を使ってプレゼンテーションを PDF にエクスポートしたり、スライドを画像としてレンダリングしたりできます。画像を確認できるアシスタントなら、プレゼンテーションを共有する前に、図形の重なり、テキストのはみ出し、レイアウトの問題をチェックできます。
技術要件:
- ⚠️ Windows 専用 — COM 相互運用は Windows に固有です
- ⚠️ PowerPoint 必須 — Microsoft PowerPoint 2016 以降がインストールされている必要があります
- ⚠️ デスクトップ環境 — 実際の PowerPoint プロセスを操作します(サーバー側での処理には対応していません)
ヒント
スプレッドシートも自動化していますか? 姉妹プロジェクトの Excel MCP Server もご覧ください。同じ方法で構築されています。
🎯 できること
17 のドメインにわたる 215 の操作を実行できる 32 個の MCP ツール:
ツール数には読み取り専用のエイリアス 15 個が含まれます。操作数は、それぞれ異なるアクションを 1 回ずつ数えています。
- 🗂️ プレゼンテーション(20 操作) — 新規作成、開く、「名前を付けて保存」、「コピーを保存」、閉じる、セッション一覧の取得、
.potx/.pptxテンプレートのマスター/テーマ/レイアウトの適用、現在のテーマ名の読み取り、PowerPoint の「最終版としてマーク」フラグの読み書き、組み込みおよびカスタムのドキュメントプロパティの読み書き、文字列タグの管理 - 📑 スライド(26 操作) — ライフサイクル、表示/非表示、背景、セクション、コメント、スライドのインポート、文字列タグ
- ▭ 図形(57 操作) — 図形、自由配置および接続されたコネクタ、ワードアート、3D 回転、配置/整列、スタイル設定、グループ化、結合、複製とスライド間コピー、ハイパーリンク、リンクされたアセット、プレースホルダーの編集、文字列タグ
- ✏️ テキストフレーム(22 操作) — テキスト、検索/置換、フォントサイズ/フォント名/フォント色、太字、斜体、下線、配置、箇条書き
- 📊 テーブル(12 操作) — 追加、セルのテキスト、行と列の挿入/削除、セルの塗りつぶし/枠線、セルの結合
- 🗣️ ノート(2 操作) — 発表者ノートの設定/取得
- 🖼️ レイアウト(4 操作) — スライドレイアウトの設定/取得
- 📐 ページ設定(5 操作) — スライドサイズ、最初のスライド番号、フッター、日付/時刻、スライド番号
- ♿ アクセシビリティ(3 操作) — 決定論的な監査と読み上げ順序の管理
- 🎭 マスター(12 操作) — テーマカラー/フォントの確認、スライドマスターのタイトル/本文プレースホルダーのフォント、背景色
- 🎬 アニメーション(5 操作) — 図形の開始/強調/終了効果、スライドの画面切り替え
- 🖼️ 画像(16 操作) — 画像の挿入、調整、トリミング、透明度の設定、圧縮
- 📈 グラフ(16 操作) — グラフの追加、複数系列のデータ、タイトル、凡例、組み込みスタイル、配色スタイル、データテーブル
- 🎧 メディア(2 操作) — 埋め込みまたはリンクされた音声/動画の挿入、ネイティブメディアのメタデータの確認
- 🔀 SmartArt(7 操作) — SmartArt 図の挿入と編集
- 🖼️ エクスポート(3 操作) — 配布および目視確認用に PDF または画像としてエクスポート
- 🎬 カスタムショー(3 操作) — 名前付きカスタムショー:順序を指定したスライドのサブセットを選び、1 つのデッキを異なる対象者向けに再利用できます
各ドメインは、単一のアクションディスパッチツール(例:shape、table、chart、presentation)として公開され、action パラメーターで実行する操作を選択します。すべての操作を公開しながら、AI アシスタント向けのツール一覧を小さく保てます。
📚 機能リファレンス全文 → — すべてのツールと操作の詳細なドキュメント
💬 プロンプトの例
ゼロからデッキを作成する:
- 「Q3 の業績について、タイトルスライドと 3 枚のコンテンツスライドからなる新しいプレゼンテーションを作成し、確認できるよう画像としてエクスポートしてください。」
テーブルとグラフ:
- 「このデータをまとめた 4x3 のテーブルを追加し、その横に棒グラフを追加してください。」
書式設定と図形:
- 「タイトルを太字の青色にして、ロゴを右上隅に移動してください。」
発表者ノート:
- 「各スライドの要点をまとめた発表者ノートを書いてください。」
テンプレートとテーマ:
- 「スライドの内容を失わずに、このデッキに会社のテンプレートを適用してください。」
目視確認:
- 「スライド 3 を画像としてエクスポートし、グラフがテキストボックスに重なっているか教えてください。」
👥 対象ユーザー
最適なユーザー:
- ✅
.pptxデッキの作成や編集が必要な AI アシスタントやコーディングエージェント - ✅ スライドデッキの反復作業(レポート、状況報告用デッキ、テンプレート)を自動化する方
- ✅ 自動編集のたびに、エクスポートして目視確認するチーム
適していないユーザー:
- ❌ サーバーサイド/ヘッドレス処理が必要な方(実際のデスクトップ版 PowerPoint プロセスを操作します)
- ❌ Linux/macOS ユーザー(Windows と PowerPoint のインストールが必要です)
🚀 クイックスタート
| プラットフォーム | インストール |
|---|---|
| VS Code | 拡張機能をインストール(ワンクリックでインストールでき、おすすめです) |
| Claude Desktop | 最新リリースから.mcpbをダウンロードします(Node.js 18+が必要です) |
| 任意のMCPクライアント | npx -y @sbroenne/mcp-server-powerpoint@latestを実行します |
| 詳細 | 📖 インストールガイド全文 → |
⚠️ 重要: 自動操作する対象ファイルが開かれている場合は、インスタンスをすべて閉じてください。PowerPointの操作中、サーバーはプレゼンテーションへの排他的なアクセスを必要とします。
🔧 CLIとMCPサーバーの比較
このプロジェクトでは、CLIとMCPサーバーの両方のインターフェースを提供しています。用途に応じて選択してください。
| インターフェース | 最適な用途 | 理由 |
|---|---|---|
CLI(pptcli / powerpointcli.exe) | コーディングエージェント(Copilot、Cursor、Windsurf)とスクリプト | ツールが1つで、大きなスキーマがありません。コストを重視する、大量処理の自動化に適しています。 |
MCPサーバー(mcp-powerpoint) | 会話型AI(Claude Desktop、VS Code Chat) | 豊富なツール検出機能と永続的なセッションを提供します。対話型で探索的なワークフローに適しています。 |
手動インストール:
# Primary: npm launchers select the matching native x64 or ARM64 Windows runtime
npx -y @sbroenne/mcp-server-powerpoint@latest
npx -y @sbroenne/pptcli@latest --help
# Alternatives: standalone release archives or .NET tools (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
# Optional: Install the agent skill for better AI guidance
npx skills add sbroenne/mcp-server-powerpoint --skill powerpoint-mcp
💡 VS Code拡張機能をインストールすると、このスキルも自動的にインストールされます。手動での
npx skills addは、その他の MCPクライアント(Claude Code、Cursor、Windsurfなど)向けです。
⚙️ 動作の仕組み - COMオートメーションと統合サービスアーキテクチャ
PowerPointMcpはWindows COMオートメーションを使用し、実際のPowerPointアプリケーションを制御します(.pptxファイルだけを操作するわけではありません)。
MCPサーバーとCLIは、同等の第一級エントリーポイントです。それぞれが独自のPowerPointMcpサービスをホストし、プレゼンテーションのセッションを管理します。MCPサーバーはインプロセス(パイプを介さず直接呼び出し)で実行する一方、CLIは名前付きパイプを介してバックグラウンドデーモンを使用するため、CLIの呼び出しをまたいでセッションが維持されます。
┌──────────────────────┐ ┌──────────────────────┐
│ 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
▼ ▼
┌──────────────────────┐ ┌──────────────────────┐
│ PowerPoint COM API │ │ PowerPoint COM API │
│ (PowerPoint. │ │ (PowerPoint. │
│ Application) │ │ Application) │
└──────────────────────┘ └──────────────────────┘
どちらのエントリーポイントも同じCore Commandsコードベースを共有しているため、すべての操作は同じように動作します。ただし、これらは別々のプロセスです。それぞれが独自のPowerPointMcpサービスとPowerPointインスタンスを実行し、ライブセッションを相互に共有することはありません。
主なメリット:
- ✅ 同等の2つのエントリーポイント — MCPサーバーとCLIのどちらからでも、すべての操作が同じように動作します
- ✅ CLIセッションの永続化 — CLIデーモンは複数回の
pptcli呼び出しをまたいでプレゼンテーションを開いたままにするため、呼び出しのたびにファイルを開き直す必要がありません - ✅ インプロセスのMCP呼び出し — MCPサーバーはサービスをインプロセス(パイプなし)で実行し、低レイテンシーの自動化を実現します
- ✅ 実際のPowerPointオートメーション — ファイルの解析だけではなく、COMを介して実際の
PowerPoint.Applicationを操作します - ✅ エクスポートによる検証 — 実際にレンダリングされた画像で、視覚的な変更を都度確認できます
⭐ GitHubスターの推移
認証済みの正確なスター登録時刻から開始し、GitHubの正確な公開スター数に基づいて毎日更新しています。保持するのは日付と件数の集計値のみです。
📋 追加情報
📚 MCP サーバーガイド → | CLI ガイド → | エージェントスキル →
📖 機能リファレンス(完全版) • インストールガイド • 変更履歴 • ネイティブ機能ロードマップ • コントリビューション • セキュリティ • プライバシー
ライセンス: MIT License — LICENSE をご覧ください。
開発に使用したもの: このプロジェクト全体は、GitHub Copilot の AI 支援を使用して開発されました。
謝辞:
- Microsoft PowerPoint Team — 包括的な COM オートメーション API の提供に感謝します
- Model Context Protocol コミュニティ — AI 統合標準の提供に感謝します
- mcp-server-excel — このアーキテクチャとツール群の移植元となった関連プロジェクト
関連プロジェクト
作者によるその他のプロジェクト:
- Excel MCP Server — Power Query、 DAX、VBA、ピボットテーブルを使用した AI による Excel オートメーション
- Windows MCP Server — MCP を使用した AI による Windows オートメーション
- OBS Studio MCP Server — AI による OBS Studio オートメーション
- pytest-skill-engineering — AI エージェント向けの LLM を活用した テストフレームワーク
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。