Use the Google Slides CLI from KosmoKrator to call Google Slides tools headlessly, return JSON, inspect schemas, and automate workflows from coding agents, scripts, and CI.
Google Slides can be configured headlessly with `kosmokrator integrations:configure google-slides`.
# Install KosmoKrator first if it is not available on PATH.curl -fsSL https://raw.githubusercontent.com/OpenCompanyApp/kosmokrator/main/install.sh | bash# Configure and verify this integration.kosmokrator integrations:configure google-slides --set access_token="$GOOGLE_SLIDES_ACCESS_TOKEN" --enable --read allow --write ask --jsonkosmokrator integrations:doctor google-slides --jsonkosmokrator integrations:status --json
Credentials
Authentication type: Manual OAuth tokenoauth2_manual_token. Configure credentials once, then use the same stored profile from
scripts, coding CLIs, Lua code mode, and the MCP gateway.
Key
Env var
Type
Required
Label
access_token
GOOGLE_SLIDES_ACCESS_TOKEN
Secret secret
yes
Access Token
url
GOOGLE_SLIDES_URL
URL url
no
API Base URL
Call Google Slides Headlessly
Use the generic call form when another coding CLI or script needs a stable universal interface.
Every function below can be called headlessly. The generic form is stable across all integrations;
the provider shortcut is shorter but specific to Google Slides.
google-slides.gslides_list_presentations
Read read
List Google Slides presentations from the user's Drive. Returns presentation IDs, titles, and metadata.
Optional custom object ID for the new slide. If omitted, Google will generate one.
createObject
boolean
no
Whether to create the slide object (default: true).
elements
array
no
Optional array of elements to add to the new slide. Each element has: type ("text" or "shape"), shape (shape type like "RECTANGLE"), text (content string), and style (object with size, transform, font properties).
google-slides.gslides_get_current_user
Get the authenticated Google user's profile information (display name, email, photo).
Headless calls still follow the integration read/write permission policy. Configure read/write defaults
with integrations:configure. Add --force only for trusted automation that should bypass that policy.