Provides integration with GitHub for cloning the repository, allowing users to install the PowerPoint MCP server from version control.
Integrates with NumPy for numerical operations when generating financial charts and data-driven content in PowerPoint presentations.
Built on Python, allowing users to run the server and interact with PowerPoint files through Python commands for creating and manipulating presentations.
Microsoft Office MCP Servers
This repository contains Model Context Protocol (MCP) servers for interacting with Microsoft Office applications through AI assistance. Currently supported applications:
- PowerPoint: Create and manipulate presentations
- Excel: Interact with workbooks and spreadsheets
Both servers use pywin32
for COM automation, allowing direct interaction with running Office applications.
Prerequisites
- Windows operating system
- Microsoft Office installed (PowerPoint and/or Excel)
- Python 3.7+
pywin32
package
Installation
- Clone the repository:
- Install dependencies using
uv
:
- Run the
pywin32
post-install script with administrator privileges:
Setting up with Claude
To integrate these MCP servers with Claude, add the following configuration to your Claude Desktop app settings:
Note: Replace C:\\path\\to\\your\\workspace
with your actual workspace path.
PowerPoint MCP Server
The PowerPoint server provides a comprehensive API for AI models to interact with PowerPoint presentations, supporting advanced formatting, financial charts, and data integration.
Features
Presentation Management
- Create and modify PowerPoint presentations
- Add, delete, and modify slides
- Save and load presentations from workspace
- Template management system
Element Operations
- Fine-grained control over slide elements (text, shapes, images, charts)
- Advanced shape creation and styling
- Element positioning and grouping
- Connector lines between shapes
Financial Integration
- Create financial charts (line, bar, column, pie, waterfall, etc.)
- Generate comparison tables
- Support for various financial metrics:
- Revenue
- EBITDA
- Profit
- Assets
- Equity
- Growth rates
- Margins
- Currently uses dummy data, with plans to integrate Proff API for Norwegian company data
- Adaptable to other financial data providers through API customization
Styling and Formatting
- Rich text formatting
- Shape styling (fills, gradients, outlines)
- Chart customization
- Background colors and effects
Note: You may need to modify the directory path to match your installation location.
Available MCP Tools
Presentation Management
list_presentations
: List all PowerPoint files in the workspaceupload_presentation
: Upload a new presentation to the workspacesave_presentation
: Save the current presentation
Slide Operations
add_slide
: Add a new slide to the presentationdelete_slide
: Delete a slide from the presentationget_slide_count
: Get the total number of slides in the presentationanalyze_slide
: Analyze the content of a slideset_background_color
: Set the background color of a slide
Element Operations
add_text
: Add text to a slideadd_shape
: Add a shape to a slideedit_element
: Edit an element's propertiesstyle_element
: Apply styling to an elementconnect_shapes
: Connect two shapes with a connectorfind_element
: Find elements on a slide based on criteria
Financial Tools
get_company_financials
: Get financial data for a company (currently returns dummy data)create_financial_chart
: Create a financial chart on a slidecreate_comparison_table
: Create a comparison table for companies
Note: The financial tools currently use dummy data. Future versions plan to integrate with the Proff API for automatic fetching of Norwegian company data. Users can modify the code to connect with local or preferred financial data providers.
Template Operations
list_templates
: List all available templatesapply_template
: Apply a template to a presentationcreate_slide_from_template
: Create a new slide from a templatesave_as_template
: Save a slide as a template
Debug Tools
debug_element_mappings
: Debug tool to inspect element mappings for a slide
Usage
Interacting with Claude
Once you've configured the MCP servers in your Claude Desktop app, you can interact with PowerPoint and Excel through natural language commands. Here are some examples:
PowerPoint Examples
Excel Examples
How It Works
- Natural Language Understanding
- Claude interprets your requests and breaks them down into specific actions
- It understands context from previous interactions
- It can handle complex, multi-step operations
- Tool Selection
- Claude automatically selects the appropriate MCP tools for each task
- It can chain multiple tools together for complex operations
- It handles error cases and provides feedback
- Context Management
- Claude maintains context about:
- Currently open files
- Recent operations
- Selected elements
- User preferences
- Claude maintains context about:
- Error Handling
- If an operation fails, Claude will:
- Explain what went wrong
- Suggest alternatives
- Help troubleshoot common issues
- If an operation fails, Claude will:
Best Practices
- Be Specific
- Mention slide numbers when relevant
- Specify exact cell ranges in Excel
- Describe desired formatting clearly
- Complex Operations
- Break down complex requests into steps
- Confirm intermediate results
- Ask for adjustments as needed
- Troubleshooting
- Ensure PowerPoint/Excel is running
- Check file permissions
- Verify COM automation is working
- Run pywin32_postinstall.py if needed
Example Workflows
Creating a Financial Presentation
Analyzing Excel Data
Directory Structure
Dependencies
- python-pptx: PowerPoint file manipulation
- Pillow: Image processing
- numpy: Numerical operations
- MCP SDK: Model Context Protocol implementation
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Excel MCP Server
The Excel server provides tools for interacting with Excel workbooks, worksheets, and cell data through AI assistance.
Features
Workbook Management
- Connect to running Excel instances
- List open workbooks
- Save workbooks with various formats (.xlsx, .xlsm, .xlsb, .xls)
Worksheet Operations
- List worksheets in a workbook
- Add new worksheets
- Access worksheets by name or index
Cell and Range Operations
- Read and write individual cell values
- Get and set values for cell ranges
- Handle various data types (text, numbers, dates, currency)
- Automatic type conversion for dates and currency values
Available MCP Tools
Workbook Management
list_open_workbooks
: List all currently open Excel workbookssave_workbook
: Save a workbook to disk with optional format selection
Worksheet Operations
list_worksheets
: List all worksheets in a workbookadd_worksheet
: Add a new worksheet to a workbookget_worksheet
: Get a worksheet by name or index
Cell and Range Operations
get_cell_value
: Read a single cell's valueset_cell_value
: Set a single cell's valueget_range_values
: Read values from a range of cellsset_range_values
: Set values for a range of cells
Notes
- Both servers require Windows and their respective Microsoft Office applications installed
- The servers interact with running instances of the applications
- COM automation requires proper initialization; run the post-install script if you encounter COM-related errors
- For better constant handling, consider using
makepy
to generate Office constants
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
A Model Context Protocol server that enables AI models to create and manipulate PowerPoint presentations with advanced features like financial charts, formatting, and template management.
Related MCP Servers
- -securityAlicense-qualityA server that enables creating and editing PowerPoint presentations programmatically through the Model Context Protocol, supporting features like adding slides, images, textboxes, charts, and tables.Last updated -841PythonMIT License
MCP Server for Capptofficial
-security-license-qualityA Model Context Protocol server that allows generating outlines and presentations with Cappt.cc, featuring tools to create structured presentations from user input.Last updated -1PythonMIT License- -securityFlicense-qualityA server that provides PowerPoint presentation creation and editing capabilities through the Model Context Protocol, allowing users to create slides, add text, images, shapes and other content programmatically.Last updated -1Python
- -securityAlicense-qualityA Model Context Protocol server that enables AI assistants to control Apple Keynote presentations through AppleScript automation, supporting comprehensive slide creation, management, and content operations.Last updated -11PythonMIT License