---
title: "Google Slides AI agent in Slack: read a deck and update it by asking | Chickpea"
description: "Give a Slack channel an AI teammate connected to Google Slides. Ask what a deck says, add a slide, or fix a line, and it happens in the thread. Open source."
canonical: https://chickpea.co/connectors/google-slides
keyword: "Google Slides AI agent in Slack"
verified: 2026-09-17
---

# A Google Slides teammate in Slack that reads a deck and changes what you name.

> Chickpea gives a channel a named AI teammate that holds its own Google Slides connection. It reads a presentation and its slides, adds a slide, inserts text, and replaces wording that has gone stale. The deck is usually being argued about in the channel already, and a Google Slides AI agent in Slack edits it there, one named change at a time.

Facts checked against the sources on September 17, 2026. The HTML page is at https://chickpea.co/connectors/google-slides; every connector is listed at https://chickpea.co/connectors; the site index for agents is at https://chickpea.co/llms.txt.

**Google Slides** (Google LLC, https://workspace.google.com/products/slides/): Read presentations and create or update slides through bounded operations. Category: Docs and files. Lane: Hosted sign-in. Sign in: OAuth, managed.

**Chickpea**: an open source Slack app that gives a workspace named AI teammates, each with its own handle, instructions, memory, connected accounts, schedules, and model, deployed to your own Cloudflare account or a Node host.

## What people ask it
The teammate in these examples is @growth, published to #growth.

### What is in a deck
- @growth summarise the board deck in five bullets, with slide numbers
- @growth what does the QBR deck say about retention, and on which slide

Reads never need confirmation. The teammate opens the presentation, reads its slides, and answers in the thread. It can also fetch a temporary preview link for one page, which is how somebody sees a slide without opening the whole deck. Every result is capped at 256 KB before it reaches the model, so a long deck is read in passes.

### Which slide says what
- @growth which slides still show the old pricing, and what do they say
- @growth list every slide title in the launch deck, in order

A long answer comes back as a table in the thread, slide by slide. Google Slides has no search capability in this connector, so the teammate needs the deck itself, by link or by id. Give the same teammate a Google Drive connection and it can find the deck by name first, then read it here.

### Add a slide, or fix a line
- @growth add a closing slide to that deck with the three dates we agreed
- @growth replace every mention of the old product name in the deck with the new one

A small change applies at once. One update carries up to 25 operations, and only three kinds exist: create a slide on one of Google’s named layouts, insert text into a shape you named, or replace matching text wherever it appears. It applies only because your message asked for it. Thread history, a pasted document, and memory cannot authorize a write on their own.

### Redo several slides from new numbers
- @growth redo the five revenue slides from the numbers in this thread
- @growth rewrite the summary slide and the three slides it quotes

A change across several slides comes back as a list of what would move, and it waits for a yes. The teammate can pin the deck’s current revision to the update, so the write fails rather than overwrites if someone edits the deck while you are deciding.

### On a schedule
- @growth every Monday at 8am Pacific, post the board deck’s slide titles here
- @growth every Friday at 4pm Eastern, read the launch deck and tell us only when it changed

A schedule saves on the spot. It needs an explicit time zone, and "every Monday at 8am" without one is refused rather than guessed. Ask for the second kind and the run posts only when the result changes. Each run supplies a change key, and a key that matches the last one is recorded as a no-op with nothing posted. Every run uses the Google connection of the person who asked.

### Example conversations

**What is in the deck**
> **Dana:** @growth in the deck Priya linked above, which slides still show the old pricing?
> **@growth:** Northwind board review, 18 slides, last revised Tue. Four of them still carry the old list price.
>
> | Slide | Title | What it still says |
> |---|---|---|
> | 4 | Pricing | $40 per seat, monthly |
> | 5 | Packaging | Three tiers, old names |
> | 11 | Expansion motion | Quotes the $40 figure |
> | 16 | Appendix: rate card | Table from June |
> **@growth:** That is a read. Nothing in the deck moved, and I will not change a slide unless you ask me to in the message.

**Add a slide**
> **Marco:** @growth add a closing slide to that deck with the three dates we agreed, and fix the title on slide 4.
> **@growth:** Done. Slide 19 is new, on the TITLE_AND_BODY layout, with the three dates from this thread. Slide 4’s title now reads Pricing, from October.
> **@growth:** Small and reversible, so it applied at once. It only applied because your message named it: a pasted document or older thread text cannot ask me to write.

**Redo five slides**
> **Priya:** @growth the numbers in this thread are final. Redo the five revenue slides in the QBR deck.
> **@growth:** Five slides, eleven text changes. That is broad enough that I will show you first rather than do it.
> Buttons: Apply 11 changes · Cancel
> **@growth:** I will pin the deck’s current revision to the update, so it fails rather than overwrites if someone edits while you decide.

**Every Monday**
> **Sofia:** @growth every Monday at 8am Pacific, read the board deck and post it here only when it changed.
> **@growth:** Saved. Every Monday at 8:00 AM Pacific I’ll read Northwind board review and post the slide titles here in #growth, and stay quiet on the weeks nothing moved. First run is Mon Sep 21.
> **@growth:** It runs on your Google connection. Disconnect that account and it stops with a named reason rather than running on someone else’s.

## Connect Google Slides
1. In Chickpea Admin, open the teammate, then **Connections**, find **Google Slides**, and choose **Connect**. Or ask in Slack, `@growth connect Google Slides`, and follow the link it posts.
2. Choose who uses it. **Team** is one shared Google account that everyone who can use the teammate reads and writes through. **Personal** means each member signs in as themselves, and Google records the edits as them.
3. Choose **Continue to sign in**. A hosted Google sign-in opens in a second tab while Chickpea waits in the first, and the attempt lasts 30 minutes. There is no token to paste in this connector, and nothing goes into Slack. Read the permissions on that screen, because the grant there can be wider than the capabilities Chickpea hands the teammate.
4. Nothing else to select. Google Slides asks for no picker after sign-in, so the connection is ready as soon as Google hands you back. Each Google service is its own connection and its own consent screen, so Slides does not bring Docs or Drive with it.
5. Ask something. `@growth summarise the board deck in five bullets` is a good first question, because it reads and changes nothing.

A connection belongs to one teammate. Giving a second teammate Google Slides means a second sign-in, with its own consent. Chickpea keeps the parts that decide authority: team or personal ownership, the capability ceiling on each teammate, write confirmation, and schedule state. A binding can later be narrowed to fewer capabilities, never widened by talking to the teammate.

## What the teammate is handed with Google Slides
A managed connector has no discovered tool list. The teammate is handed a fixed list of capabilities that Chickpea curates, not Google’s whole Slides API. Seven cover Google Slides. Three read: presentation and slide metadata, one page, and a temporary preview link for one page. Four write: create a blank presentation, create one from bounded Markdown, copy a template the account can already open, and apply reviewed operations to a deck that exists. Deleting, sharing, and arbitrary Slides request arrays are absent from the list.

The capability list is in the product source: https://github.com/pejmanjohn/chickpea/blob/main/src/connections/catalog/google-productivity.ts

## Beside Google Slides
- **Google Docs:** The written version and the deck that presents it, edited by one teammate
- **Google Drive:** Drive finds the deck by name, Slides reads and edits the one you meant
- **Google Sheets:** The numbers come out of the sheet and go onto the slide that quotes them
- **Gamma:** Gamma to draft a deck from nothing, Slides for the one the company already uses
- All 37 connectors: https://chickpea.co/connectors

## Questions people ask

### Does Google Slides have an AI feature?
Yes, and it is Gemini. Google says Gemini in Slides can generate images, generate new slides, summarize a presentation, write or rewrite content, and reference your Drive files as you write or create a new slide. You reach it from the Ask Gemini button at the top right of a presentation. Google says the feature requires an eligible Google Workspace or Google AI plan. It works inside the deck, for the person who has it open.

### Is this Gemini in Slides?
No. Chickpea is an open source Slack app you deploy to your own Cloudflare account, and it is not built by Google or affiliated with Google. The teammate holds a Google Slides connection as an ordinary connected account and answers in the channel. Gemini in Slides keeps working as it does, for whoever has the deck open. The two do not touch.

### Is there an MCP for Google Slides?
Yes, Google runs one. Google documents a Slides remote MCP server at slidesmcp.googleapis.com/mcp/v1 over streamable HTTP with OAuth. Setting it up means enabling the Slides API and the Google Slides MCP API in a Google Cloud project, configuring OAuth credentials, and adding the server to a client’s config. Google names Antigravity and Claude on Enterprise, Pro, Max, or Team plans, and describes two tools, read_presentation and update_presentation. Community servers exist too.

### Does it use Google's Slides MCP server?
No. Google Slides is a managed connector here, and nothing in it speaks MCP. There is no Google Cloud project to create, no server address to configure, and no OAuth client of your own to register. The teammate is handed the seven curated Slides capabilities and reaches Google through the account you signed in with.

### Can it delete a slide or a deck?
No. Deleting and sharing are absent from the capability list, and so is any arbitrary Slides request array, which is the usual way an integration reaches past its own tool names. The four writes it holds are creating a presentation, creating one from Markdown, copying a template, and applying reviewed operations to a deck. Under that sits a gate that does not consult the model: during a Slack turn Chickpea refuses any managed capability whose effect is not read unless the message you just sent names that action.

### Can it build a deck from scratch?
Three ways, and none of them designs one. It can create a blank presentation with a title, create one from bounded Markdown, or copy a template the connected account can already open. What it cannot do is lay out a slide freely. New slides come from Google’s named layouts, such as title and body or title and two columns, and there is no capability for images, shapes, colours, or themes.

### Can it find a deck by name?
Not with Slides alone. The curated list for Google Slides has no search, unlike the Docs and Sheets lists, so the teammate needs the deck itself, by link or by id. Paste the link in the channel and it takes it from there. Add a Google Drive connection to the same teammate and searching Drive for the deck becomes the first step of the same ask.

### What does bounded mean on this connector?
Limits written into the input schema rather than left to the model. One update carries at least one and at most 25 operations, of exactly three kinds, and the operations are capped at 100,000 characters together. A new slide takes a layout from a fixed list of eleven and a position, not free coordinates. Replaced text is capped at 20,000 characters. Every result is capped at 256 KB before it goes back to the model, and an update can carry the deck’s current revision so a stale write fails instead of clobbering someone.

### Which decks can it see?
Whatever the connected Google account can open, which is why the choice between team and personal matters more here than the capability list does. A team account is one shared sign-in that everyone who can use the teammate acts through. A personal account is used only for your own requests, and Google records the edits as you. Unlike Analytics or Gong, this connector has no resource picker, so nothing narrows it below the account itself.

### Do I still need the Google Drive app for Slack?
Most teams want it, and Slides has no Slack app of its own. Slack says the Google Drive app lets you create a document, presentation, or spreadsheet from Slack, add files from Drive with a rich preview, get notified when someone comments on one of your files or requests access, and adjust file permissions when the people you shared with cannot open it. That app pushes notifications at you. A Chickpea teammate posts nothing unprompted, and it opens the deck and changes what you named.

## Sources
- [Chickpea docs: connector catalog, the Google Slides row and the managed lane](https://docs.chickpea.co/reference/connector-catalog/)
- [Chickpea docs: managed connectors, the sign-in flow and what each connector selects](https://docs.chickpea.co/agents/managed-connectors/)
- [Chickpea docs: connections, team and personal accounts, the binding as a ceiling](https://docs.chickpea.co/agents/connections/)
- [Chickpea docs: authority and confirmation, including the managed-capability effect gate](https://docs.chickpea.co/security/authority-and-confirmation/)
- [Chickpea docs: connect a service, the hosted sign-in and the Slack link](https://docs.chickpea.co/agents/connect-a-service/)
- [Chickpea docs: schedules, time zones, change keys and what each run rechecks](https://docs.chickpea.co/agents/schedules/)
- [Chickpea source: the seven Google Slides capabilities and their input schemas](https://github.com/pejmanjohn/chickpea/blob/main/src/connections/catalog/google-productivity.ts)
- [Chickpea source: the Google Slides preset (managed toolkit, provider, category)](https://github.com/pejmanjohn/chickpea/blob/main/src/config/presets.ts)
- [Google: configure the Slides MCP server, its address, setup and two tools](https://developers.google.com/workspace/slides/api/guides/configure-mcp-server)
- [Google: collaborate with Gemini in Google Slides, and the plans it needs](https://support.google.com/docs/answer/14355071)
- [Google: the Slides API reference for presentations and batch update requests](https://developers.google.com/workspace/slides/api/reference/rest)
- [Slack: the Google Drive app, previews, notifications and creating a presentation](https://slack.com/help/articles/205875058-Google-Drive-for-Slack)
- [Chickpea source on GitHub](https://github.com/pejmanjohn/chickpea)

## More
- [Ahrefs MCP in Slack](https://chickpea.co/connectors/ahrefs.md)
- [Airtable MCP in Slack](https://chickpea.co/connectors/airtable.md)
- [Asana AI agent in Slack](https://chickpea.co/connectors/asana.md)
- [Jira and Confluence MCP in Slack](https://chickpea.co/connectors/atlassian.md)
- [BugSnag MCP in Slack](https://chickpea.co/connectors/bugsnag.md)
- [Cloudflare MCP in Slack](https://chickpea.co/connectors/cloudflare-api.md)
- [Exa MCP in Slack](https://chickpea.co/connectors/exa.md)
- [Firecrawl MCP in Slack](https://chickpea.co/connectors/firecrawl.md)
- [Fireflies MCP in Slack](https://chickpea.co/connectors/fireflies.md)
- [Gamma MCP in Slack](https://chickpea.co/connectors/gamma.md)
- [Gmail AI agent in Slack](https://chickpea.co/connectors/gmail.md)
- [Gong AI agent in Slack](https://chickpea.co/connectors/gong-managed.md)
- [Google Ads AI agent in Slack](https://chickpea.co/connectors/google-ads.md)
- [Google Analytics AI agent in Slack](https://chickpea.co/connectors/google-analytics.md)
- [Google Calendar AI agent in Slack](https://chickpea.co/connectors/google-calendar.md)
- [Google Docs AI agent in Slack](https://chickpea.co/connectors/google-docs.md)
- [Google Drive AI agent in Slack](https://chickpea.co/connectors/google-drive.md)
- [Google Search Console AI agent in Slack](https://chickpea.co/connectors/google-search-console.md)
- [Google Sheets AI agent in Slack](https://chickpea.co/connectors/google-sheets.md)
- [Granola MCP in Slack](https://chickpea.co/connectors/granola.md)
- [HubSpot AI agent in Slack](https://chickpea.co/connectors/hubspot-managed.md)
- [Hugging Face MCP in Slack](https://chickpea.co/connectors/huggingface.md)
- [incident.io MCP in Slack](https://chickpea.co/connectors/incident-io.md)
- [Intercom MCP in Slack](https://chickpea.co/connectors/intercom.md)
- [Linear MCP in Slack](https://chickpea.co/connectors/linear.md)
- [LunarCrush MCP in Slack](https://chickpea.co/connectors/lunarcrush.md)
- [Meta Ads MCP in Slack](https://chickpea.co/connectors/meta-ads.md)
- [Monday.com MCP in Slack](https://chickpea.co/connectors/monday.md)
- [Neon MCP in Slack](https://chickpea.co/connectors/neon.md)
- [Notion Slack integration with an AI agent](https://chickpea.co/connectors/notion-managed.md)
- [PostHog MCP in Slack](https://chickpea.co/connectors/posthog.md)
- [Sentry MCP in Slack](https://chickpea.co/connectors/sentry.md)
- [Stripe MCP in Slack](https://chickpea.co/connectors/stripe.md)
- [Supabase MCP in Slack](https://chickpea.co/connectors/supabase.md)
- [YouTube AI agent in Slack](https://chickpea.co/connectors/youtube-managed.md)
- [Zendesk AI agent in Slack](https://chickpea.co/connectors/zendesk.md)
- [All connectors](https://chickpea.co/connectors.md)

## Try Chickpea
- Site: https://chickpea.co/
- Deploy to Cloudflare: https://deploy.workers.cloudflare.com/?url=https://github.com/pejmanjohn/chickpea
- Source, Apache 2.0: https://github.com/pejmanjohn/chickpea
- Docs: https://docs.chickpea.co
