I built a Google Slides MCP server so AI assistants can work with real presentations. The focus is practical editing: inspect an existing deck, understand its structure, populate a template, adjust the layout, and render slides to check the result.

Read before editing

A presentation can contain dozens of slides and hundreds of decorative elements. Returning every detail on every request creates unnecessary context. The server separates a lightweight slide outline from detailed reads of selected slides.

Text detail provides the element identifiers and content needed for editing. Layout detail adds geometry when the assistant needs to resize or move something. This makes the amount of context depend on the operation.

A complete template workflow

The tools support copying presentations, replacing repeated placeholders, setting text on specific elements, swapping images, formatting text, and duplicating, moving, or deleting slides. Many edits accept batches so a deck can be updated in fewer calls.

Rendering slides to PNG closes the loop: after changing a presentation, the assistant can inspect what it produced instead of assuming a successful API response means the layout looks right.

From public tool to client workflow

The TypeScript server uses mcp-use and Google authentication to expose remote presentation tools. I also adapted it for a private agency workflow through separate instruction files, keeping client-specific templates and guidance outside the public implementation.

Stack: TypeScript, MCP, mcp-use, Google Slides and Drive APIs, OAuth.

Explore the source code on GitHub.