ppt-word-gen
ppt-word-mcp
AI 기반 편집 가능한 PPTX 및 표준화된 Word 시뮬레이션 테스트 보고서 생성 서비스
단일 경량 서비스가 동일 포트에서 MCP (Model Context Protocol) Server, REST API 및 Web Demo를 제공합니다.
🚀 MCP (Model Context Protocol) 서비스
ppt-word-gen은 표준 MCP 프로토콜(Streamable HTTP 및 STDIO 이중 전송 채널 지원)을 네이티브로 구현하여, 다양한 Agent 클라이언트(예: Claude Code, Claude Desktop, Cursor, Cline, OpenWebUI 등)가 문서 형식 추출, 사용자 확인, 비동기 큐 생성, 의미 기반 다중 라운드 수정 및 안전한 파일 다운로드를 자율적으로 완료할 수 있게 합니다.
1. 클라이언트 연동 설정 (.mcp.json)
프로젝트 루트 디렉터리에 .mcp.json이 내장되어 있어, Agent 도구가 이 디렉터리를 열면 서비스를 자동으로 발견하고 로드합니다.
방식 A: HTTP 전송 모드 (권장, 컨테이너 배포 / LAN 서비스 / 로컬 서비스에 적합)
프로젝트 루트 디렉터리에 .mcp.json을 생성하거나 편집합니다:
{
"mcpServers": {
"ppt-word-gen": {
"type": "http",
"url": "http://127.0.0.1:8000/mcp"
}
}
}서비스에서 Bearer Token 인증을 활성화한 경우(PPT_WORD_GEN_TOKEN 설정), 요청 헤더를 추가할 수 있습니다:
{
"mcpServers": {
"ppt-word-gen": {
"type": "http",
"url": "http://YOUR_SERVER_IP:8000/mcp",
"headers": {
"Authorization": "Bearer ${PPT_WORD_GEN_TOKEN}"
}
}
}
}Claude Code CLI로 원클릭 등록:
# 项目级注册(写入当前目录 .mcp.json)
claude mcp add --transport http --scope project ppt-word-gen http://127.0.0.1:8000/mcp
# 用户全局注册
claude mcp add --transport http --scope user ppt-word-gen http://127.0.0.1:8000/mcp방식 B: STDIO 전송 모드 (로컬에서 HTTP 포트 없이 직접 호출)
클라이언트 설정에서 Python 프로세스를 통해 직접 시작:
{
"mcpServers": {
"ppt-word-gen": {
"command": "python",
"args": ["-m", "ppt_word_gen.mcp_stdio"]
}
}
}2. MCP 핵심 협업 워크플로우
[用户输入 / 来源资料 / 模板]
│
▼
[可选:upload_file / create_upload_ticket 暂存来源文件与 Word 模板]
│
▼
[preview_word_report_format 提取模板默认格式(字体、字号、行距、多级标题、编号规范)]
│
▼
[向用户展示预览并获取确认 ➔ 获得绑定格式哈希的 confirmation_token]
│
▼
[generate_presentation / generate_word_report 发起异步生成任务]
│
▼
[wait_generation_task / get_generation_task 轮询进度状态]
│
▼
[get_artifact 获取 24 小时有效的安全签名 ResourceLink 下载链接]
│
▼
[可选:revise_presentation / revise_word_report 进行多轮语义增量修订]3. MCP 도구 전체 목록 (15개 Tools)
도구 이름 | 기능 설명 | 주요 파라미터 |
| 생성 가능한 문서 유형, 지원 형식 및 바이너리 업로드 규칙 나열 | 없음 |
| 템플릿 기본 형식(또는 내장 템플릿) 추출 및 수정 적용; 형식 정보와 |
|
| 편집 가능한 PPTX 비동기 생성 작업 생성 |
|
| Word 보고서 작업 제출 (반드시 |
|
| PPT 또는 Word 비동기 작업의 단계, 백분율 진행률, 오류 및 산출물 상태 조회 |
|
| 최대 55초 대기, 작업 완료 시 즉시 반환, 타임아웃 시 최신 상태 반환 |
|
| 아직 종료되지 않은 비동기 생성 작업 취소 요청 |
|
| 작업 완료 후 표준 ResourceLink가 포함된 24시간 안전 서명 다운로드 직링크 획득 |
|
| Base64 인라인으로 소형 파일 업로드 (5MB 이하) |
|
| 대용량 파일용 일회성 PUT 업로드 주소 생성 (대용량 콘텐츠가 Agent 컨텍스트를 차지하지 않도록 방지) |
|
| 내장 및 기업 맞춤형 PPT/Word 비즈니스 규범 템플릿 나열 | 없음 |
| 기업 비즈니스 콘텐츠 및 스타일 규범 템플릿 등록 |
|
| 맞춤형 비즈니스 템플릿 삭제 (내장 템플릿은 보호되어 삭제 불가) |
|
| 기존 PPTX를 컨텍스트로 사용하여 자연어 지시에 따라 새 버전 생성 |
|
| 사용자가 형식을 확인한 후 기존 DOCX를 기반으로 증분 생성하여 새 버전 생성 |
|
4. MCP 규칙 및 자산 리소스 (4개 Resources)
Agent는 규범 가이드와 디자인 제약 조건을 직접 읽을 수 있습니다:
ppt-word://rules/workflow: MCP 전체 상호작용 및 형식 확인 규범ppt-word://rules/presentation: PPT Master 디자인 및 레이아웃 규범ppt-word://rules/word-report: 시뮬레이션 및 엔지니어링 Word 보고서 레이아웃 표준ppt-word://templates/catalog: 비즈니스 템플릿 카탈로그 및 규범 빠른 참조
Related MCP server: docforge-mcp
📁 프로젝트 구조
ppt-word-gen/
├── ppt_word_gen/ # Python 核心业务包
│ ├── app.py # FastAPI 入口(Demo、REST API、MCP Streamable HTTP)
│ ├── mcp_server.py # MCP Server 实现(15 工具、4 资源、双向协议)
│ ├── mcp_stdio.py # MCP STDIO 运行入口
│ ├── tasks.py # PPT 异步任务队列与状态机
│ ├── report_tasks.py # Word 异步任务队列与状态机
│ ├── report_agent.py # Word 报告生成 Agent
│ ├── report_documents.py # Word 文档排版、格式继承与 GBK 修复引擎
│ ├── word_format.py # Word 格式解析、修改与防篡改 Token 校验
│ ├── signed_tokens.py # HMAC-SHA256 签名下载与上传票据
│ ├── pptmaster.py # PPT Master 脚本适配与执行
│ ├── upload_store.py # 临时文件上传与生命周期管理
│ ├── task_store.py # SQLite 持久化任务存储
│ └── config.py # 全局配置读取
├── assets/word_templates/ # 内置 Word 模板(CID629 电驱系统联合仿真 v1.5)
├── skills/ai-simulation-report/# 仿真报告标准契约与校验规则
├── static/ # 前端 Web Demo 页面
├── tests/ # 41 项单元测试与集成测试
├── Dockerfile # 容器构建文件(支持联网/离线两种模式)
├── docker-compose.yml # 生产/测试容器编排配置
├── build-overlay.ps1 # 企业级解密与离线 wheel 构建脚本
├── requirements.txt # 依赖清单
├── .env.example # 环境变量参考模板
└── .mcp.json # MCP 配置文件💻 로컬 빠른 시작
1. 의존성 설치 및 테스트 실행
# 安装依赖
python -m pip install -r requirements.txt
# 运行全套 41 项自动化测试
python -m unittest discover -s tests -v2. 서비스 시작
# 启动 HTTP + MCP 服务(默认监听 0.0.0.0:8000)
python -m ppt_word_genWeb Demo 페이지:
http://127.0.0.1:8000/demoOpenAPI 대화형 문서:
http://127.0.0.1:8000/docsMCP HTTP 엔드포인트:
http://127.0.0.1:8000/mcp헬스 체크:
http://127.0.0.1:8000/health
🐳 Docker / WSL 컨테이너 배포
1. 표준 배포
Ubuntu / WSL 터미널에서:
cd /path/to/ppt-word-gen
cp .env.example .env.compose
# 按需修改 .env.compose(接入真实模型时设置 MOCK_LLM=0 并填写 API Key)
sudo service docker start
docker compose --env-file .env.compose up -d --build --wait2. 기업 오프라인 Wheel 빌드
기업 데이터 유출 방지(DLP) 또는 내부망 격리 환경에서 Windows PowerShell에서 실행:
pwsh ./build-overlay.ps1이 스크립트는 파일 스트림을 통해 안전하게 복사하고 OFFLINE_INSTALL=1을 호출하여 로컬 Wheel 오프라인 빌드를 자동으로 수행합니다.
3. 서비스 상태 확인 및 중지
# 查看容器状态与健康指标
docker compose ps
curl http://127.0.0.1:8000/health
# 停止容器(数据保留在 ppt-word-gen-data 卷中)
docker compose stop⚙️ 환경 변수 설명
.env.example을 .env 또는 .env.compose로 복사합니다:
변수명 | 기본값 | 설명 |
|
| OpenAI 호환 인터페이스 Base URL |
| 없음 | 대규모 언어 모델 API Key |
|
| 기본 생성 모델 이름 |
|
|
|
| 비어 있음 | Bearer Token 인증, 비어 있으면 인증 불필요 |
|
| 산출물 다운로드 및 대용량 파일 업로드의 기본 URL (LAN 호출 시 서버 내부 IP로 설정) |
| 비어 있음 (자동 생성) | HMAC 서명 키, 24시간 임시 다운로드 자격 증명 생성에 사용 |
|
| PPT 최대 동시 처리 작업 수 |
|
| Word 최대 동시 처리 작업 수 |
|
| MCP Base64 인라인 업로드 상한 (MB) |
|
| REST / 대용량 파일 Ticket 업로드 상한 (MB) |
🔌 핵심 REST API
요청 메서드 | 경로 | 설명 |
|
| 서비스 헬스 체크 (SQLite 저장소 및 작업 큐 상태 포함) |
|
| 내장 Web 데모 페이지 |
|
| 내장 Word 템플릿 기본 형식 및 확인 Token 획득 |
|
| 맞춤 템플릿 형식 추출, 수정 적용 및 확인 Token 생성 |
|
| Word 시뮬레이션/기술 보고서 생성 작업 제출 |
|
| Word 보고서 작업 진행률 및 상세 조회 |
|
| 생성된 DOCX 보고서 다운로드 |
|
| PPT 프레젠테이션 생성 작업 제출 |
|
| PPT 작업 진행률 및 상세 조회 |
|
| 생성된 PPTX 파일 다운로드 |
|
| 바이너리 소스 파일 또는 템플릿 임시 저장 |
|
| 일회성 대용량 파일 직접 업로드 인터페이스 |
|
| 24시간 HMAC 서명 안전 다운로드 인터페이스 |
|
| MCP Streamable HTTP 프로토콜 엔드포인트 |
📄 오픈소스 라이선스
이 프로젝트는 MIT License를 따릅니다.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
AI document editing for agents: draft, edit, export .docx/PDF. 37 MCP tools; agent self-signup.
OCR, transcription, file extraction, and image generation for AI agents via MCP.
AI presentation and report generation: slides, diagrams, PPTX export, live preview MCP App.
Finished, on-brand .pptx and .docx from a brief - quality-gated by an agentic consulting team.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables creation and editing of Word, Excel, and PowerPoint documents within MCP clients through AI assistants.MIT
- AlicenseBqualityDmaintenanceEnables complete Office document lifecycle management for AI agents, including creation, editing, conversion, and templating of DOCX, XLSX, PPTX, PDF, and EML files.40MIT
- AlicenseAqualityCmaintenanceEnables AI agents to generate real Office documents (.pptx, .docx, .xlsx) and source code from natural language via MCP protocol.4MIT
- AlicenseNot gradedqualityDmaintenanceEnables creation of professional PowerPoint presentations with AI-generated content and images, supporting multiple LLMs and image services via MCP protocol.MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/muli4561/ppt-word-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server