PowerPoint MCP Server

by jenstangen1

Integrations

  • 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.

PowerPoint MCP 서버

AI 지원을 통해 PowerPoint 프레젠테이션을 제작하고 조작할 수 있는 모델 컨텍스트 프로토콜(MCP) 서버입니다. 이 서버는 AI 모델이 PowerPoint 파일과 상호 작용할 수 있도록 포괄적인 API를 제공하여 고급 서식, 재무 차트 및 데이터 통합을 지원합니다.

특징

프레젠테이션 관리

  • PowerPoint 프레젠테이션 만들기 및 수정
  • 슬라이드 추가, 삭제 및 수정
  • 작업 공간에서 프레젠테이션 저장 및 로드
  • 템플릿 관리 시스템

요소 작업

  • 슬라이드 요소(텍스트, 도형, 이미지, 차트)에 대한 세부적인 제어
  • 고급 모양 생성 및 스타일링
  • 요소 위치 지정 및 그룹화
  • 모양 사이의 연결선

금융 통합

  • 재무 차트(선형, 막대형, 세로형, 원형, 폭포형 등)를 만듭니다.
  • 비교표 생성
  • 다양한 재무 지표 지원:
    • 수익
    • EBITDA
    • 이익
    • 자산
    • 형평성
    • 성장률
    • 여백
  • 현재 더미 데이터를 사용하고 있으며 노르웨이 회사 데이터에 Proff API를 통합할 계획입니다.
  • API 사용자 정의를 통해 다른 금융 데이터 제공자에게 적용 가능

스타일 및 서식

  • 서식 있는 텍스트 형식
  • 모양 스타일(채우기, 그라데이션, 윤곽선)
  • 차트 사용자 정의
  • 배경색 및 효과

설치

  1. 저장소를 복제합니다.

지엑스피1

  1. 종속성 설치:
pip install -r requirements.txt

클로드와 함께 설정

Claude의 인터페이스에 MCP 설치

이 PowerPoint MCP를 Claude와 통합하려면 다음 JSON 구성을 Claude MCP 파일에 추가하세요.

{ "mcpServers": { "powerpoint_mcp": { "command": "uv", "args": [ "--directory", "your directory here", "run", "mcp_powerpoint_server.py" ] } } }

참고: 설치 위치와 일치하도록 디렉토리 경로를 수정해야 할 수도 있습니다.

사용 가능한 MCP 도구

프레젠테이션 관리

  • list_presentations : 작업 공간에 있는 모든 PowerPoint 파일을 나열합니다.
  • upload_presentation : 작업 공간에 새 프레젠테이션을 업로드합니다.
  • save_presentation : 현재 프레젠테이션을 저장합니다.

슬라이드 작업

  • add_slide : 프레젠테이션에 새 슬라이드를 추가합니다.
  • delete_slide : 프레젠테이션에서 슬라이드를 삭제합니다.
  • get_slide_count : 프레젠테이션의 총 슬라이드 수를 가져옵니다.
  • analyze_slide : 슬라이드의 내용을 분석합니다.
  • set_background_color : 슬라이드의 배경색을 설정합니다.

요소 작업

  • add_text : 슬라이드에 텍스트 추가
  • add_shape : 슬라이드에 도형 추가
  • edit_element : 요소의 속성을 편집합니다.
  • style_element : 요소에 스타일을 적용합니다
  • connect_shapes : 커넥터를 사용하여 두 개의 모양을 연결합니다.
  • find_element : 기준에 따라 슬라이드에서 요소 찾기

금융 도구

  • get_company_financials : 회사의 재무 데이터를 가져옵니다(현재는 더미 데이터를 반환합니다)
  • create_financial_chart : 슬라이드에 재무 차트를 만듭니다.
  • create_comparison_table : 회사별 비교표를 생성합니다.

참고: 현재 금융 도구는 더미 데이터를 사용합니다. 향후 버전에서는 Proff API와 통합하여 노르웨이 기업 데이터를 자동으로 가져올 계획입니다. 사용자는 코드를 수정하여 현지 또는 선호하는 금융 데이터 제공업체와 연결할 수 있습니다.

템플릿 작업

  • list_templates : 사용 가능한 모든 템플릿을 나열합니다.
  • apply_template : 프레젠테이션에 템플릿을 적용합니다.
  • create_slide_from_template : 템플릿에서 새 슬라이드를 만듭니다.
  • save_as_template : 슬라이드를 템플릿으로 저장합니다.

디버그 도구

  • debug_element_mappings : 슬라이드의 요소 매핑을 검사하는 디버그 도구

