MCP server for semantic presentation operations.
fcp-slides lets LLMs create and edit PowerPoint presentations by describing slide intent -- layouts, shapes, tables, charts, text styling -- and renders it into standard .pptx files. Instead of writing python-pptx code, the LLM works with operations like slide add layout:title, placeholder set title "Q4 Report", and table add 5 4 label:metrics. Built on the FCP framework, powered by python-pptx for serialization.
slides_session('new "Q4 Review"')
slides([
'slide add layout:title',
'placeholder set title "Q4 Business Review"',
'placeholder set subtitle "Prepared by Finance Team"',
'slide add layout:blank',
'table add 5 4 label:metrics x:1in y:1.5in w:8in h:4in',
'table header metrics "Region" "Revenue" "Costs" "Margin"',
'table set metrics 2 1 "North"',
'table set metrics 2 2 "$1.25M"',
'chart add bar label:revenue title:"Revenue by Region" x:1in y:1.5in w:8in h:4.5in',
'notes set "Discuss regional performance trends"',
])
slides_session('save as:./q4_review.pptx')
| Tool | Purpose |
|---|---|
slides(ops) | Batch mutations -- slides, shapes, text, tables, charts, images, styling |
slides_query(q) | Inspect the presentation -- slides, shapes, placeholders, layout info |
slides_session(action) | Lifecycle -- new, open, save, checkpoint, undo, redo |
slides_help() | Full reference card |
Requires Python >= 3.11.
pip install fcp-slides
{
"mcpServers": {
"slides": {
"command": "uv",
"args": ["run", "python", "-m", "fcp_slides"]
}
}
}
3-layer architecture:
MCP Server (Intent Layer)
Parses op strings, dispatches to verb handlers
|
Semantic Model
Thin wrapper around python-pptx Presentation
Slide/shape index, shape refs, undo/redo via byte snapshots
|
Serialization (python-pptx)
Semantic model -> .pptx binary output
Key features:
uv sync
uv run pytest # 70 tests
uv run ruff check # linting
uv run pyright # type checking
MIT
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
npx claudepluginhub os-tack/fcp --plugin fcp-slidesQuery and refactor Rust codebases through intent-level commands
Create and edit draw.io diagrams through intent-level commands
Build regexes via named fragment composition — no raw syntax, no escaping burden
Query and refactor Python codebases through intent-level commands
Generate Terraform HCL through resource declarations
Agent-native PowerPoint manipulation. One CLI (deck.py) lets agents inspect, edit, create, and verify .pptx files through atomic JSON patches — with self-correcting errors, deterministic geometry repair, and built-in visual verification.
End-to-end slide deck creation via RDIV workflow. Requires paperbanana plugin for image generation.
Anthropic's production PowerPoint skill — create and edit .pptx decks. The render layer for board and management packs.
Evidence-based presentation creation with Slidev, enforced design guardrails, and multi-platform diagrams
Build polished, self-contained HTML slide decks from any prompt — keyboard nav, swipe, fullscreen, brand theming. No Keynote or PowerPoint required.
Create polished, professional reveal.js presentations with themes, multi-column layouts, callout boxes, code highlighting, animations, speaker notes, and custom styling. Generates HTML + CSS with no build step required.