vancealexander/Powerpoint_MCP_CrossPlatform
If you are the rightful owner of Powerpoint_MCP_CrossPlatform and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
The Cross-Platform PowerPoint MCP Server enables automation of PowerPoint presentations across Windows, macOS, and Linux using the Model Context Protocol (MCP) and integrates with Claude Desktop for AI-assisted operations.
π― Cross-Platform PowerPoint MCP Server
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 connectionget_platform_info()
- Get system and adapter informationcreate_presentation()
- Create new presentationopen_presentation(path)
- Open existing presentationsave_presentation(id, path)
- Save presentationclose_presentation(id)
- Close presentation
Slide Management
get_slides(presentation_id)
- List all slidesadd_slide(presentation_id, layout_type)
- Add new slideget_slide_text(presentation_id, slide_id)
- Extract slide textset_slide_title(presentation_id, slide_id, title)
- Set slide title
Content Editing
add_text_box(presentation_id, slide_id, text, ...)
- Add text boxupdate_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 .
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature
- Make your changes and add tests
- Commit:
git commit -m 'Add amazing feature'
- Push:
git push origin feature/amazing-feature
- Open a Pull Request
π License
This project is licensed under the MIT License - see the file for details.
π Acknowledgments
- Model Context Protocol (MCP) - Communication protocol
- python-pptx - Cross-platform PowerPoint library
- pywin32 - Windows COM API access
- Claude Desktop - AI-powered automation platform
π Support
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Documentation: Project Wiki
Made with β€οΈ for the Claude Desktop community