Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

io.github.chrischall/gogcli-mcp-slides

NPM · GOGCLI-MCP-SLIDES · SCANNED SEP 20

Google Slides via gogcli for Claude — deck and slide authoring

Available components

+1 this week 94 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security100
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • No install/post-install scripts declared.Pass
  • 0 of 4 dependencies flagged as unhealthy. View diagnostics → Pass
Provenance & Transparency97
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Cryptographically verified build provenance (signed, bound to chrischall/gogcli-mcp). View diagnostics → Pass
  • Clear OSI-approved license (MIT).Pass
  • Actively maintained (last published 0 days ago).Pass
  • Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability71
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 8592 tokens (~156/item across 55 items; 55 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management97
  • Stability observed for 29 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • All 5 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
  • An AI judge read all 55 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a current MCP spec version (2026-07-28).Pass
Install

How do I install the io.github.chrischall/gogcli-mcp-slides server?

io.github.chrischall/gogcli-mcp-slides runs locally as an npm package, launched with npx -y gogcli-mcp-slides. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

npm · gogcli-mcp-slides

# add to Claude Code
claude mcp add chrischall-gogcli-mcp-slides -- npx -y gogcli-mcp-slides
// .cursor/mcp.json
{
  "mcpServers": {
    "chrischall-gogcli-mcp-slides": {
      "command": "npx",
      "args": [
        "-y",
        "gogcli-mcp-slides"
      ]
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "chrischall-gogcli-mcp-slides": {
      "command": "npx",
      "args": [
        "-y",
        "gogcli-mcp-slides"
      ]
    }
  }
}
# add to Codex CLI
codex mcp add chrischall-gogcli-mcp-slides -- npx -y gogcli-mcp-slides
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "chrischall-gogcli-mcp-slides": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "gogcli-mcp-slides"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add chrischall-gogcli-mcp-slides --command npx --arg -y --arg gogcli-mcp-slides
# ~/.hermes/config.yaml
mcp_servers:
  chrischall-gogcli-mcp-slides:
    command: "npx"
    args: ["-y", "gogcli-mcp-slides"]
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "chrischall-gogcli-mcp-slides": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "gogcli-mcp-slides"
      ]
    }
  }
}
# add to Vellum
assistant mcp add chrischall-gogcli-mcp-slides -t stdio -c npx -a -y gogcli-mcp-slides
// mcp.json
{
  "mcpServers": {
    "chrischall-gogcli-mcp-slides": {
      "command": "npx",
      "args": [
        "-y",
        "gogcli-mcp-slides"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 20 Sept 26 +1
    • MCP protocol: Implements a current MCP spec version (2026-07-28). functional
    • Package version: 4.0.1 → 4.1.0 functional
  • 19 Sept 26 +15
    • Malware scan: unverified → pass security
  • 18 Sept 26 −14
    • Malware scan: pass → unverified security
    • Package version: 3.0.0 → 4.0.1 functional
  • 17 Sept 26 +1
    • Stability: 0.83 → unverified security
    • Tool safety: pass → unverified security
    • Capabilities: pass → unverified functional
    • Tool coverage: 100 → unverified functional
    • Dependency health: 0.85 → 1.00 functional
    • Schema quality: Schema quality not yet verified: we do not have a sandbox capture of the MCP schema this version of the package serves yet. functional
    • Package version: 2.30.0 → 3.0.0 functional
  • 16 Sept 26 −3
    • Stability: pass → 0.83 functional
  • 15 Sept 26 +15
    • Malware scan: unverified → pass security
  • 14 Sept 26 −14
    • Malware scan: pass → unverified security
    • Stability: 0.97 → unverified security
    • Tool safety: pass → unverified security
    • Stability: 0.97 → pass security
    • Capabilities: pass → unverified functional
    • Tool coverage: 100 → unverified functional
    • Schema quality: Schema quality not yet verified: we do not have a sandbox capture of the MCP schema this version of the package serves yet. functional
    • Package version: 2.29.1 → 2.30.0 functional
  • 13 Sept 26 −1
    • Stability: pass → 0.97 functional
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 20 Sept 2026 · Analysed npm/gogcli-mcp-slides@4.1.0

Provenance Verified

A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.

Result Verified
Ecosystem npm
Reason Verified
Discovered via Registry attestation endpoint
Source repo chrischall/gogcli-mcp
Certificate issuer https://token.actions.githubusercontent.com
Certificate SAN https://github.com/chrischall/gogcli-mcp/.github/workflows/release-please.yml@refs/heads/main
Rekor log index 2893922330
Predicate type https://slsa.dev/provenance/v1
Subject digest sha512:358c5d9651f60847f6fc91c963563a398ec5acff28005bc818f08f21fe8a0454106fa0336fca834a21b65d27881b2d17bf0df8db2c2af81150175f9a0

Background: How many MCP packages publish verified provenance →

Dependencies 4 packages
Packages resolved 4
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 55 exposed · ~8,592 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
gog_auth_add ~251

Authorize a Google account via browser-based OAuth. Opens a browser window where the user must sign in and grant access. Blocks for up to 5 minutes waiting for the user to complete authorization. If the browser does not open automatically, a fallback URL is included in the response. Use gog_auth_list to check which accounts are already configured.

NameTypeReqDescription
emailstringyesGoogle account email to authorize
extraScopesstringAdditional raw OAuth scope URIs to request, comma-separated, on top of the ones `services` implies. Use for scopes no service covers — e.g. https://www.googleapis.com/auth/bigquery.readonly, required…
servicesstringServices to authorize: "all" or comma-separated list (e.g. "sheets,gmail,calendar"). Default: "slides". Prefer the narrowest set you need — requesting a service whose Google API is not enabled on the…

No output schema declared.

No examples provided.

gog_auth_add_complete ~211

Complete REMOTE/headless Google authorization (step 2 of 2). Takes the full redirected localhost URL the user copied after finishing gog_auth_add_url, exchanges it for a refresh token, and stores it. Use the SAME `services` value you passed to gog_auth_add_url. Must run within 10 minutes of step 1 and against the same gogcli host.

NameTypeReqDescription
emailstringyesGoogle account email being authorized (same as step 1)
extraScopesstringExtra OAuth scope URIs — MUST match the value passed to gog_auth_add_url, for the same reason `services` must: the two steps have to describe the same grant.
redirectUrlstringyesThe full localhost redirect URL the user copied from the browser address bar after signing in (contains code and state; the page itself fails to load, which is expected).
servicesstringServices authorized — MUST match the value passed to gog_auth_add_url. Default: "slides".

No output schema declared.

No examples provided.

gog_auth_add_url ~337

Begin REMOTE/headless Google authorization (step 1 of 2). Returns a sign-in URL to open in any browser — no local server or terminal on the gogcli host is needed, so this works on a hosted deployment where the interactive gog_auth_add cannot. Hand the URL to the user; after they sign in, the browser is redirected to a localhost URL that fails to load — that is expected. They copy that full redirected URL (from the address bar) and you pass it to gog_auth_add_complete. The link is valid for 10 minutes. If you pass a custom `services` here, pass the SAME value to gog_auth_add_complete or the second step will not match this one.

NameTypeReqDescription
emailstringyesGoogle account email to authorize
extraScopesstringAdditional raw OAuth scope URIs to request, comma-separated, on top of the ones `services` implies. Use for scopes no service covers — e.g. https://www.googleapis.com/auth/bigquery.readonly, required…
servicesstringServices to authorize: "all" or comma-separated list (e.g. "sheets,gmail,calendar"). Default: "slides". Prefer the narrowest set you need — requesting a service whose Google API is not enabled on the…

No output schema declared.

No examples provided.

gog_auth_health ~198

Check the LIVE health of each stored Google account. Unlike gog_auth_status (which only reports keyring/config setup), this performs a real token refresh against Google, so it detects expired or revoked (invalid_grant) refresh tokens — the account-wide sign-out that blocks every service. Reports per account: whether the token is currently valid, the mapped cause when it is not, how long ago it was authorized, and a warning as it approaches the 7-day refresh-token limit that applies to OAuth apps whose consent screen is still in "Testing" mode. Run it proactively to re-authorize on your own schedule instead of mid-task. On a hosted deployment this is the ONLY check that measures Google: a connector showing "connected" or "refreshed" has verified the client's connection to the MCP host, and nothing else — the Google credential lives in gog's keyring on that host and can be dead while the connection looks perfectly healthy.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

gog_auth_list ~81

List the Google accounts stored in gogcli, with their scopes. This reads local configuration only — it does not contact Google and does NOT tell you whether an account still works: a signed-out account whose refresh token expired or was revoked is listed here exactly like a healthy one, scopes and all. Use gog_auth_health to check whether an account can actually authenticate.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

gog_auth_run ~108

Run any gog auth subcommand not covered by the other tools. Run `gog auth --help` for the full list of subcommands, or `gog auth <subcommand> --help` for flags on a specific subcommand. For browser-based authorization, use gog_auth_add instead.

NameTypeReqDescription
argsarrayyesAdditional positional args and flags
subcommandstringyesThe gog auth subcommand to run, e.g. "remove", "alias", "list"

No output schema declared.

No examples provided.

gog_auth_services ~24

List all Google services supported by gogcli and the OAuth scopes each requires.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

gog_auth_status ~66

Show gogcli auth CONFIGURATION: keyring backend, credential files, and auth setup. Despite the name this is not a health check — it reads local setup and does not contact Google, so it says nothing about whether an account can still authenticate. Use gog_auth_health for that.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

gog_slides_add_slide ~141

Add a new slide to a presentation from a local image, with optional speaker notes.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
beforestringInsert before this slide ID (default: append at end)
imagestringyesPath to the local image file
notesstringSpeaker notes text
notesFilestringPath to a file containing speaker notes
presentationIdstringyesPresentation ID

No output schema declared.

No examples provided.

gog_slides_bullets ~188

Turn paragraph bullets on or off for a UTF-16 paragraph range in one page element. Use on (optionally with a preset glyph) or off.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
objectIdstringyesObject ID of the shape or table cell containing the paragraphs
offbooleanTurn bullets off for the selected paragraphs
onbooleanTurn bullets on for the selected paragraphs
presentationIdstringyesPresentation ID
presetstringSlides bullet glyph preset to use with on (e.g. BULLET_DISC_CIRCLE_SQUARE)
rangestringyesUTF-16 paragraph range as start:end

No output schema declared.

No examples provided.

gog_slides_copy ~105

Copy a Google Slides presentation to a new presentation with the given title.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
parentstringDestination folder ID
presentationIdstringyesPresentation ID to copy
titlestringyesTitle for the new copy

No output schema declared.

No examples provided.

gog_slides_create ~106

Create a new Google Slides presentation, optionally in a folder or copying from a template.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
parentstringDestination folder ID
templatestringTemplate presentation ID to copy from
titlestringyesPresentation title

No output schema declared.

No examples provided.

gog_slides_create_from_markdown ~128

Create a new Google Slides presentation from markdown content (inline or from a file).

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
contentstringInline markdown content
contentFilestringPath to a markdown file
debugbooleanEnable debug output
parentstringDestination folder ID
titlestringyesPresentation title

No output schema declared.

No examples provided.

gog_slides_create_from_template ~156

Create a new Google Slides presentation from a template, with optional placeholder replacements.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
exactbooleanRequire exact placeholder matches
parentstringDestination folder ID
replacementsobjectPlaceholder replacements as a key/value object (emitted as --replace=k=v for each entry)
replacementsFilestringPath to a JSON file containing replacements
templateIdstringyesTemplate presentation ID
titlestringyesNew presentation title

No output schema declared.

No examples provided.

gog_slides_delete_slide ~89

Delete a slide from a Google Slides presentation.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
presentationIdstringyesPresentation ID
slideIdstringyesSlide ID to delete

No output schema declared.

No examples provided.

gog_slides_duplicate_slide ~115

Duplicate a slide by object ID, optionally placing the copy at a zero-based insertion index.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
presentationIdstringyesPresentation ID
slideIdstringyesSlide object ID to duplicate
toIndexintegerZero-based insertion index for the duplicated slide

No output schema declared.

No examples provided.

gog_slides_element_alt_text ~132

Set or clear a page element's accessibility title and/or description. Pass an empty string to clear a field.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
descriptionstringAccessibility description (empty string clears it)
objectIdstringyesObject ID of the element
presentationIdstringyesPresentation ID
titlestringAccessibility title (empty string clears it)

No output schema declared.

No examples provided.

gog_slides_element_create_line ~211

Create a native line on a slide. category is the connector routing (STRAIGHT, BENT, CURVED). Start position and extent are in unit (default PT).

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
categorystringLine category / routing (default: STRAIGHT)
heightnumberVertical extent
objectIdstringOptional stable object ID (5-50 chars: letters, digits, _, -, :)
presentationIdstringyesPresentation ID
slideIdstringyesSlide object ID to create the line on
unitstringGeometry unit (default: PT)
widthnumberHorizontal extent
xnumberStart X position
ynumberStart Y position

No output schema declared.

No examples provided.

gog_slides_element_create_shape ~225

Create a native shape on a slide. type is a Slides shape type (e.g. RECTANGLE, TEXT_BOX, ELLIPSE, ROUND_RECTANGLE). Position/size are in unit (default PT).

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
heightnumberShape height
objectIdstringOptional stable object ID (5-50 chars: letters, digits, _, -, :)
presentationIdstringyesPresentation ID
slideIdstringyesSlide object ID to create the shape on
typestringSlides shape type (e.g. RECTANGLE, TEXT_BOX, ELLIPSE)
unitstringGeometry unit (default: PT)
widthnumberShape width
xnumberLeft position
ynumberTop position

No output schema declared.

No examples provided.

gog_slides_element_delete ~91

Delete one page element by object ID.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
objectIdstringyesObject ID of the element to delete
presentationIdstringyesPresentation ID

No output schema declared.

No examples provided.

gog_slides_element_group ~108

Group two or more page elements into a single group.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
groupIdstringOptional stable group object ID
objectIdsarrayyesTwo or more element object IDs to group
presentationIdstringyesPresentation ID

No output schema declared.

No examples provided.

gog_slides_element_style ~223

Style a shape fill/outline or a line. Set kind to shape or line. Colors are #RGB or #RRGGBB.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
fillColorstringShape fill as #RGB or #RRGGBB
fillTransparentbooleanRemove the shape fill
kindstringElement kind (default: shape)
objectIdstringyesObject ID of the shape or line
outlineColorstringShape outline or line color as #RGB or #RRGGBB
outlineDashstringShape outline or line dash style
outlineTransparentbooleanRemove the shape outline or make the line transparent
outlineWeightnumberShape outline or line weight in points
presentationIdstringyesPresentation ID

No output schema declared.

No examples provided.

gog_slides_element_transform ~254

Move, resize, rotate, or shear a page element. apply-mode RELATIVE (default) composes with the existing transform; ABSOLUTE replaces it. Translation is in unit (default PT).

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
applyModestringCompose with (RELATIVE, default) or replace (ABSOLUTE) the existing transform
objectIdstringyesObject ID of the element to transform
presentationIdstringyesPresentation ID
rotatenumberClockwise rotation in degrees around the element origin
scaleXnumberX scale (omitted axis defaults to 1)
scaleYnumberY scale (omitted axis defaults to 1)
shearXnumberX shear
shearYnumberY shear
translateXnumberX translation
translateYnumberY translation
unitstringTranslation unit (default: PT)

No output schema declared.

No examples provided.

gog_slides_element_ungroup ~100

Ungroup one or more element groups back into their constituent elements.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
groupIdsarrayyesOne or more group object IDs to ungroup
presentationIdstringyesPresentation ID

No output schema declared.

No examples provided.

gog_slides_element_z_order ~103

Change a page element's stacking order.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
objectIdstringyesObject ID of the element to restack
operationstringyesStacking operation
presentationIdstringyesPresentation ID

No output schema declared.

No examples provided.

gog_slides_export ~127

Export a Google Slides presentation to a local file (pdf or pptx).

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
formatstringExport format (default: pptx)
outstringOutput file path
overwritebooleanOverwrite the output file if it already exists (gog refuses otherwise)
presentationIdstringyesPresentation ID

No output schema declared.

No examples provided.

gog_slides_info ~84

Get metadata for a Google Slides presentation (title, ID, slide count, etc.).

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
presentationIdstringyesPresentation ID

No output schema declared.

No examples provided.

gog_slides_insert_image ~321

Place an image on an existing slide at a given size and position, from a local file (image) or a public HTTPS URL (url — no Drive upload or sharing required). Unlike gog_slides_add_slide (which creates a new full-bleed image slide), this inserts onto a slide you already have. width is required; omit height to keep aspect ratio when using a local file (gog requires both width and height when using url).

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
heightnumberImage height, in unit; omit to keep the image's aspect ratio (required when using url)
imagestringPath to the local image file (exactly one of image or url)
presentationIdstringyesPresentation ID
slideIdstringyesSlide ID (object ID of the target slide)
unitstringMeasurement unit for x/y/width/height (default: PT)
urlstringPublic HTTPS image URL to insert directly — no Drive upload or sharing (exactly one of image or url). gog requires both width and height with url.
widthnumberyesImage width, in unit
xnumberLeft position of the image, in unit
ynumberTop position of the image, in unit

No output schema declared.

No examples provided.

gog_slides_insert_text ~212

Insert text into an existing page element (shape or table cell) by object ID. Target a table cell with zero-based row + col. Use replace=true to clear the element's existing text first.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
colinteger0-based table column index for cell-targeted text (requires row)
insertionIndexintegerZero-based index where text is inserted within the element's existing text
objectIdstringyesObject ID of the target shape or table
presentationIdstringyesPresentation ID
replacebooleanClear the element's existing text before inserting
rowinteger0-based table row index for cell-targeted text (requires col)
textstringyesText to insert

No output schema declared.

No examples provided.

gog_slides_link ~160

Apply or clear a hyperlink on a UTF-16 text range in one page element. Provide url to set the link, or clear=true to remove it.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
clearbooleanRemove the hyperlink from the selected range
objectIdstringyesObject ID of the shape or table cell containing the text
presentationIdstringyesPresentation ID
rangestringyesUTF-16 text range as start:end
urlstringExternal URL to apply as the hyperlink

No output schema declared.

No examples provided.

gog_slides_list_slides ~77

List slides in a Google Slides presentation.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
presentationIdstringyesPresentation ID

No output schema declared.

No examples provided.

gog_slides_locate ~209

Locate literal text in a presentation's shapes and table cells, returning the containing element object IDs and UTF-16 ranges needed for gog_slides_style_text / gog_slides_link / gog_slides_bullets / gog_slides_insert_text. Read-only.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
allbooleanReturn all matches instead of just one
failEmptybooleanTreat no matches as an error instead of returning an empty result
matchCasebooleanCase-sensitive matching
occurrenceintegerReturn the Nth occurrence (1-based; default: first)
pagestringLimit matches to one slide object ID
presentationIdstringyesPresentation ID
textstringyesLiteral text to locate

No output schema declared.

No examples provided.

gog_slides_move_slide ~112

Move a slide to a zero-based insertion index within the presentation.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
presentationIdstringyesPresentation ID
slideIdstringyesSlide object ID to move
toIndexintegeryesZero-based insertion index where the slide should be moved

No output schema declared.

No examples provided.

gog_slides_new_slide ~163

Create a new native themed slide with a predefined layout (default BLANK) or an exact presentation layout object ID, at a zero-based insertion index.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
indexintegerZero-based insertion index for the new slide
layoutstringPredefined slide layout (default: BLANK). Mutually exclusive with layoutId.
layoutIdstringExact presentation layout object ID (from gog_slides_info --json). Mutually exclusive with layout.
presentationIdstringyesPresentation ID

No output schema declared.

No examples provided.

gog_slides_raw ~126

Dump the raw Google Slides API response (Presentations.Get) as JSON — lossless presentation metadata including every page, element, and style. Use gog_slides_read_slide for a friendlier per-slide view.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
presentationIdstringyesPresentation ID
prettybooleanPretty-print the JSON (default: compact single line)

No output schema declared.

No examples provided.

gog_slides_read_slide ~145

Read the content of a slide (text, shapes, speaker notes). Set detail=true to also include normalized element geometry, styled text runs, paragraphs, table-cell content, and image source URLs.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
detailbooleanInclude normalized element geometry, styled text runs, paragraphs, table-cell content, and image source URLs
presentationIdstringyesPresentation ID
slideIdstringyesSlide ID to read

No output schema declared.

No examples provided.

gog_slides_replace_slide ~191

Replace the image content of an existing slide, from a local file (image) or a public HTTPS URL (url — no Drive upload or sharing required), with optional speaker notes.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
imagestringPath to the new local image file (exactly one of image or url)
notesstringSpeaker notes text
notesFilestringPath to a file containing speaker notes
presentationIdstringyesPresentation ID
slideIdstringyesSlide ID to replace
urlstringPublic HTTPS image URL to use directly — no Drive upload or sharing (exactly one of image or url)

No output schema declared.

No examples provided.

gog_slides_replace_text ~212

Find-and-replace text within an explicit scope. You MUST choose a scope — restrict to a single shape (object), one or more slides (pages), or the entire presentation (all=true). There is no whole-deck default; gog rejects the call if no scope is given.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
allbooleanScope: replace matching text across the entire presentation
findstringyesText to find
matchCasebooleanCase-sensitive match (default: false)
objectstringScope: restrict replacement to a single shape text object ID
pagesarrayScope: restrict replacement to these slide object IDs (repeatable)
presentationIdstringyesPresentation ID
replacementstringyesReplacement text

No output schema declared.

No examples provided.

gog_slides_run ~149

Run any gog slides subcommand not covered by the other tools. Run `gog slides --help` for the full list of subcommands, or `gog slides <subcommand> --help` for flags on a specific subcommand.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
argsarrayyesAdditional positional args and flags
subcommandstringyesThe gog slides subcommand to run, e.g. "add-slide", "delete-slide", "update-notes"

No output schema declared.

No examples provided.

gog_slides_skip_slide ~162

Skip a slide during presentation — it stays in the deck at its current position but is not shown when presenting (and is left out of a PDF export). Use this instead of gog_slides_delete_slide when a slide should be omitted from a talk without losing it. Reverse with gog_slides_unskip_slide; gog_slides_list_slides reports which slides are skipped.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
presentationIdstringyesPresentation ID
slideIdstringyesSlide ID to skip (from gog_slides_list_slides)

No output schema declared.

No examples provided.

gog_slides_style_text ~249

Apply range-scoped text styling to one page element. range is a UTF-16 start:end span (use gog_slides_locate to find it). Boolean flags set the attribute; the no* flags clear it.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
boldbooleanSet bold
fontstringFont family (e.g. Arial, Georgia)
italicbooleanSet italic
noBoldbooleanClear bold
noItalicbooleanClear italic
noUnderlinebooleanClear underline
objectIdstringyesObject ID of the shape or table cell containing the text
presentationIdstringyesPresentation ID
rangestringyesUTF-16 text range as start:end
sizenumberFont size in points
textColorstringText color as #RRGGBB or #RGB
underlinebooleanSet underline

No output schema declared.

No examples provided.

gog_slides_table_border_style ~223

Style borders around or within a zero-based table cell range. position selects which borders are affected; dash sets the line style.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
borderColorstringBorder color as #RGB or #RRGGBB
colintegeryes0-based starting column index
colSpanintegerNumber of columns in the range
dashstringBorder dash style
positionstringWhich borders to style
presentationIdstringyesPresentation ID
rowintegeryes0-based starting row index
rowSpanintegerNumber of rows in the range
tableObjectIdstringyesTable object ID
transparentbooleanMake the selected borders transparent
weightnumberBorder weight in points

No output schema declared.

No examples provided.

gog_slides_table_cell_style ~324

Style one zero-based table cell: background fill, vertical content alignment, and inline text styling (optionally scoped to a UTF-16 range within the cell). Boolean flags set the attribute; the no* flags clear it.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
boldbooleanSet bold
colintegeryes0-based table column index
contentAlignstringVertical content alignment within the cell
fillColorstringCell background fill as #RGB or #RRGGBB
fillTransparentbooleanRemove the cell background fill
fontstringFont family (e.g. Arial, Georgia)
italicbooleanSet italic
noBoldbooleanClear bold
noItalicbooleanClear italic
noUnderlinebooleanClear underline
presentationIdstringyesPresentation ID
rangestringUTF-16 text range as start:end to scope text styling within the cell
rowintegeryes0-based table row index
sizenumberFont size in points
tableObjectIdstringyesTable object ID
textColorstringText color as #RRGGBB or #RGB
underlinebooleanSet underline

No output schema declared.

No examples provided.

gog_slides_table_column_delete ~105

Delete the column containing a zero-based table cell.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
colintegeryes0-based column index to delete
presentationIdstringyesPresentation ID
tableObjectIdstringyesTable object ID

No output schema declared.

No examples provided.

gog_slides_table_column_insert ~158

Insert one or more columns relative to a zero-based table column. Inserts to the left by default, or to the right with right=true.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
colintegeryes0-based reference column index
countintegerNumber of columns to insert (default: 1)
presentationIdstringyesPresentation ID
rightbooleanInsert to the right of the reference column instead of the left
tableObjectIdstringyesTable object ID

No output schema declared.

No examples provided.

gog_slides_table_column_size ~114

Set the width of a zero-based table column.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
colintegeryes0-based column index
presentationIdstringyesPresentation ID
tableObjectIdstringyesTable object ID
widthnumberyesColumn width in points

No output schema declared.

No examples provided.

gog_slides_table_create ~152

Create an auto-sized native table on a slide with the given row and column counts.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
colsintegeryesNumber of columns (>=1)
objectIdstringOptional stable table object ID (5-50 chars: letters, digits, _, -, :)
presentationIdstringyesPresentation ID
rowsintegeryesNumber of rows (>=1)
slideIdstringyesSlide object ID to create the table on

No output schema declared.

No examples provided.

gog_slides_table_merge ~167

Merge a rectangular table cell range starting at a zero-based cell. Content of non-anchor cells is absorbed by the merge; use gog_slides_table_unmerge to split back.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
colintegeryes0-based anchor column index
colSpanintegerNumber of columns to merge
presentationIdstringyesPresentation ID
rowintegeryes0-based anchor row index
rowSpanintegerNumber of rows to merge
tableObjectIdstringyesTable object ID

No output schema declared.

No examples provided.

gog_slides_table_row_delete ~105

Delete the row containing a zero-based table cell.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
presentationIdstringyesPresentation ID
rowintegeryes0-based row index to delete
tableObjectIdstringyesTable object ID

No output schema declared.

No examples provided.

gog_slides_table_row_insert ~150

Insert one or more rows relative to a zero-based table row. Inserts above by default, or below with below=true.

NameTypeReqDescription
accountstringGoogle account email to use, e.g. you@gmail.com — must be the full address, not a bare username. Overrides the GOG_ACCOUNT env var. Omit to use the single configured account.
belowbooleanInsert below the reference row instead of above
countintegerNumber of rows to insert (default: 1)
presentationIdstringyesPresentation ID
rowintegeryes0-based reference row index
tableObjectIdstringyesTable object ID

No output schema declared.

No examples provided.

Common questions

What is the io.github.chrischall/gogcli-mcp-slides server?

io.github.chrischall/gogcli-mcp-slides is listed in the public MCP registry as io.github.chrischall/gogcli-mcp-slides. Google Slides via gogcli for Claude, deck and slide authoring. This page covers its npm package (gogcli-mcp-slides).

Is the io.github.chrischall/gogcli-mcp-slides server safe to use?

io.github.chrischall/gogcli-mcp-slides scores 94 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 20 September 2026. It declares no install or post-install scripts. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the io.github.chrischall/gogcli-mcp-slides server expose?

io.github.chrischall/gogcli-mcp-slides exposes 55 tools: gog_auth_list, gog_auth_status, gog_auth_health, gog_auth_services, gog_auth_add, and 50 more. Their descriptions and schemas cost roughly 8,592 tokens of context every time the server is loaded.

Is the io.github.chrischall/gogcli-mcp-slides server still maintained?

io.github.chrischall/gogcli-mcp-slides is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the io.github.chrischall/gogcli-mcp-slides server under?

io.github.chrischall/gogcli-mcp-slides declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.