PowerPoint/Excel

Provides MCP servers to automate PowerPoint and Excel via Python COM automation, enabling AI-driven creation, editing, and data handling.
  • python

26

GitHub Stars

python

Language

6 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "jenstangen1-pptx-mcp": {
      "command": "uv",
      "args": [
        "run",
        "mcp_powerpoint_server_win32.py"
      ]
    }
  }
}

You can run MCP servers to control Microsoft Office apps (PowerPoint and Excel) via AI assistance. These servers expose a programmable interface that lets you create presentations, manipulate slides, read and write Excel data, and perform financial-chart operations by issuing natural language commands through an MCP client.

How to use

To use these MCP servers, you first start the local MCP runners and then connect your MCP client or assistant to the running servers. The two available servers expose endpoints for PowerPoint and Excel interactions through Python COM automation, so you can perform tasks like creating slides, adding text, reading cell values, and generating charts through natural language.

Typical usage flow: start the servers, configure your MCP client to talk to them, and then issue commands such as creating slides, inserting charts, or updating cells. The client will translate your requests into a sequence of MCP actions that the servers execute against running Office applications.

How to install

# Prerequisites
- Windows operating system
- Microsoft Office installed (PowerPoint and/or Excel)
- Python 3.7+
- pywin32 package

# 1) Clone the MCP server repository
git clone https://github.com/jenstangen1/mcp-pptx.git
cd mcp-pptx

# 2) Install dependencies using the runtime helper
uv pip install pywin32

# 3) Run the pywin32 post-install script with administrator privileges
python C:\path\to\your\env\Scripts\pywin32_postinstall.py -install

Configuration for your MCP client

{
  "mcpServers": {
    "powerpoint_mcp_win32": {
      "command": "uv",
      "args": [
        "run",
        "mcp_powerpoint_server_win32.py"
      ],
      "cwd": "C:\\path\\to\\your\\workspace"
    },
    "excel_mcp_win32": {
      "command": "uv",
      "args": [
        "run",
        "mcp_excel_server_win32.py"
      ],
      "cwd": "C:\\path\\to\\your\\workspace"
    }
  }
}

Notes and prerequisites

  • Ensure you have a Windows environment with Microsoft Office installed. PowerPoint and/or Excel should be available for COM automation.
  • Install Python 3.7 or newer and the pywin32 package.
  • Use the provided startup commands exactly as shown to ensure the servers connect to the running Office applications.

Starting and using the servers with your MCP client

  1. Open a terminal and run your MCP startup flow as described above to prepare both servers. 2. Point your MCP client to the two configured server endpoints so that PowerPoint and Excel commands are routed correctly. 3. Begin issuing natural language requests to create slides, modify content, or read and write data in your Office documents.

Additional considerations

  • The PowerPoint server supports creating presentations, slide management, element manipulation, charting (including financial chart options), styling, and template operations. It also includes debugging tools for element mappings and various helper actions.

  • The Excel server supports workbook management, worksheet operations, and cell/range read-write. It can read and write individual cells, ranges, and convert data types as needed.

  • If you encounter COM automation issues, run the post-install script again with administrator privileges and verify Office applications are running and accessible to the COM subsystem.

Security and maintenance

  • Keep your Office applications and Python environment up to date to minimize security risks and ensure compatibility with COM automation.
  • Isolate workspace and credentials, and avoid exposing your MCP endpoints to untrusted networks.
  • Regularly back up your presentations and Excel workbooks as you would with any important files.

Available tools

list_presentations

List all PowerPoint files in the workspace.

upload_presentation

Upload a new presentation to the workspace.

save_presentation

Save the current PowerPoint presentation.

add_slide

Add a new slide to the presentation.

delete_slide

Delete a slide from the presentation.

get_slide_count

Get the total number of slides in the presentation.

analyze_slide

Analyze the content of a slide.

set_background_color

Set the background color of a slide.

add_text

Add text to a slide.

add_shape

Add a shape to a slide.

edit_element

Edit an element's properties.

style_element

Apply styling to an element.

connect_shapes

Connect two shapes with a connector.

find_element

Find slide elements by criteria.

get_company_financials

Get financial data for a company (currently dummy data).

create_financial_chart

Create a financial chart on a slide.

create_comparison_table

Create a comparison table for companies.

list_templates

List available templates.

apply_template

Apply a template to a presentation.

create_slide_from_template

Create a slide from a template.

save_as_template

Save a slide as a template.

debug_element_mappings

Debug tool to inspect element mappings for a slide.

list_open_workbooks

List all currently open Excel workbooks.

save_workbook

Save an Excel workbook to disk.

list_worksheets

List all worksheets in a workbook.

add_worksheet

Add a new worksheet to a workbook.

get_worksheet

Get a worksheet by name or index.

get_cell_value

Read a single cell's value.

set_cell_value

Set a single cell's value.

get_range_values

Read values from a range of cells.

set_range_values

Set values for a range of cells.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational