/ 디렉터리 / 플레이그라운드 / Office PowerPoint MCP
● 커뮤니티 GongRzhe ⚡ 바로 사용

Office PowerPoint MCP

제작: GongRzhe · GongRzhe/Office-PowerPoint-MCP-Server

Claude로 .pptx 덱을 만드세요 — 슬라이드, 레이아웃, 차트, 이미지, 발표자 노트, 템플릿 인식 삽입까지.

Office PowerPoint MCP는 python-pptx를 래핑하여 Claude에게 PowerPoint 파일에 대한 완전한 제어권을 제공합니다. 아웃라인에서 덱을 생성하고, 템플릿 슬라이드에 데이터를 채우고, 차트와 이미지를 추가하고, 발표자 노트를 작성합니다 — PowerPoint를 직접 열지 않고도 가능합니다. 문서/덱 워크플로우를 위한 Word MCP와 깔끔하게 연동됩니다.

왜 쓰나요

핵심 기능

라이브 데모

실제 사용 모습

office-powerpoint-mcp.replay ▶ 준비됨
0/0

설치

클라이언트 선택

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "office-powerpoint-mcp": {
      "command": "uvx",
      "args": [
        "--from",
        "office-powerpoint-mcp-server",
        "ppt_mcp_server"
      ]
    }
  }
}

Claude Desktop → Settings → Developer → Edit Config 열기. 저장 후 앱 재시작.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "office-powerpoint-mcp": {
      "command": "uvx",
      "args": [
        "--from",
        "office-powerpoint-mcp-server",
        "ppt_mcp_server"
      ]
    }
  }
}

Cursor는 Claude Desktop과 동일한 mcpServers 스키마 사용. 프로젝트 설정이 전역보다 우선.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "office-powerpoint-mcp": {
      "command": "uvx",
      "args": [
        "--from",
        "office-powerpoint-mcp-server",
        "ppt_mcp_server"
      ]
    }
  }
}

Cline 사이드바의 MCP Servers 아이콘 클릭 후 "Edit Configuration" 선택.

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "office-powerpoint-mcp": {
      "command": "uvx",
      "args": [
        "--from",
        "office-powerpoint-mcp-server",
        "ppt_mcp_server"
      ]
    }
  }
}

Claude Desktop과 같은 형식. Windsurf 재시작 후 적용.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "office-powerpoint-mcp",
      "command": "uvx",
      "args": [
        "--from",
        "office-powerpoint-mcp-server",
        "ppt_mcp_server"
      ]
    }
  ]
}

Continue는 맵이 아닌 서버 오브젝트 배열 사용.

~/.config/zed/settings.json
{
  "context_servers": {
    "office-powerpoint-mcp": {
      "command": {
        "path": "uvx",
        "args": [
          "--from",
          "office-powerpoint-mcp-server",
          "ppt_mcp_server"
        ]
      }
    }
  }
}

context_servers에 추가. 저장 시 Zed가 핫 리로드.

claude mcp add office-powerpoint-mcp -- uvx --from office-powerpoint-mcp-server ppt_mcp_server

한 줄 명령. claude mcp list로 확인, claude mcp remove로 제거.

사용 사례

실전 활용법: Office PowerPoint MCP

Markdown 아웃라인을 완성도 높은 슬라이드 덱으로 변환

👤 연구, 현황 보고, 피칭을 발표하는 모든 사람 ⏱ ~30 min beginner

언제 쓸까: 메모나 문서가 있고 내일 아침까지 슬라이드가 필요할 때.

사전 조건
  • 소스 아웃라인 — H1/H2 계층이 있는 Markdown 파일
흐름
  1. 베이스 템플릿 선택
    Use ppt-mcp. Open ~/templates/corporate.pptx and list the available layouts.✓ 복사됨
    → 레이아웃 목록 (Title Slide, Section Header, Content, Two Content)
  2. 아웃라인을 슬라이드에 매핑
    Read outline.md. Each H1 is a section header slide; each H2 is a content slide. Bullet content under each H2.✓ 복사됨
    → 계획 요약: N개 섹션 헤더, M개 콘텐츠 슬라이드
  3. 렌더링 및 검토
    Build the deck and save as deck-2026-04-27.pptx. Then read back the slide count and titles for sanity check.✓ 복사됨
    → 덱 저장, 제목이 아웃라인과 일치

결과: 빈 슬라이드에서 시작하는 대신 PowerPoint에서 정제할 준비가 된 덱.

