Connector · Docs and files

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.

What people ask it.

The teammate is @growth, in #growth. Pick a scenario to watch it play.

# growth
24
Today
D
Dana
@growth in the deck Priya linked above, which slides still show the old pricing?
👀 1
growthAPP
Northwind board review, 18 slides, last revised Tue. Four of them still carry the old list price.
SlideTitleWhat it still says
4Pricing$40 per seat, monthly
5PackagingThree tiers, old names
11Expansion motionQuotes the $40 figure
16Appendix: rate cardTable from June
That is a read. Nothing in the deck moved, and I will not change a slide unless you ask me to in the message.
growth·Claude Sonnet 5·Configure
BIS
Aa
  • What is in a deck Read only

    @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 Read only

    @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 Applies at once

    @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 Asks first

    @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 Applies at once

    @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.

Connect it

Five steps, from Admin or from Slack.

You sign in through a page Chickpea serves, never in Slack. The link the teammate posts is good for one action, for one teammate, for 24 hours.

  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.

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.

# growth
24
Today
D
Dana
@growth connect our Google Slides
👀 1
growthAPP
Open this and sign in with Google there, not here. The link is good for this one connection, on me alone, and nobody in #growth types a credential into Slack.
Sign in with Google
growth·Claude Sonnet 5·Configure
growthAPP
Signed in, and Google Slides is ready. There is nothing else to pick on this one. I can open the decks that account can open, and no more.
growth@growth
Reads the team’s decks and makes the slide changes people ask for.
has access to Google Slides
1
BIS
Aa

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.

Try it

Give a channel a Google Slides teammate.

One deploy into your own Cloudflare account, connect Slack, sign in to Google Slides, ask. Apache 2.0, no seats, no metering.

Star on GitHub4

Or run it on Node. The setup guide covers both.