Skip to main content
Glama
vancealexander

Cross-Platform PowerPoint MCP Server

🎯 Cross-Platform PowerPoint MCP Server

Python 3.10+ License: MIT PyPI version Cross-Platform

A cross-platform PowerPoint automation server that works with Claude Desktop via the Model Context Protocol (MCP). Create, edit, and manage PowerPoint presentations on Windows, macOS, and Linux using AI assistance.

✨ Features

  • 🌍 Cross-platform compatibility (Windows, macOS, Linux)

  • 🎨 Complete PowerPoint automation - Create, edit, save presentations

  • πŸ”„ Intelligent adapter selection - COM API on Windows, python-pptx everywhere else

  • πŸ€– Claude Desktop integration - Control PowerPoint through natural language

  • πŸ“ Rich text manipulation - Add text boxes, update content, set titles

  • 🎭 Advanced techniques support - Perfect for morph transitions and animations

  • πŸ“¦ Easy installation - Available on PyPI

πŸš€ Quick Start

Installation

pip install powerpoint-mcp-server

Platform-specific notes:

  • Windows: Optionally install pywin32 for direct PowerPoint COM API access

  • macOS/Linux: Uses python-pptx library (installed automatically)

Claude Desktop Configuration

Add to your Claude Desktop configuration file:

Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Linux: ~/.config/claude/claude_desktop_config.json

{
  "mcpServers": {
    "powerpoint": {
      "command": "python",
      "args": ["-m", "powerpoint_mcp_server"]
    }
  }
}

πŸ’¬ Usage Examples

Once configured, interact with PowerPoint through Claude Desktop:

πŸ€– What platform am I running on and what PowerPoint adapter is available?

πŸ€– Please create a new PowerPoint presentation with a title slide called "AI-Powered Presentations"

πŸ€– Add a content slide explaining the benefits of cross-platform automation

πŸ€– Save the presentation to ~/Documents/my-ai-presentation.pptx

πŸ”§ Available Functions

Core Operations

  • initialize_powerpoint() - Initialize PowerPoint connection

  • get_platform_info() - Get system and adapter information

  • create_presentation() - Create new presentation

  • open_presentation(path) - Open existing presentation

  • save_presentation(id, path) - Save presentation

  • close_presentation(id) - Close presentation

Slide Management

  • get_slides(presentation_id) - List all slides

  • add_slide(presentation_id, layout_type) - Add new slide

  • get_slide_text(presentation_id, slide_id) - Extract slide text

  • set_slide_title(presentation_id, slide_id, title) - Set slide title

Content Editing

  • add_text_box(presentation_id, slide_id, text, ...) - Add text box

  • update_text(presentation_id, slide_id, shape_id, text) - Update text content

πŸ–₯️ Platform Support

Feature

Windows + PowerPoint

Windows (python-pptx)

macOS

Linux

Create presentations

βœ…

βœ…

βœ…

βœ…

Edit presentations

βœ…

βœ…

βœ…

βœ…

Live PowerPoint control

βœ…

❌

❌

❌

File-based operations

βœ…

βœ…

βœ…

βœ…

Morph transitions*

βœ…

βœ…

βœ…

βœ…

*Morph transitions require PowerPoint Desktop for playback

🎭 Advanced Use Cases

This MCP server is perfect for:

  • AI-assisted presentation creation

  • Batch processing PowerPoint files

  • Cross-platform presentation workflows

  • Advanced animation techniques (liquid masks, morph effects)

  • Automated content generation

  • Educational presentation tools

πŸ—οΈ Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  Claude Desktop │◄──►│  MCP Protocol    │◄──►│   This Server   β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                                         β”‚
                                                         β–Ό
                                               β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                                               β”‚ Platform Detect β”‚
                                               β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                                         β”‚
                                    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                                    β–Ό                    β–Ό                    β–Ό
                          β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                          β”‚ Windows COM API β”‚  β”‚   python-pptx   β”‚  β”‚ Fallback Handlerβ”‚
                          β”‚   (pywin32)     β”‚  β”‚ (Cross-platform)β”‚  β”‚   (No adapter)  β”‚
                          β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸ› οΈ Development

Setup Development Environment

# Clone repository
git clone https://github.com/your-username/powerpoint-mcp-server.git
cd powerpoint-mcp-server

# Create virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install in development mode
pip install -e ".[dev]"

Running Tests

pytest

Building Package

python -m build

πŸ“ Requirements

  • Python 3.10+

  • Claude Desktop client

  • Optional: PowerPoint Desktop (for live control on Windows)

🀝 Contributing

Contributions are welcome! Please see our Contributing Guide.

  1. Fork the repository

  2. Create a feature branch: git checkout -b feature/amazing-feature

  3. Make your changes and add tests

  4. Commit: git commit -m 'Add amazing feature'

  5. Push: git push origin feature/amazing-feature

  6. Open a Pull Request

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgments

πŸ“ž Support


Made with ❀️ for the Claude Desktop community

Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/vancealexander/Powerpoint_MCP_CrossPlatform'

If you have feedback or need assistance with the MCP directory API, please join our Discord server