Connect the Google Slides MCP server to your AI agent Open source, MIT, on npm. Setup instructions for Claude, Cursor and Codex are in the repository; adoption questions — Telegram. GitHub repository Telegram

Google Slides: Insert text — MCP tool

Google Slides MCP tool: Inserts text into a shape or a table cell (batchUpdate insertText) at a 0-based character index (default 0 = the beginning).

Technical name: insert_text

What task it solves

I want to insert text into a shape or table cell.

Inserts text into a shape or a table cell (batchUpdate insertText) at a 0-based character index (default 0 = the beginning).

When to use it

Use this capability when you need “Insert text” without doing the same work manually in the Google Slides interface. It runs only when an AI client calls it.

What to provide

  • presentation_idrequired. The presentation id — the long id from the URL (docs.google.com/presentation/d/<presentationId>/edit) or from create_presentation output.
  • object_idrequired. The shape or table object id (from list_slides).
  • textrequired. The text to insert; use \n for paragraph breaks.
  • insertion_indexoptional. 0-based character index to insert at (default 0 — the start of the existing text).
  • row_indexoptional. Table cell row (0-based; requires column_index).
  • column_indexoptional. Table cell column (0-based; requires row_index).

What it returns

Returns compact JSON from the upstream API or a clear MCP tool error. The exact fields depend on the operation and are documented in the technical reference.

What changes in Google Slides

The tool changes real Google Slides data as described above. The server does not promise an automatic rollback.

Example request

Insert text in Google Slides. Ask for any required identifiers that are missing.

Errors and limitations

For a table cell pass row_index + column_index together. Text carries \n for new paragraphs; the target must be a shape that can hold text or a table — images and lines cannot. To REPLACE what's already there use set_text instead; to fill an empty layout placeholder this works directly (find its object id via list_slides).

Access also depends on token permissions, quotas, and upstream API limits.

Related MCP tools

Technical details