MCP Reference: slidesmcp.googleapis.com

Tools for Google Slides.

A Model Context Protocol (MCP) server acts as a proxy between an external service that provides context, data, or capabilities to a Large Language Model (LLM) or AI application. MCP servers connect AI applications to external systems such as databases and web services, translating their responses into a format that the AI application can understand.

MCP Tools

An MCP tool is a function or executable capability that an MCP server exposes to a LLM or AI application to perform an action in the real world.

Tools

The slidesmcp.googleapis.com MCP server has the following tools:

MCP Tools
read_presentation

Read a JSON representation of a Google Slides presentation.

Corresponds to presentations.get in the REST API.

read_slide_page

Read a JSON representation of a single slide/page from a Google Slides presentation.

Corresponds to presentations.pages.get in the REST API.

read_slide_page_thumbnail

Reads a thumbnail representation of a single slide page in a presentation, returning the thumbnail image URL along with its width and height dimensions.

Corresponds to presentations.pages.getThumbnail in the REST API.

update_presentation

Updates a presentation with set of batchUpdate requests.

Corresponds to presentations.batchUpdate in the REST API.

The list of possible updates is:

  • createSlide: Creates a new slide. Schema:
    • objectId (string, optional): A user-supplied object ID. Must be unique if specified (5-50 characters, matching [a-zA-Z0-9_-:]). If omitted, an ID is generated.
    • insertionIndex (integer, optional): Zero-based index indicating where to insert the slide. If omitted, inserted at the end.
    • slideLayoutReference (object, optional): Layout reference of the slide to insert (exactly one required if specified):
    • predefinedLayout (string): Predefined layout name (e.g. "BLANK", "TITLE_AND_BODY", "TITLE", "SECTION_HEADER", "SECTION_TITLE_AND_DESCRIPTION", "ONE_COLUMN_TEXT", "MAIN_POINT", "BIG_NUMBER", "TITLE_AND_TWO_COLUMNS").
    • layoutId (string): Layout ID from the current master.
    • placeholderIdMappings (array of objects, optional): Mappings for placeholders from layout to slide. Each item:
    • layoutPlaceholder (object): {"type": string, "index": integer}.
    • objectId (string, required): User-supplied object ID for the placeholder element.
  • createShape: Creates a new shape. Schema:
    • objectId (string, optional): A user-supplied object ID. If omitted, an ID is generated.
    • elementProperties (object, required): Element location and sizing:
    • pageObjectId (string, required): Object ID of the page where the shape is located.
    • size (object, optional): {"width": {"magnitude": number, "unit": string}, "height": {"magnitude": number, "unit": string}} (unit: "PT" or "EMU").
    • transform (object, optional): AffineTransform {"scaleX": number, "scaleY": number, "shearX": number, "shearY": number, "translateX": number, "translateY": number, "unit": string}.
    • shapeType (string, required): Type of shape (e.g. "RECTANGLE", "ROUND_RECTANGLE", "ELLIPSE", "TEXT_BOX", "LINE", etc.).
  • createTable: Creates a new table. Schema:
    • objectId (string, optional): A user-supplied object ID. If omitted, an ID is generated.
    • elementProperties (object, required): Element location and sizing:
    • pageObjectId (string, required): Object ID of the page where the table is located.
    • size (object, optional): {"width": {"magnitude": number, "unit": string}, "height": {"magnitude": number, "unit": string}}.
    • transform (object, optional): AffineTransform {"scaleX": number, "scaleY": number, "shearX": number, "shearY": number, "translateX": number, "translateY": number, "unit": string}.
    • rows (integer, required): Number of rows in the table.
    • columns (integer, required): Number of columns in the table.
  • insertText: Inserts text into a shape or table cell. Schema:
    • objectId (string, required): Object ID of the shape or table.
    • cellLocation (object, optional): Table cell if inserting into table: {"rowIndex": integer, "columnIndex": integer}.
    • text (string, required): Text to insert.
    • insertionIndex (integer, optional): Zero-based character index where text will be inserted. Defaults to 0.
  • insertTableRows: Inserts rows into a table. Schema:
    • tableObjectId (string, required): Object ID of the table.
    • cellLocation (object, required): Reference cell location: {"rowIndex": integer, "columnIndex": integer}.
    • insertBelow (boolean, required): Whether to insert new rows below the reference cell.
    • number (integer, required): Number of rows to insert (maximum 20).
  • insertTableColumns: Inserts columns into a table. Schema:
    • tableObjectId (string, required): Object ID of the table.
    • cellLocation (object, required): Reference cell location: {"rowIndex": integer, "columnIndex": integer}.
    • insertRight (boolean, required): Whether to insert new columns to the right of the reference cell.
    • number (integer, required): Number of columns to insert (maximum 20).
  • deleteTableRow: Deletes a row from a table. Schema:
    • tableObjectId (string, required): Object ID of the table.
    • cellLocation (object, required): Reference cell location: {"rowIndex": integer, "columnIndex": integer}. Deletes the row containing this cell.
  • deleteTableColumn: Deletes a column from a table. Schema:
    • tableObjectId (string, required): Object ID of the table.
    • cellLocation (object, required): Reference cell location: {"rowIndex": integer, "columnIndex": integer}. Deletes the column containing this cell.
  • replaceAllText: Replaces all instances of specified text. Schema:
    • replaceText (string, required): Replacement text.
    • containsText (object, required): Criteria for matching text:
    • text (string, required): Text to search for.
    • matchCase (boolean, optional): Whether search is case-sensitive.
    • pageObjectIds (array of strings, optional): If specified, limits replacement to elements on these pages.
  • deleteObject: Deletes a page or page element from the presentation. Schema:
    • objectId (string, required): Object ID of the page or page element to delete.
  • updatePageElementTransform: Updates the transform of a page element. Schema:
    • objectId (string, required): Object ID of the page element to update.
    • transform (object, required): AffineTransform {"scaleX": number, "scaleY": number, "shearX": number, "shearY": number, "translateX": number, "translateY": number, "unit": string}.
    • applyMode (string, required): Transform apply mode: "RELATIVE" or "ABSOLUTE".
  • updateSlidesPosition: Updates the position of a set of slides in the presentation. Schema:
    • slideObjectIds (array of strings, required): Object IDs of the slides to move.
    • insertionIndex (integer, required): Zero-based index where slides will be inserted.
  • deleteText: Deletes text from a shape or a table cell. Schema:
    • objectId (string, required): Object ID of the shape or table.
    • cellLocation (object, optional): Table cell if deleting from table: {"rowIndex": integer, "columnIndex": integer}.
    • textRange (object, optional): {"startIndex": integer, "endIndex": integer, "type": string}. If omitted, all text is deleted.
  • createImage: Creates an image. Schema:
    • objectId (string, optional): A user-supplied object ID. If omitted, an ID is generated.
    • url (string, required): URL of the image to fetch and store. Must be publicly accessible.
    • elementProperties (object, required): Element location and sizing:
    • pageObjectId (string, required): Object ID of the page where the image will be placed.
    • size (object, optional): {"width": {"magnitude": number, "unit": string}, "height": {"magnitude": number, "unit": string}}.
    • transform (object, optional): AffineTransform {"scaleX": number, "scaleY": number, "shearX": number, "shearY": number, "translateX": number, "translateY": number, "unit": string}.
  • createVideo: Creates a video. Schema:
    • objectId (string, optional): A user-supplied object ID. If omitted, an ID is generated.
    • source (string, required): Video source: "YOUTUBE" or "DRIVE".
    • id (string, required): Video ID (e.g. YouTube video ID).
    • elementProperties (object, required): Element location and sizing:
    • pageObjectId (string, required): Object ID of the page where the video will be placed.
    • size (object, optional): {"width": {"magnitude": number, "unit": string}, "height": {"magnitude": number, "unit": string}}.
    • transform (object, optional): AffineTransform {"scaleX": number, "scaleY": number, "shearX": number, "shearY": number, "translateX": number, "translateY": number, "unit": string}.
  • createSheetsChart: Creates an embedded Google Sheets chart. Schema:
    • objectId (string, optional): A user-supplied object ID. If omitted, an ID is generated.
    • spreadsheetId (string, required): ID of the Google Sheets spreadsheet containing the chart.
    • chartId (integer, required): ID of the specific chart in the spreadsheet.
    • linkingMode (string, required): Linking mode: "LINKED" or "NOT_LINKED_IMAGE".
    • elementProperties (object, required): Element location and sizing:
    • pageObjectId (string, required): Object ID of the page where the chart will be placed.
    • size (object, optional): {"width": {"magnitude": number, "unit": string}, "height": {"magnitude": number, "unit": string}}.
    • transform (object, optional): AffineTransform {"scaleX": number, "scaleY": number, "shearX": number, "shearY": number, "translateX": number, "translateY": number, "unit": string}.
  • createLine: Creates a line. Schema:
    • objectId (string, optional): A user-supplied object ID. If omitted, an ID is generated.
    • elementProperties (object, required): Element location and sizing:
    • pageObjectId (string, required): Object ID of the page where the line will be placed.
    • size (object, optional): {"width": {"magnitude": number, "unit": string}, "height": {"magnitude": number, "unit": string}}.
    • transform (object, optional): AffineTransform {"scaleX": number, "scaleY": number, "shearX": number, "shearY": number, "translateX": number, "translateY": number, "unit": string}.
    • category (string, required): Line category: "STRAIGHT", "BENT", or "CURVED".
  • refreshSheetsChart: Refreshes a Google Sheets chart. Schema:
    • objectId (string, required): Object ID of the chart to refresh.
  • updateShapeProperties: Updates the properties of a Shape. Schema:
    • objectId (string, required): Object ID of the shape to update.
    • shapeProperties (object, required): Shape properties to update:
    • shapeBackgroundFill (object, optional): {"solidFill": {"color": {"rgbColor": {"red": number, "green": number, "blue": number}}}}.
    • outline (object, optional): {"outlineFill": {"solidFill": ...}, "weight": {"magnitude": number, "unit": string}, "dashStyle": string}.
    • shadow (object, optional): Shadow properties.
    • link (object, optional): Hyperlink destination: {"url": string}.
    • fields (string, required): Comma-separated list of fields to update (e.g. "shapeBackgroundFill" or "*").
  • updateImageProperties: Updates the properties of an Image. Schema:
    • objectId (string, required): Object ID of the image to update.
    • imageProperties (object, required): Image properties to update:
    • cropProperties (object, optional): Crop offsets: {"leftOffset": number, "rightOffset": number, "topOffset": number, "bottomOffset": number, "angle": number}.
    • transparency (number, optional): Transparency level (0.0 to 1.0).
    • brightness (number, optional): Brightness adjustment (-1.0 to 1.0).
    • contrast (number, optional): Contrast adjustment (-1.0 to 1.0).
    • recolor (object, optional): Recolor effect.
    • shadow (object, optional): Shadow properties.
    • outline (object, optional): Outline properties.
    • link (object, optional): Hyperlink destination: {"url": string}.
    • fields (string, required): Comma-separated list of fields to update (e.g. "transparency,brightness" or "*").
  • updateVideoProperties: Updates the properties of a Video. Schema:
    • objectId (string, required): Object ID of the video to update.
    • videoProperties (object, required): Video properties to update:
    • outline (object, optional): Outline properties.
    • autoPlay (boolean, optional): Whether to play video automatically when presenting.
    • start (integer, optional): Start time in seconds.
    • end (integer, optional): End time in seconds.
    • mute (boolean, optional): Whether audio is muted.
    • fields (string, required): Comma-separated list of fields to update (e.g. "autoPlay,mute" or "*").
  • updatePageProperties: Updates the properties of a Page. Schema:
    • objectId (string, required): Object ID of the page to update.
    • pageProperties (object, required): Page properties to update:
    • pageBackgroundFill (object, optional): {"solidFill": {"color": {"rgbColor": {"red": number, "green": number, "blue": number}}}} or {"stretchedPictureFill": {"contentUrl": string}}.
    • colorScheme (object, optional): Theme color scheme.
    • fields (string, required): Comma-separated list of fields to update (e.g. "pageBackgroundFill" or "*").
  • updateTableCellProperties: Updates the properties of a TableCell. Schema:
    • objectId (string, required): Object ID of the table.
    • tableRange (object, optional): Subset of table cells to update: {"location": {"rowIndex": integer, "columnIndex": integer}, "rowSpan": integer, "columnSpan": integer}. If omitted, applies to all cells.
    • tableCellProperties (object, required): Cell properties to update:
    • tableCellBackgroundFill (object, optional): {"solidFill": {"color": {"rgbColor": {"red": number, "green": number, "blue": number}}}}.
    • contentAlignment (string, optional): Vertical alignment: "TOP", "MIDDLE", "BOTTOM".
    • fields (string, required): Comma-separated list of fields to update (e.g. "tableCellBackgroundFill" or "*").
  • updateLineProperties: Updates the properties of a Line. Schema:
    • objectId (string, required): Object ID of the line to update.
    • lineProperties (object, required): Line properties to update:
    • lineFill (object, optional): {"solidFill": {"color": {"rgbColor": {"red": number, "green": number, "blue": number}}}}.
    • weight (object, optional): Line thickness: {"magnitude": number, "unit": string}.
    • dashStyle (string, optional): Dash style: "SOLID", "DOT", "DASH", "DASH_DOT", "LONG_DASH", "LONG_DASH_DOT".
    • startArrow (string, optional): Start arrow style: "NONE", "STEALTH_ARROW", "FILL_ARROW", "FILL_CIRCLE", "FILL_SQUARE", "FILL_DIAMOND", "OPEN_ARROW", "OPEN_CIRCLE", "OPEN_SQUARE", "OPEN_DIAMOND".
    • endArrow (string, optional): End arrow style (same options as startArrow).
    • link (object, optional): Hyperlink destination: {"url": string}.
    • fields (string, required): Comma-separated list of fields to update (e.g. "lineFill,weight" or "*").
  • createParagraphBullets: Creates bullets for paragraphs. Schema:
    • objectId (string, required): Object ID of the shape or table.
    • cellLocation (object, optional): Table cell if text is in a table: {"rowIndex": integer, "columnIndex": integer}.
    • textRange (object, optional): Range of text to bullet: {"startIndex": integer, "endIndex": integer, "type": string}.
    • bulletPreset (string, optional): Bullet style preset (e.g. "BULLET_DISC_CIRCLE_SQUARE", "BULLET_DIAMONDX_ARROW3D_SQUARE", "NUMBERED_DIGIT_ALPHA_ROMAN", "NUMBERED_DIGIT_NESTED"). Defaults to "BULLET_DISC_CIRCLE_SQUARE".
  • replaceAllShapesWithImage: Replaces all shapes matching some criteria with an image. Schema:
    • imageUrl (string, required): Image URL to fetch and insert.
    • imageReplaceMethod (string, optional): Replacement method: "CENTER_INSIDE" (default) or "CENTER_CROP".
    • containsText (object, required): Criteria shapes must match:
    • text (string, required): Text to search for in shapes.
    • matchCase (boolean, optional): Whether search is case-sensitive.
    • pageObjectIds (array of strings, optional): If specified, limits replacement to elements on these pages.
  • duplicateObject: Duplicates a slide or page element. Schema:
    • objectId (string, required): Object ID of the slide or element to duplicate.
    • objectIds (object, optional): ID mapping for duplicated elements: {"originalObjectId": "newObjectId"}. If omitted, random IDs are assigned.
  • updateTextStyle: Updates the styling of text within a Shape or Table. Schema:
    • objectId (string, required): Object ID of the shape or table.
    • cellLocation (object, optional): Table cell if text is in a table: {"rowIndex": integer, "columnIndex": integer}.
    • style (object, required): Text styling properties:
    • bold (boolean, optional): Whether text is bold.
    • italic (boolean, optional): Whether text is italic.
    • fontFamily (string, optional): Font family (e.g. "Arial", "Roboto").
    • fontSize (object, optional): Font size: {"magnitude": number, "unit": string}.
    • foregroundColor (object, optional): Font color: {"opaqueColor": {"rgbColor": {"red": number, "green": number, "blue": number}}}.
    • backgroundColor (object, optional): Text background color: {"opaqueColor": ...}.
    • underline (boolean, optional): Whether text is underlined.
    • strikethrough (boolean, optional): Whether text has a strikethrough.
    • smallCaps (boolean, optional): Whether text is rendered in small capital letters.
    • baselineOffset (string, optional): "NONE", "SUPERSCRIPT", or "SUBSCRIPT".
    • link (object, optional): Hyperlink destination: {"url": string}.
    • textRange (object, optional): Range of text to style: {"startIndex": integer, "endIndex": integer, "type": string}. If omitted, applies to all text.
    • fields (string, required): Comma-separated list of fields to update (e.g. "bold,foregroundColor" or "*").
  • replaceAllShapesWithSheetsChart: Replaces all shapes matching some criteria with a Google Sheets chart. Schema:
    • spreadsheetId (string, required): ID of the Google Sheets spreadsheet containing the chart.
    • chartId (integer, required): ID of the specific chart in the spreadsheet.
    • linkingMode (string, required): Linking mode: "LINKED" or "NOT_LINKED_IMAGE".
    • containsText (object, required): Criteria shapes must match:
    • text (string, required): Text to search for in shapes.
    • matchCase (boolean, optional): Whether search is case-sensitive.
    • pageObjectIds (array of strings, optional): If specified, limits replacement to elements on these pages.
  • deleteParagraphBullets: Deletes bullets from paragraphs. Schema:
    • objectId (string, required): Object ID of the shape or table containing text.
    • cellLocation (object, optional): Table cell if text is in a table: {"rowIndex": integer, "columnIndex": integer}.
    • textRange (object, optional): Range of text to delete bullets from: {"startIndex": integer, "endIndex": integer, "type": string}.
  • updateParagraphStyle: Updates the styling of paragraphs within a Shape or Table. Schema:
    • objectId (string, required): Object ID of the shape or table.
    • cellLocation (object, optional): Table cell if text is in a table: {"rowIndex": integer, "columnIndex": integer}.
    • style (object, required): Paragraph style properties:
    • alignment (string, optional): Text alignment: "START", "CENTER", "END", "JUSTIFIED".
    • lineSpacing (number, optional): Line spacing percentage (e.g. 100 for 100%).
    • spaceAbove (object, optional): Space above paragraph: {"magnitude": number, "unit": string}.
    • spaceBelow (object, optional): Space below paragraph: {"magnitude": number, "unit": string}.
    • indentFirstLine (object, optional): First line indent: {"magnitude": number, "unit": string}.
    • indentStart (object, optional): Indent at start: {"magnitude": number, "unit": string}.
    • indentEnd (object, optional): Indent at end: {"magnitude": number, "unit": string}.
    • direction (string, optional): Text direction: "LEFT_TO_RIGHT" or "RIGHT_TO_LEFT".
    • spacingMode (string, optional): Spacing mode: "NEVER_COLLAPSE" or "COLLAPSE_LISTS".
    • textRange (object, optional): Range of text to style: {"startIndex": integer, "endIndex": integer, "type": string}. If omitted, applies to all text.
    • fields (string, required): Comma-separated list of fields to update (e.g. "alignment,lineSpacing" or "*").
  • updateTableBorderProperties: Updates the properties of the table borders in a Table. Schema:
    • objectId (string, required): Object ID of the table.
    • tableRange (object, optional): Subset of table borders to update: {"location": {"rowIndex": integer, "columnIndex": integer}, "rowSpan": integer, "columnSpan": integer}. If omitted, applies to entire table.
    • borderPosition (string, required): Border position: "ALL", "BOTTOM", "INNER", "INNER_HORIZONTAL", "INNER_VERTICAL", "LEFT", "OUTER", "RIGHT", "TOP".
    • tableBorderProperties (object, required): Border properties to update:
    • tableBorderFill (object, optional): {"solidFill": {"color": {"rgbColor": {"red": number, "green": number, "blue": number}}}}.
    • weight (object, optional): Border thickness: {"magnitude": number, "unit": string}.
    • dashStyle (string, optional): Dash style: "SOLID", "DOT", "DASH".
    • fields (string, required): Comma-separated list of fields to update (e.g. "tableBorderFill,weight" or "*").
  • updateTableColumnProperties: Updates the properties of a Table column. Schema:
    • objectId (string, required): Object ID of the table.
    • columnIndices (array of integers, required): Zero-based indices of columns to update.
    • tableColumnProperties (object, required): Column properties:
    • columnWidth (object, optional): Width of column: {"magnitude": number, "unit": string}.
    • fields (string, required): Comma-separated list of fields to update (e.g. "columnWidth" or "*").
  • updateTableRowProperties: Updates the properties of a Table row. Schema:
    • objectId (string, required): Object ID of the table.
    • rowIndices (array of integers, required): Zero-based indices of rows to update.
    • tableRowProperties (object, required): Row properties:
    • minRowHeight (object, optional): Minimum row height: {"magnitude": number, "unit": string}.
    • fields (string, required): Comma-separated list of fields to update (e.g. "minRowHeight" or "*").
  • mergeTableCells: Merges cells in a Table. Schema:
    • objectId (string, required): Object ID of the table.
    • tableRange (object, required): Range of cells to merge: {"location": {"rowIndex": integer, "columnIndex": integer}, "rowSpan": integer, "columnSpan": integer}.
  • unmergeTableCells: Unmerges cells in a Table. Schema:
    • objectId (string, required): Object ID of the table.
    • tableRange (object, required): Range of cells to unmerge: {"location": {"rowIndex": integer, "columnIndex": integer}, "rowSpan": integer, "columnSpan": integer}.
  • groupObjects: Groups objects, such as page elements. Schema:
    • groupObjectId (string, optional): A user-supplied object ID for the group. If omitted, an ID is generated.
    • childrenObjectIds (array of strings, required): Object IDs of the elements to group (at least 2 required, on same page, not already grouped).
  • ungroupObjects: Ungroups objects, such as groups. Schema:
    • objectIds (array of strings, required): Object IDs of the groups to ungroup.
  • updatePageElementAltText: Updates the alt text title and/or description of a page element. Schema:
    • objectId (string, required): Object ID of the page element.
    • title (string, optional): Updated alt text title.
    • description (string, optional): Updated alt text description.
  • replaceImage: Replaces an existing image with a new image. Schema:
    • imageObjectId (string, required): Object ID of the existing image to replace.
    • url (string, required): URL of the new image.
    • imageReplaceMethod (string, optional): Replacement method: "CENTER_INSIDE" (default) or "CENTER_CROP".
  • updateSlideProperties: Updates the properties of a Slide. Schema:
    • objectId (string, required): Object ID of the slide to update.
    • slideProperties (object, required): Slide properties:
    • isSkipped (boolean, optional): Whether the slide is skipped in presentation mode.
    • fields (string, required): Comma-separated list of fields to update (e.g. "isSkipped" or "*").
  • updatePageElementsZOrder: Updates the Z-order of page elements. Schema:
    • pageElementObjectIds (array of strings, required): Object IDs of page elements to update (must be on same page, not grouped).
    • operation (string, required): Z-order operation: "BRING_TO_FRONT", "BRING_FORWARD", "SEND_BACKWARD", "SEND_TO_BACK".
  • importSlides: Imports one or more specified slide pages from a source presentation to this (destination) presentation. Schema:
    • sourcePresentationId (string, required): ID of the source presentation.
    • importIndex (integer, optional): Zero-based index where to import slides. If omitted, imported at the end.
    • sourceSlides (array of objects, optional): Slide ID mappings: [{"sourceSlideObjectId": string, "destinationObjectIds": {"sourceObjectId": "destinationObjectId"}}]. If omitted, all slides are imported.
    • preserveTheme (string, optional): Theme preservation policy: "USE_SOURCE_THEME" or "USE_DESTINATION_THEME".
  • updateLineCategory: Updates the category of a line. Schema:
    • objectId (string, required): Object ID of the connector line to update.
    • lineCategory (string, required): Line category: "STRAIGHT", "BENT", or "CURVED".
  • rerouteLine: Reroutes a line such that it's connected at the two closest connection sites on the connected page elements. Schema:
    • objectId (string, required): Object ID of the connector line to reroute.
  • createAudio: Creates audio in this presentation. Schema:
    • objectId (string, optional): A user-supplied object ID. If omitted, an ID is generated.
    • source (string, required): Audio source: "DRIVE".
    • sourceAudioId (string, required): ID of the audio file in Google Drive.
    • elementProperties (object, required): Element location and sizing:
    • pageObjectId (string, required): Object ID of the page where the audio will be placed.
    • size (object, optional): {"width": {"magnitude": number, "unit": string}, "height": {"magnitude": number, "unit": string}}.
    • transform (object, optional): AffineTransform {"scaleX": number, "scaleY": number, "shearX": number, "shearY": number, "translateX": number, "translateY": number, "unit": string}.
  • updateAudioProperties: Updates the properties of an Audio. Schema:
    • objectId (string, required): Object ID of the audio to update.
    • audioProperties (object, required): Audio properties:
    • playbackVolume (integer, optional): Playback volume from 0 to 100.
    • repeat (boolean, optional): Whether to repeat playback indefinitely while presenting.
    • showWhenPresenting (boolean, optional): Whether the audio clip should be visibly shown while presenting.
    • playAcrossSlides (boolean, optional): Whether audio continues to play across slides.
    • fields (string, required): Comma-separated list of fields to update (e.g. "playbackVolume,repeat" or "*").
  • insertComment: Inserts a comment into the presentation. Schema:
    • content (string, required): Plain text comment content.
    • Anchor (exactly one required):
    • shapeTextAnchor (object): To anchor to text inside a shape:
      • shapeId (string, required): The object ID of the shape.
      • textRange (object, optional): {"startIndex": int, "endIndex": int}.
    • objectId (string): To anchor to a page or element.
  • addCommentReply: Adds a reply to an existing comment. Schema:
    • commentId (string, required): ID of the comment thread.
    • post (object, required): {"content": "reply text"}.
  • updateCommentPost: Updates the content of a comment post in a comment thread. Schema:
    • commentId (string, required): ID of the comment thread.
    • postId (string, required): ID of the comment post to update.
    • content (string, required): The updated content of the comment post.
  • deleteComment: Deletes a comment thread. Schema:
    • commentId (string, required): ID of the comment thread to delete.
  • deleteCommentReply: Deletes a reply post. Schema:
    • commentId (string, required): ID of the comment thread.
    • postId (string, required): ID of the reply post to delete.

Get MCP tool specifications

To get the MCP tool specifications for all tools in an MCP server, use the tools/list method. The following example demonstrates how to use curl to list all tools and their specifications currently available within the MCP server.

Curl Request
curl --location 'https://slidesmcp.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
    "method": "tools/list",
    "jsonrpc": "2.0",
    "id": 1
}'