Tool: 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.createShape: Creates a new shape.createTable: Creates a new table.insertText: Inserts text into a shape or table cell.insertTableRows: Inserts rows into a table.insertTableColumns: Inserts columns into a table.deleteTableRow: Deletes a row from a table.deleteTableColumn: Deletes a column from a table.replaceAllText: Replaces all instances of specified text.deleteObject: Deletes a page or page element from the presentation.updatePageElementTransform: Updates the transform of a page element.updateSlidesPosition: Updates the position of a set of slides in the presentation.deleteText: Deletes text from a shape or a table cell.createImage: Creates an image.createVideo: Creates a video.createSheetsChart: Creates an embedded Google Sheets chart.createLine: Creates a line.refreshSheetsChart: Refreshes a Google Sheets chart.updateShapeProperties: Updates the properties of a Shape.updateImageProperties: Updates the properties of an Image.updateVideoProperties: Updates the properties of a Video.updatePageProperties: Updates the properties of a Page.updateTableCellProperties: Updates the properties of a TableCell.updateLineProperties: Updates the properties of a Line.createParagraphBullets: Creates bullets for paragraphs.replaceAllShapesWithImage: Replaces all shapes matching some criteria with an image.duplicateObject: Duplicates a slide or page element.updateTextStyle: Updates the styling of text within a Shape or Table.replaceAllShapesWithSheetsChart: Replaces all shapes matching some criteria with a Google Sheets chart.deleteParagraphBullets: Deletes bullets from paragraphs.updateParagraphStyle: Updates the styling of paragraphs within a Shape or Table.updateTableBorderProperties: Updates the properties of the table borders in a Table.updateTableColumnProperties: Updates the properties of a Table column.updateTableRowProperties: Updates the properties of a Table row.mergeTableCells: Merges cells in a Table.unmergeTableCells: Unmerges cells in a Table.groupObjects: Groups objects, such as page elements.ungroupObjects: Ungroups objects, such as groups.updatePageElementAltText: Updates the alt text title and/or description of a page element.replaceImage: Replaces an existing image with a new image.updateSlideProperties: Updates the properties of a Slide.updatePageElementsZOrder: Updates the Z-order of page elements.importSlides: Imports one or more specified slide pages from a source presentation to this (destination) presentation.updateLineCategory: Updates the category of a line.rerouteLine: Reroutes a line such that it's connected at the two closest connection sites on the connected page elements.createAudio: Creates an audio in this presentation.updateAudioProperties: Updates the properties of an Audio.
The following sample demonstrate how to use curl to invoke the update_presentation MCP tool.
| Curl Request |
|---|
curl --location 'https://slidesmcp.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "update_presentation", "arguments": { // provide these details according to the tool MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Input Schema
Request to update a presentation.
UpdatePresentationRequest
| JSON representation |
|---|
{ "presentationId": string, "requests": [ { object } ] } |
| Fields | |
|---|---|
presentationId |
Required. The ID of the presentation to update. |
requests[] |
Required. A list of batchUpdate requests, using the schema and semantics documented at https://developers.google.com/workspace/slides/api/reference/rest/v1/presentations/request |
Struct
| JSON representation |
|---|
{ "fields": { string: value, ... } } |
| Fields | |
|---|---|
fields |
Unordered map of dynamically typed values. An object containing a list of |
FieldsEntry
| JSON representation |
|---|
{ "key": string, "value": value } |
| Fields | |
|---|---|
key |
|
value |
|
Value
| JSON representation |
|---|
{ "nullValue": null, "numberValue": number, "stringValue": string, "boolValue": boolean, "structValue": { object }, "listValue": array } |
| Fields | |
|---|---|
Union field kind. The kind of value. kind can be only one of the following: |
|
nullValue |
Represents a JSON |
numberValue |
Represents a JSON number. Must not be |
stringValue |
Represents a JSON string. |
boolValue |
Represents a JSON boolean ( |
structValue |
Represents a JSON object. |
listValue |
Represents a JSON array. |
ListValue
| JSON representation |
|---|
{ "values": [ value ] } |
| Fields | |
|---|---|
values[] |
Repeated field of dynamically typed values. |
NullValue
Represents a JSON null.
NullValue is a sentinel, using an enum with only one value to represent the null value for the Value type union.
A field of type NullValue with any value other than 0 is considered invalid. Most ProtoJSON serializers will emit a Value with a null_value set as a JSON null regardless of the integer value, and so will round trip to a 0 value.
| Enums | |
|---|---|
NULL_VALUE |
Null value. |
Output Schema
UpdatePresentation responses.
UpdatePresentationResponse
| JSON representation |
|---|
{ "replies": [ { object } ] } |
| Fields | |
|---|---|
replies[] |
A set of batchUpdate responses, using the schema and semantics documented at https://developers.google.com/workspace/slides/api/reference/rest/v1/presentations/response |
Struct
| JSON representation |
|---|
{ "fields": { string: value, ... } } |
| Fields | |
|---|---|
fields |
Unordered map of dynamically typed values. An object containing a list of |
FieldsEntry
| JSON representation |
|---|
{ "key": string, "value": value } |
| Fields | |
|---|---|
key |
|
value |
|
Value
| JSON representation |
|---|
{ "nullValue": null, "numberValue": number, "stringValue": string, "boolValue": boolean, "structValue": { object }, "listValue": array } |
| Fields | |
|---|---|
Union field kind. The kind of value. kind can be only one of the following: |
|
nullValue |
Represents a JSON |
numberValue |
Represents a JSON number. Must not be |
stringValue |
Represents a JSON string. |
boolValue |
Represents a JSON boolean ( |
structValue |
Represents a JSON object. |
listValue |
Represents a JSON array. |
ListValue
| JSON representation |
|---|
{ "values": [ value ] } |
| Fields | |
|---|---|
values[] |
Repeated field of dynamically typed values. |
NullValue
Represents a JSON null.
NullValue is a sentinel, using an enum with only one value to represent the null value for the Value type union.
A field of type NullValue with any value other than 0 is considered invalid. Most ProtoJSON serializers will emit a Value with a null_value set as a JSON null regardless of the integer value, and so will round trip to a 0 value.
| Enums | |
|---|---|
NULL_VALUE |
Null value. |
Tool Annotations
Destructive Hint: ✅ | Idempotent Hint: ❌ | Read Only Hint: ❌ | Open World Hint: ✅