함정
  • 커스텀 템플릿이 비표준 레이아웃 이름 사용 — 먼저 레이아웃을 나열하고, 이름이 모호하면 인덱스로 매핑
함께 쓰기: office-word-mcp

데이터에서 차트를 생성하고 덱에 삽입

👤 분기별 보고서를 갱신하는 분석가 ⏱ ~25 min intermediate

언제 쓸까: 숫자는 매 분기 변경되고 형식은 고정되어 있을 때.

사전 조건
  • CSV 또는 인라인 형태의 소스 데이터 — Claude가 읽을 수 있는 모든 표 형식
흐름
  1. 지표별 차트 유형 선택
    From q1-data.csv, decide chart type per metric (revenue → bar, growth-rate → line, segment-mix → pie).✓ 복사됨
    → 지표별 매핑
  2. 네이티브 오브젝트로 차트 삽입
    Add each chart on its own slide with the metric name as title. Use the Two Content layout.✓ 복사됨
    → 네이티브 차트 오브젝트 (PowerPoint에서 편집 가능), 비트맵 아님

결과: 덱에 편집 가능한 차트; 수신자가 드릴인 가능.

함정
  • 소스 변경 시 차트 데이터가 업데이트되지 않음 — 매 분기 생성기 재실행; 차트는 .pptx에 베이크됨

내용을 기반으로 모든 슬라이드에 발표자 노트 추가

👤 슬라이드별 스크립트가 필요한 발표자 ⏱ ~20 min beginner

언제 쓸까: 처음 발표하는 경우로 슬라이드별 스크립트가 필요할 때.

흐름
  1. 슬라이드 내용 읽기
    Open the deck. For each slide, extract the visible bullets.✓ 복사됨
    → 슬라이드별 내용 목록
  2. 노트 생성
    Write 60-second speaker notes per slide. Conversational, no jargon. Save into the speaker-notes pane.✓ 복사됨
    → 모든 슬라이드의 노트 창 채워짐

결과: 발표 스크립트로도 활용되는 덱.

조합

다른 MCP와 조합해 10배 효율

office-powerpoint-mcp + office-word-mcp

하나의 소스에서 매칭 보고서와 덱 생성

Build the long-form .docx via word-mcp, then generate the executive readout .pptx via ppt-mcp from the same outline.✓ 복사됨
office-powerpoint-mcp + filesystem

덱 렌더링 전 디스크에서 소스 데이터 읽기

Read q1-data.csv via filesystem, then build the deck with charts.✓ 복사됨

도구

이 MCP가 노출하는 것

도구입력언제 호출비용
create_presentation filename, template_path? 새 덱 시작 0
add_slide filename, layout_name 새 슬라이드마다 0
set_slide_title filename, slide_index, title 제목 플레이스홀더 채우기 0
add_text_box filename, slide_index, text, x, y, w, h 커스텀 텍스트 오버레이 0
add_chart filename, slide_index, type, data, position 데이터 시각화 0
add_image filename, slide_index, image_path, x, y 이미지 배치 0
set_speaker_notes filename, slide_index, text 슬라이드별 발표자 준비 0

비용 및 제한

운영 비용

API 쿼터
해당 없음 — 로컬
호출당 토큰
호출당 100~600
금액
무료 (MIT)
전체 덱 계획을 한 프롬프트에 담는 대신 슬라이드별로 빌드

보안

권한, 시크릿, 파급범위

최소 스코프: filesystem-read filesystem-write
자격 증명 저장: 없음
데이터 외부 송신: 없음

문제 해결

자주 발생하는 오류와 해결

레이아웃을 찾을 수 없음

레이아웃 이름은 템플릿마다 다름; 먼저 list_layouts로 정확한 이름 열거

차트가 비어 보임

python-pptx는 XML 차트 참조를 사용; 기본 스프레드시트 데이터가 비어있지 않은지 확인

이미지가 슬라이드에 비해 너무 큼

EMU 단위로 명시적인 width/height 전달; pptx.util.Inches() 헬퍼 사용

대안

Office PowerPoint MCP 다른 것과 비교

대안언제 쓰나단점/장점
Office Word MCP덱이 아닌 문서가 필요할 때다른 표면, 같은 개발자
Excel MCP Server순수 표 형식 데이터일 때Excel은 분석용, PPT는 내러티브용

더 보기

리소스

📖 GitHub에서 공식 README 읽기

🐙 열린 이슈 보기

🔍 400+ MCP 서버 및 Skills 전체 보기