> This page is for Workforce.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.merge.dev/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.merge.dev/_mcp/server.

# Google Slides

**Authentication:** OAuth. See [Magic Link](/merge-agent-handler/features/magic-link) for the runtime auth flow, or [Application credentials](/merge-agent-handler/admin-setup/add-oauth-credentials) to bring your own OAuth app.

## Sample use cases

* Generate a 5-slide deck from this PRD using the `Sales` template.
* Find decks in the `Marketing` shared drive last edited in the past 30 days.
* Update the title slide of the `Pitch Deck` to use today's date.

## Available Tools

#### create_image

Insert an image from a URL onto a page. The URL must be publicly accessible.

#### create_video

Insert a video (YouTube or Google Drive) onto a page. Requires video ID and source type.

#### replace_image

Replace an existing image with a new one from a URL. Maintains position and size.

#### create_line

Create a line or connector between two points. Supports straight, bent, and curved lines.

#### create_sheets_chart

Insert a chart from Google Sheets. Requires spreadsheet_id and chart_id. Can be linked or static.

#### create_presentation

Create a new Google Slides presentation with optional title. Returns the presentation ID and metadata.

#### get_presentation

Get a Google Slides presentation by ID. Returns full structure including slides, masters, and layouts.

#### batch_update_presentation

Apply multiple updates atomically to a presentation. Supports 43 request types including slides, shapes, text, tables.

#### create_shape

Create a shape on a page. Supports 100+ shape types including rectangles, arrows, flowchart elements.

#### create_text_box

Create a text box on a page. A text box is a shape optimized for text content with optional initial text.

#### update_shape_properties

Update shape visual properties like fill color, outline, and content alignment.

#### delete_object

Delete any page element (shape, image, table, etc.) by its object ID. This action cannot be undone.

#### create_slide

Create a new slide in a presentation with optional layout and position. Returns the slide object ID.

#### duplicate_slide

Duplicate an existing slide. The copy includes all elements and can be positioned at a specific index.

#### delete_slide

Delete a slide from a presentation by its object ID. This action cannot be undone.

#### update_slides_position

Reorder slides by moving them to a new position. Provide slide IDs in the desired order.

#### get_page

Get detailed information about a specific page including all elements. Works for slides, masters, layouts.

#### get_page_thumbnail

Get a thumbnail image of a page. Returns a URL to download the image (PNG format).

#### create_table

Create a table on a page with specified rows and columns. Use insert_text to add content to cells.

#### insert_table_rows

Insert rows into a table at a specific index. New rows copy structure from adjacent row.

#### insert_table_columns

Insert columns into a table at a specific index. New columns copy structure from adjacent column.

#### delete_table_row

Delete a row from a table by index. Content in the row is removed.

#### delete_table_column

Delete a column from a table by index. Content in the column is removed.

#### merge_table_cells

Merge a rectangular range of table cells. Content is combined into the top-left cell.

#### update_table_cell_properties

Update table cell properties like background color and content alignment.

#### insert_text

Insert text into a shape or table cell at a specific index. Use cell_location for table cells.

#### delete_text

Delete text from a shape or table cell. Specify start_index (inclusive) and end_index (exclusive).

#### replace_all_text

Find and replace all occurrences of text in a presentation. Optional case-sensitivity and page filtering.

#### update_text_style

Apply text formatting like bold, italic, font, size, and color to a text range.

#### update_paragraph_style

Update paragraph formatting like alignment, line spacing, and indentation for a text range.

#### create_paragraph_bullets

Add bullet or numbered list formatting to paragraphs in a text range. Choose from 15 bullet presets.

#### delete_paragraph_bullets

Remove bullet/list formatting from a paragraph text range. Inverse of create_paragraph_bullets. For tables, pass cell_location.

#### group_objects

Group multiple page elements on the same page so they move and transform together. Returns the new group's object ID.

#### refresh_sheets_chart

Refresh a linked Google Sheets chart embedded in the presentation so it reflects the latest data from the source spreadsheet.

#### replace_all_shapes_with_image

Replace every shape whose text matches contains_text with an image. Useful for template-style image fill-in (e.g. }).

#### replace_all_shapes_with_sheets_chart

Replace every shape whose text matches contains_text with a Google Sheets chart. Use linking_mode=LINKED to keep the chart in sync with the source she…

#### ungroup_objects

Ungroup one or more groups, leaving their child elements as standalone elements on the page.

#### update_image_properties

Set an image's outline (color, weight, dash style). Pass at least one outline\_\* property; only fields you set are updated.

#### update_line_properties

Style a line: fill color, weight (points), dash style, and start/end arrowheads. Pass only the fields you want changed.

#### update_page_element_transform

Update a page element's affine transform (position, size, rotation). Applies to shapes, images, text boxes, lines, tables, and groups.

#### update_page_properties

Set a slide's background to a solid color or a stretched image. Pass exactly one of background_fill_color_rgb or background_image_url.

#### update_slide_properties

Update slide-level properties: assign a layout or mark slide as skipped during presentation. Pass at least one of layout_object_id or is_skipped.

#### update_table_border_properties

Style table borders (color, weight, dash) at a position (ALL, OUTER, INNER, TOP, BOTTOM, LEFT, RIGHT, INNER_HORIZONTAL, INNER_VERTICAL).

#### update_table_column_properties

Set the width of one or more table columns in EMU (914400 EMU = 1 inch).

#### update_table_row_properties

Set the minimum height of one or more table rows in EMU (914400 EMU = 1 inch). Rows may grow beyond this if their content requires it.

#### update_video_properties

Update a video's playback options (auto_play, start/end seconds, mute) and outline (color, weight, dash style)

#### update_page_element_alt_text

Set the alt text title and/or description on any page element (shape, image, table, video, line)

#### update_page_elements_z_order

Change the stacking (z-) order of one or more page elements on the same page. Operations: BRING_TO_FRONT, SEND_TO_BACK, BRING_FORWARD, SEND_BACKWARD

#### unmerge_table_cells

Unmerge a previously merged rectangular range of table cells, restoring the individual cells