용법

서버 시작

서버를 실행합니다:

python mcp_powerpoint_server.py

서버는 프레젠테이션과 템플릿이 존재하지 않으면 이를 위한 작업 공간 디렉토리를 생성합니다.

기본 작업

# List presentations presentations = mcp.list_presentations() # Create a new slide slide_index = mcp.add_slide(presentation_path, layout_name="Title and Content") # Add text to a slide element_id = mcp.add_text( presentation_path=presentation_path, slide_index=slide_index, text="Hello World", position=[1.0, 1.0], font_size=24 ) # Add a shape shape_id = mcp.add_shape( presentation_path=presentation_path, slide_index=slide_index, shape_type="rectangle", position={"x": 2.0, "y": 2.0}, size={"width": 2.0, "height": 1.0} )

금융 차트

# Create a financial chart chart_id = mcp.create_financial_chart( presentation_path=presentation_path, slide_index=slide_index, chart_type="column", data={ "categories": ["2020", "2021", "2022"], "series": [{ "name": "Revenue", "values": [1000000, 1200000, 1500000] }] }, position={"x": 1.0, "y": 1.0}, size={"width": 6.0, "height": 4.0}, title="Revenue Growth" ) # Create a comparison table table_id = mcp.create_comparison_table( presentation_path=presentation_path, slide_index=slide_index, companies=["Company A", "Company B"], metrics=["revenue", "ebitda", "margin"], position={"x": 1.0, "y": 1.0}, title="Company Comparison" )

템플릿 관리

# List available templates templates = mcp.list_templates() # Apply a template mcp.apply_template( presentation_path=presentation_path, template_name="financial_report", options={ "apply_master": True, "apply_theme": True, "apply_layouts": True } ) # Create a slide from template mcp.create_slide_from_template( presentation_path=presentation_path, template_name="comparison_slide", content={ "title": "Market Analysis", "subtitle": "Q3 2023" } )

디렉토리 구조

pptx-mcp/ ├── mcp_powerpoint_server.py # Main server implementation ├── requirements.txt # Python dependencies ├── presentations/ # Workspace for presentations │ └── templates/ # Template storage └── README.md # This file

종속성

  • python-pptx: PowerPoint 파일 조작
  • 베개: 이미지 처리
  • numpy: 수치 연산
  • MCP SDK: 모델 컨텍스트 프로토콜 구현

기여하다

기여를 환영합니다! 풀 리퀘스트를 제출해 주세요.

특허

이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여되었습니다. 자세한 내용은 라이선스 파일을 참조하세요.

-
security - not tested
F
license - not found
-
quality - not tested

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

AI 모델이 재무 차트, 서식, 템플릿 관리 등의 고급 기능을 사용하여 PowerPoint 프레젠테이션을 만들고 조작할 수 있도록 하는 모델 컨텍스트 프로토콜 서버입니다.

  1. 특징
    1. 프레젠테이션 관리
    2. 요소 작업
    3. 금융 통합
    4. 스타일 및 서식
  2. 설치
    1. 클로드와 함께 설정
      1. Claude의 인터페이스에 MCP 설치
    2. 사용 가능한 MCP 도구
      1. 프레젠테이션 관리
      2. 슬라이드 작업
      3. 요소 작업
      4. 금융 도구
      5. 템플릿 작업
      6. 디버그 도구
    3. 용법
      1. 서버 시작
      2. 기본 작업
      3. 금융 차트
      4. 템플릿 관리
    4. 디렉토리 구조
      1. 종속성
        1. 기여하다
          1. 특허

            Related MCP Servers

            • -
              security
              F
              license
              -
              quality
              A Model Context Protocol server that connects AI assistants like Claude to Notion workspaces, enabling them to view, search, create, and update Notion databases, pages, and content blocks.
              Last updated -
              275
              JavaScript
              • Apple
            • -
              security
              A
              license
              -
              quality
              A 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 -
              43
              Python
              MIT License
              • Linux
              • Apple
            • A
              security
              A
              license
              A
              quality
              A server that enables AI assistants to create and edit PowerPoint presentations with features for adding various slide types, tables, charts, and AI-generated images through Stable Diffusion.
              Last updated -
              11
              1
              Python
              MIT License
              • Apple
              • Linux
            • -
              security
              A
              license
              -
              quality
              A Model Context Protocol server that provides a standardized interface for AI models to access, query, and modify content in Notion workspaces.
              Last updated -
              275
              2
              TypeScript
              MIT License
              • Apple

            View all related MCP servers

            ID: b4ed10vdym