HP

hzy5000/ppt_mcp_server

开发工具

本页由 AI 翻译,技术细节请以原文为准。 查看原文

0 stars 12 forks 质量 54 趋势 0MIT

This project provides a PowerPoint automation server that works with Claude Desktop via the Model Control Protocol (MCP).

概览

This project provides a PowerPoint automation server that works with Claude Desktop via the Model Control Protocol (MCP). It allows Claude to interact with Microsoft PowerPoint, enabling tasks like creating presentations, adding slides, modifying content, and more. - Create, open, save, and close PowerPoint presentations - List all open presentations - Get slide information and content - Add new slides with different layouts - Add text boxes to slides - Update text content in shapes - Set slide titles - And more! 3. Configure Claude Desktop: - Open Claude Desktop - Navigate to settings - Configure the MCP server as explained below To configure Claude Desktop to use this MCP server, add the following to your Claude Desktop configuration file, located at %APPDATA%\Claude\claude_desktop_config.json: If you're using a virtual environment or alternative Python executable (like uv): Once configured, you can use Claude Desktop to control PowerPoint.

README

以下为原文 README 节选,完整内容请查看原文。

PowerPoint Automation MCP Server for Claude Desktop

This project provides a PowerPoint automation server that works with Claude Desktop via the Model Control Protocol (MCP). It allows Claude to interact with Microsoft PowerPoint, enabling tasks like creating presentations, adding slides, modifying content, and more.

Features

  • Create, open, save, and close PowerPoint presentations
  • List all open presentations
  • Get slide information and content
  • Add new slides with different layouts
  • Add text boxes to slides
  • Update text content in shapes
  • Set slide titles
  • And more!

Installation

  1. Clone this repository:

  2. Install dependencies:

    uv add fastmcp pywin32
    
  3. Configure Claude Desktop:

    • Open Claude Desktop
    • Navigate to settings
    • Configure the MCP server as explained below

Configuration

To configure Claude Desktop to use this MCP server, add the following to your Claude Desktop configuration file, located at %APPDATA%\Claude\claude_desktop_config.json:

{
  "mcpServers": {
    "ppts": {
      "command": "uv",
      "args": ["run", "path/to/main.py"]
    }
  }
}

If you’re using a virtual environment or alternative Python executable (like uv):

{
  "mcpServers": {
    "ppts": {
      "command": "C:\\Path\\To\\Python\\Scripts\\uv.exe",
      "args": ["run", "C:\\Path\\To\\Project\\main.py"]
    }
  }
}

Usage

Once configured, you can use Claude Desktop to control PowerPoint. Example interactions:

  1. Initialize PowerPoint:

    Could you open PowerPoint for me?
    
  2. Create a new presentation:

    Please create a new PowerPoint presentation.
    
  3. Add a slide:

    Add a new slide to the presentation.
    
  4. Add content:

    Add a text box to slide 1 with the text "Hello World".
    
  5. Save the presentation:

    Save the presentation to C:\Users\username\Documents\presentation.pptx
    

Available Functions

The server provides the following PowerPoint automation functions:

  • initialize_powerpoint(): Connect to PowerPoint and make it visible
  • get_presentations(): List all open presentations
  • open_presentation(path): Open a presentation from a file
  • get_slides(presentation_id): Get all slides in a presentation
  • get_slide_text(presentation_id, slide_id): Get text content of a slide
  • update_text(presentation_id, slide_id, shape_id, text): Update text in a shape
  • save_presentation(presentation_id, path): Save a presentation
  • close_presentation(presentation_id, save): Close a presentation
  • create_presentation(): Create a new presentation
  • add_slide(presentation_id, layout_type): Add a new slide
  • add_text_box(presentation_id, slide_id, text, left, top, width, height): Add a text box
  • set_slide_title(presentation_id, slide_id, title): Set the title of a slide

Requirements

  • Windows with Microsoft PowerPoint installed
  • Python 3.7+
  • Claude Desktop client
在 GitHub 查看完整 README

安装

This server does not publish a one-line install command.

Open the repository installation guide 新手?先看 mcpskill.org 教程 →

配置

{ "mcpServers": { "ppts": { "command": "uv", "args": ["run", "path/to/main.py"] } } }