Skip to main content
The google-slides MCP adapter wraps the Google Slides API and Drive search. Use it in workflow mcp_call steps to create decks, fill template placeholders, add slides with standard layouts, and refresh embedded Sheets charts — ideal for sales proposals, QBR decks, and automated reporting slides.

Prerequisites

  • A Google account with Google Slides and Drive access
  • A Google Workspace connection in AgentRuntime (OAuth via the Google account card on Connections)
  • project_contributor access in your workspace

Connect in AgentRuntime

1

Connect Google

On Connections, use the Google account card and complete OAuth. See Google Workspace setup and Connections.
2

Enable Slides

On your Google connection, enable the Slides service so the account exposes Slides and Drive API scopes.
3

Add google-slides MCP instance

Go to MCP, click Add instance for google-slides. Open Instance config, wire your Google connection, and set the profile active.
4

Test in a workflow

Smoke-test with mcp_call in Workflow Studio. Test with find_presentations or get_presentation on a known deck before production workflows.

What you can build

  • QBR deck from metricsgoogle-sheets export → LLM bullet points → generate_from_template with {{Quarter}} placeholders → refresh_sheets_charts for live charts.
  • Sales proposal pack — CRM webhook → generate_from_template from master deck → google-drive add_permission for AE → gmail send presentation_url.
  • Training slide append — New module content from CMS → get_presentationadd_slide with TITLE_AND_BODYreplace_text for section title.
  • Brand refresh sweepfind_presentations by folder query → replace_text old product name → log updated IDs in google-sheets.

Tools

ToolDescription
create_presentationCreate a Google Slides presentation with a title.
get_presentationGet a Google Slides presentation by ID, including title and per-slide plain text.
add_slideAdd a slide to a presentation using a predefined Slides layout.
replace_textReplace text across all slides in a presentation.
find_presentationsFind Google Slides presentations in Drive by title or raw Drive query.
generate_from_templateGenerate a presentation from a template by replacing placeholder tokens.
refresh_sheets_chartsRefresh embedded Google Sheets charts in a presentation.

Example

Generate a client QBR deck from a template after metrics are ready:
{
  "id": "build-qbr",
  "type": "mcp_call",
  "name": "Generate QBR presentation",
  "tool_name": "generate_from_template",
  "tool_args": {
    "template_presentation_id": "{{input.qbr_template_id}}",
    "new_title": "QBR — {{input.client_name}} — {{input.quarter}}",
    "placeholder_format": "curly_braces",
    "replacements": {
      "ClientName": "{{input.client_name}}",
      "Quarter": "{{input.quarter}}",
      "RevenueSummary": "{{steps.llm-metrics.result.summary}}"
    },
    "match_case": false
  },
  "depends_on": ["llm-metrics"],
  "timeout_s": 90
}

Troubleshooting

IssueFix
Reconnect prompt on Google connectionRe-authorize OAuth; Slides and Drive scopes may have been revoked
Placeholders not replacedMatch placeholder_format to tokens in the template (curly_braces, square_brackets, etc.)
Charts show stale dataCall refresh_sheets_charts after updating source google-sheets ranges
find_presentations misses filesSet include_trashed: false and scope with a raw Drive query if needed