Labsco
MCP SERVER

Deckbuilder

by teknologika

Build a PowerPoint deck from Markdown with YAML frontmatter or from JSON — tables, images with smart cropping, multi-column layouts — in one command.

Slide & Presentation Generation
Summary
Content in, formatting handled — including the images you forgot.

The placeholder-and-crop behaviour is the practical detail: a deck generated from Markdown normally breaks the moment an image path is wrong, and here it degrades into a placeholder instead of failing. The `remap` command is separately useful — it fixes language and font on decks that already exist. Note the maintainer's own warning about production readiness, and that the supported layout library is described as progressive rather than complete.

What it is

A Python library, CLI and MCP server that generates PowerPoint presentations from structured content. You write the content as Markdown with frontmatter or as JSON; it picks the layout, applies the template, and handles the formatting.

What you get
  • A complete presentation generated from JSON or Markdown with YAML frontmatter in a single command
  • Rich text formatting — bold, italic, underline and bold-italic — plus tables with themes, colors and precise column widths, row heights and table sizing
  • Layout recommendations chosen from the content, with a pattern-based architecture you can point at your own templates
  • Image handling that fills gaps: missing images become professional placeholders, with face detection and intelligent composition for cropping, and business-appropriate filters
  • A hierarchical CLI — `deckbuilder template` (analyze, validate, document, enhance, list), `deckbuilder config`, `deckbuilder image` (generate, crop), and `deckbuilder remap` to change language and font in existing PowerPoint files
  • 20 proofing languages, addressable by locale code or full name
Requirements

Python 3.11+. Install with `pip install deckbuilder`, then run `deckbuilder init` once to create the default template and its mapping JSON. For MCP, the client command is `deckbuilder-server` with environment set: `DECK_TEMPLATE_FOLDER`, `DECK_TEMPLATE_NAME`, `DECK_OUTPUT_FOLDER`, `DECK_PROOFING_LANGUAGE` (defaults to Australian English) and `DECK_DEFAULT_FONT`. The package is `deckbuilder` 1.5.2. The README opens with a notice that the project is under active development and should not be considered production ready.

Setup effort

One command — pip install deckbuilder