1. Conduid
  2. Developer Tools
  3. Pptx MCP
MCP server · Developer Tools

Pptx MCP

Create Slides with a simple MCP server using Python PPTX library

Unclaimed Apache-2.0 last commit a year ago devtools
54Fair

Scored 13 days ago · breakdown

About Pptx MCP

Pptx MCP is an MCP server published by samos123 in the Developer Tools category: create Slides with a simple MCP server using Python PPTX library.

The repository has 35 stars and 8 forks, with the last commit a year ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.

Install

From source
git clone https://github.com/samos123/pptx-mcp

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

✦

Ask AI about Pptx MCP

Powered by Claude · Grounded in docs

I know everything about Pptx MCP. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

Static checks derived from the repository 6 days ago. Heuristics on the source, not an audit.

  • ✓README presentThe repository ships documentation.
  • ✓License declaredUsable under a stated license.
  • ✓Tests presentA test suite exists in the repository.
  • ✓Dependencies pinnedA lockfile pins dependency versions.
  • ✓No dynamic code executionSource scan found no eval, dynamic Function, or shell execution.
  • !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.

README

PPTX MCP Server

A FastMCP-powered server for programmatically creating, editing, and rendering PowerPoint (PPTX) presentations. Supports slide creation, text and shape insertion, image embedding, and slide rendering to PNG (with LibreOffice).

Features

  • Create/Clear Presentations: Start new or reset existing PPTX files.
  • Add Slides: Insert slides with customizable layouts.
  • Text & Content: Add titles, content, and custom textboxes to slides.
  • Shapes: Insert a wide variety of PowerPoint shapes (including flowchart elements).
  • Images: Embed images into slides.
  • Slide Description: Get a textual summary of slide contents for verification.
  • Slide Rendering: Render slides as PNG images (requires LibreOffice).
  • Download PPTX: Download the generated presentation file.

Requirements

  • Python 3.12+
  • python-pptx
  • Pillow
  • FastMCP
  • LibreOffice (for slide image rendering; must be installed separately and available in your system PATH)
  • python-dotenv (for development environment configuration)

Installation

  1. Install Python dependencies:

    pip install .
    

    (Installs from pyproject.toml for dependencies)

  2. Optional: Install python-dotenv for development environment variables:

    pip install python-dotenv
    
  3. Install LibreOffice (for image rendering):

    • Linux: sudo pacman -S libreoffice-fresh or sudo apt install libreoffice
    • macOS: brew install --cask libreoffice
    • Windows: Download from libreoffice.org

Usage

Start the server:

python server.py

For development with environment variables:

You can set the server's host and port using environment variables:

  • HOST (default: 127.0.0.1)
  • PORT (default: 8000)

For example, to run on all interfaces and port 9000:

HOST=0.0.0.0 PORT=9000 python server.py

OR

Create/edit the .env file in the project root: For example, to run on all interfaces and port 9000:

HOST=0.0.0.0
PORT=9000

Load the environment variables when starting the server:

python server.py

Or (for development with FastMCP):

fastmcp dev server.py

API Overview

The server exposes tools and resources via FastMCP, including:

  • create_or_clear_presentation(filename)
  • add_slide(filename, layout_index)
  • add_title_and_content(filename, slide_index, title, content)
  • add_textbox(filename, slide_index, text, left_inches, top_inches, width_inches, height_inches, font_size_pt, bold)
  • add_shape(filename, slide_index, shape_type_name, left_inches, top_inches, width_inches, height_inches, text)
  • add_picture(filename, slide_index, image, left_inches, top_inches, width_inches, height_inches)
  • get_slide_content_description(filename, slide_index)
  • get_slide_image(filename, slide_index) (requires LibreOffice)
  • get_pptx_file(filename)

See the code for full parameter details and available shape types.

Presentations & Templates

  • Presentations are saved in the presentations/ directory.
  • You can add your own templates in presentations/templates/.

License

See LICENSE for details.

README fetched from the repository 6 days ago. The original is authoritative.

Questions

About Pptx MCP

How do I install Pptx MCP?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is Pptx MCP safe to use with an AI agent?

Its trust score is 54 out of 100 (fair). It passes 5 of the 6 static security checks run so far; the failures are listed above. It has no ConduID identity yet, so agent calls to it are not receipted.

Is Pptx MCP still maintained?

The last commit was a year ago and 2 open issues. That's long enough that you should check whether the maintainer is responding to issues before depending on it.