Google Slides MCP Server

Generate and revise entire decks without opening the Slides editor.

The Slides service is built around the way presentations actually get made by agents: create_presentation starts the deck, batch_update_presentation applies a whole set of text, layout, and styling changes in one request, and get_page targets an individual slide for surgical edits.

render_page_to_image is the underrated tool here: it returns a slide as image content, so an assistant (or the human reviewing its work) can see what the deck looks like rather than reasoning blind about layout.

What you can ask

  • “Turn this outline into a ten-slide deck with a title slide and section headers”
  • “Update the footer and confidentiality notice across the entire presentation”
  • “Render the board deck slides so I can check the flow before the meeting”

All 7 Google Slides MCP tools

Expand any tool for its full parameter list. Tiers control how many tools the server registers: start lean with --tool-tier core and step up to extended or complete when a workflow needs more.

create_presentation Core Create presentations. 1
ParameterDescription
title The title for the new presentation. Defaults to "Untitled Presentation".
get_presentation Core Retrieve presentation details. 5
ParameterDescription
presentation_id requiredThe ID of the presentation to retrieve.
include_speaker_notes Also report each slide's speaker notes and its notes shape ID (needed to edit notes via batch_update_presentation). Defaults to False.
include_geometry Also list each slide's elements with their placement: transform (translate, plus scale/shear when not identity) and intrinsic size, in raw EMU. Set this when adding slides to an existing deck so new elements can match its established margins. Defaults to False.
include_styles Also list each slide's elements with text styling (see get_page). Defaults to False.
raw Return the complete Presentation resource as JSON instead of the summary. Nothing is filtered, so it can be large; prefer get_page with raw=True for one slide. Overrides the other flags.
batch_update_presentation Extended Apply multiple slide updates in one request. 2
ParameterDescription
presentation_id requiredThe ID of the presentation to update.
requests requiredList of update requests to apply.
get_page Extended Retrieve a specific page/slide. 5
ParameterDescription
presentation_id requiredThe ID of the presentation.
page_object_id requiredThe object ID of the page/slide to retrieve.
include_geometry Also report each element's placement: transform (translate, plus scale/shear when not identity) and intrinsic size, in raw EMU. This is the only way to discover an existing deck's margins, gutters, and content area before adding elements. Tables also report column widths, row heights, and cell text. Defaults to False.
include_styles Also report paragraph and run text styling, placeholder linkage, autofit, fill, and outline. Only explicitly set values appear. Useful for proofing font, color, and alignment consistency.
raw Return the complete Page resource as JSON instead of the summary. Use when the summary lacks a field you need. Overrides the other flags.
render_page_to_image Extended Render a slide or notes page to an image and return it as image content. 3
ParameterDescription
presentation_id requiredThe ID of the presentation.
page_object_id requiredThe object ID of the page/slide to render.
size Image width: "SMALL" (200px), "MEDIUM" (800px), "LARGE" (1600px), or "WIDTH2000_PX". Defaults to "MEDIUM", which reads titles and body text; use "LARGE" for tables, chart labels, and footnotes.
list_presentation_comments Complete List all presentation comments, including each comment's anchor so it can be matched to the slide element it refers to. —
manage_presentation_comment Complete Create, reply, and resolve presentation comments. —

Every service in one reference: full API documentation →

OAuth scopes

The server requests only the scopes for the services you enable. In read-only mode it requests just the readonly variants and skips registering write tools entirely.

  • presentations.readonly read decks and render slides to images
  • presentations create and edit presentations

Google Slides MCP questions

Can an AI actually verify what a slide looks like?
Yes. render_page_to_image returns any slide as image content. Multimodal assistants can inspect the rendered slide and fix overflowing text or broken layouts instead of guessing from the JSON structure.
How are bulk edits handled — one request per change?
No. batch_update_presentation accepts many operations in a single request, the same pattern the Slides API itself uses, so restyling a whole deck is one round trip rather than fifty.
Can it participate in deck review?
The Complete tier adds comment tools: list_presentation_comments to read feedback and manage_presentation_comment to reply or resolve, so an agent can close the loop on review notes it has addressed.