PowerPoint MCP 서버
AI 지원을 통해 PowerPoint 프레젠테이션을 제작하고 조작할 수 있는 모델 컨텍스트 프로토콜(MCP) 서버입니다. 이 서버는 AI 모델이 PowerPoint 파일과 상호 작용할 수 있도록 포괄적인 API를 제공하여 고급 서식, 재무 차트 및 데이터 통합을 지원합니다.
특징
프레젠테이션 관리
PowerPoint 프레젠테이션 만들기 및 수정
슬라이드 추가, 삭제 및 수정
작업 공간에서 프레젠테이션 저장 및 로드
템플릿 관리 시스템
요소 작업
슬라이드 요소(텍스트, 도형, 이미지, 차트)에 대한 세부적인 제어
고급 모양 생성 및 스타일링
요소 위치 지정 및 그룹화
모양 사이의 연결선
금융 통합
재무 차트(선형, 막대형, 세로형, 원형, 폭포형 등)를 만듭니다.
비교표 생성
다양한 재무 지표 지원:
수익
EBITDA
이익
자산
형평성
성장률
여백
현재 더미 데이터를 사용하고 있으며 노르웨이 회사 데이터에 Proff API를 통합할 계획입니다.
API 사용자 정의를 통해 다른 금융 데이터 제공자에게 적용 가능
스타일 및 서식
서식 있는 텍스트 형식
모양 스타일(채우기, 그라데이션, 윤곽선)
차트 사용자 정의
배경색 및 효과
Related MCP server: Meeting BaaS MCP Server
설치
저장소를 복제합니다.
지엑스피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 라이선스에 따라 라이선스가 부여되었습니다. 자세한 내용은 라이선스 파일을 참조하세요.
This server cannot be installed
Resources
Looking for Admin?
Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access the admin panel.