# Google Slides import ToolInfo from "@/app/_components/tool-info"; import Badges from "@/app/_components/badges"; import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; import TableOfContents from "@/app/_components/table-of-contents"; import ToolFooter from "@/app/_components/tool-footer"; import ScopePicker from "@/app/_components/scope-picker"; import { Callout } from "nextra/components"; The GoogleSlides MCP Server provides a set of tools for interacting with Google Slides presentations. These tools enable users and AI applications to: - Create new presentations and add slides. - Comment on specific slides and list all comments in a presentation. - Search for presentations in Google Drive. - Retrieve and convert presentation content to markdown format. ## Available Tools If you need to perform an action that's not listed here, you can [get in touch with us](mailto:contact@arcade.dev) to request a new tool, or [create your own tools](/guides/create-tools/tool-basics/build-mcp-server). Each tool requires specific Google OAuth scopes to function. You'll find the required scopes listed in a blue info box at the end of each tool's documentation below. For more information about configuring OAuth and tips for moving to production, see the [Google auth provider documentation](/references/auth-providers/google. The `drive.file` scope only grants access to files that were created or opened by your application. If you need broader access to a user's Google Drive presentations (e.g., to access presentations created by other applications), you'll need to create your own Google OAuth provider and request the `drive.readonly` or `drive` scope. Note that these broader scopes are **not supported** by Arcade's default Google OAuth provider. ## Find required scopes Select the tools you plan to use to see the OAuth scopes your application needs: --- ## GoogleSlides.CommentOnPresentation
Comment on a specific slide by its index in a Google Slides presentation. **Parameters** - **presentation_id** (`string`, required) The ID of the presentation to comment on - **comment_text** (`string`, required) The comment to add to the slide `https://www.googleapis.com/auth/drive.file` --- ## GoogleSlides.ListPresentationComments
List all comments on the specified Google Slides presentation. **Parameters** - **presentation_id** (`string`, required) The ID of the presentation to list comments for - **include_deleted** (`boolean`, optional) Whether to include deleted comments in the results. Defaults to False. `https://www.googleapis.com/auth/drive.file` --- ## GoogleSlides.CreatePresentation
Create a new Google Slides presentation **Parameters** - **title** (`string`, required) The title of the presentation to create - **subtitle** (`string`, optional) The subtitle of the presentation to create `https://www.googleapis.com/auth/drive.file` --- ## GoogleSlides.CreateSlide
Create a new slide at the end of the specified presentation **Parameters** - **presentation_id** (`string`, required) The ID of the presentation to create the slide in - **slide_title** (`string`, required) The title of the slide to create - **slide_body** (`string`, required) The body (text) of the slide to create `https://www.googleapis.com/auth/drive.file` --- ## GoogleSlides.SearchPresentations
Searches for presentations in the user's Google Drive. **Parameters** - **presentation_contains** (`array[string]`, optional) Keywords or phrases that must be in the presentation title or content. Provide a list of keywords or phrases if needed. - **presentation_not_contains** (`array[string]`, optional) Keywords or phrases that must NOT be in the presentation title or content. Provide a list of keywords or phrases if needed. - **search_only_in_shared_drive_id** (`string`, optional) The ID of the shared drive to restrict the search to. If provided, the search will only return presentations from this drive. Defaults to None, which searches across all drives. - **include_shared_drives** (`boolean`, optional) Whether to include presentations from shared drives. Defaults to False (searches only in the user's 'My Drive'). - **include_organization_domain_presentations** (`boolean`, optional) Whether to include presentations from the organization's domain. This is applicable to admin users who have permissions to view organization-wide presentations in a Google Workspace account. Defaults to False. - **order_by** (`Enum` OrderBy, optional) Sort order. Defaults to listing the most recently modified presentations first - **limit** (`integer`, optional) The number of presentations to list - **pagination_token** (`string`, optional) The pagination token to continue a previous request `https://www.googleapis.com/auth/drive.file` --- ## GoogleSlides.WhoAmI
Get comprehensive user profile and Google Slides environment information. **Parameters** This tool does not take any parameters. - `https://www.googleapis.com/auth/drive.file` - `https://www.googleapis.com/auth/userinfo.profile` - `https://www.googleapis.com/auth/userinfo.email` --- ## GoogleSlides.GenerateGoogleFilePickerUrl
Generate a Google File Picker URL for user-driven file selection and authorization. **Parameters** This tool does not take any parameters. No additional scopes required (uses basic Google authentication). --- ## GoogleSlides.GetPresentationAsMarkdown
Get the specified Google Slides presentation and convert it to markdown. **Parameters** - **presentation_id** (`string`, required) The ID of the presentation to retrieve. `https://www.googleapis.com/auth/drive.file` --- ## Auth The Arcade GoogleSlides MCP Sever uses the [Google auth provider](/references/auth-providers/google to connect to users' GoogleSlides accounts. Please refer to the [Google auth provider](/references/auth-providers/google documentation to learn how to configure auth. ## GoogleSlides Reference Below is a reference of enumerations used by some tools in the GoogleSlides MCP Sever: ### OrderBy - **CREATED_TIME**: `createdTime` - **CREATED_TIME_DESC**: `createdTime desc` - **FOLDER**: `folder` - **FOLDER_DESC**: `folder desc` - **MODIFIED_BY_ME_TIME**: `modifiedByMeTime` - **MODIFIED_BY_ME_TIME_DESC**: `modifiedByMeTime desc` - **MODIFIED_TIME**: `modifiedTime` - **MODIFIED_TIME_DESC**: `modifiedTime desc` - **NAME**: `name` - **NAME_DESC**: `name desc` - **NAME_NATURAL**: `name_natural` - **NAME_NATURAL_DESC**: `name_natural desc` - **QUOTA_BYTES_USED**: `quotaBytesUsed` - **QUOTA_BYTES_USED_DESC**: `quotaBytesUsed desc` - **RECENCY**: `recency` - **RECENCY_DESC**: `recency desc` - **SHARED_WITH_ME_TIME**: `sharedWithMeTime` - **SHARED_WITH_ME_TIME_DESC**: `sharedWithMeTime desc` - **STARRED**: `starred` - **STARRED_DESC**: `starred desc` - **VIEWED_BY_ME_TIME**: `viewedByMeTime` - **VIEWED_BY_ME_TIME_DESC**: `viewedByMeTime desc`