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-drive

NPM · GOGCLI-MCP-DRIVE · SCANNED SEP 20

Google Drive via gogcli for Claude — search, upload, download, permissions

Available components

0 this week 93 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 Usability68
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 8400 tokens (~168/item across 50 items; 50 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 4 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
  • An AI judge read all 50 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-drive server?

io.github.chrischall/gogcli-mcp-drive runs locally as an npm package, launched with npx -y gogcli-mcp-drive. 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-drive

# add to Claude Code
claude mcp add chrischall-gogcli-mcp-drive -- npx -y gogcli-mcp-drive
// .cursor/mcp.json
{
  "mcpServers": {
    "chrischall-gogcli-mcp-drive": {
      "command": "npx",
      "args": [
        "-y",
        "gogcli-mcp-drive"
      ]
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "chrischall-gogcli-mcp-drive": {
      "command": "npx",
      "args": [
        "-y",
        "gogcli-mcp-drive"
      ]
    }
  }
}
# add to Codex CLI
codex mcp add chrischall-gogcli-mcp-drive -- npx -y gogcli-mcp-drive
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "chrischall-gogcli-mcp-drive": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "gogcli-mcp-drive"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add chrischall-gogcli-mcp-drive --command npx --arg -y --arg gogcli-mcp-drive
# ~/.hermes/config.yaml
mcp_servers:
  chrischall-gogcli-mcp-drive:
    command: "npx"
    args: ["-y", "gogcli-mcp-drive"]
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "chrischall-gogcli-mcp-drive": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "gogcli-mcp-drive"
      ]
    }
  }
}
# add to Vellum
assistant mcp add chrischall-gogcli-mcp-drive -t stdio -c npx -a -y gogcli-mcp-drive
// mcp.json
{
  "mcpServers": {
    "chrischall-gogcli-mcp-drive": {
      "command": "npx",
      "args": [
        "-y",
        "gogcli-mcp-drive"
      ]
    }
  }
}
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 0
    • MCP protocol: Implements a current MCP spec version (2026-07-28). functional
    • Package version: 4.0.1 → 4.1.0 functional
  • 19 Sept 26 +16
    • Malware scan: unverified → pass security
  • 18 Sept 26 −15
    • 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 −2
    • Stability: pass → 0.83 functional
  • 15 Sept 26 +15
    • Malware scan: unverified → pass security
  • 14 Sept 26 −15
    • 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 0
    • 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-drive@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 2893922199
Predicate type https://slsa.dev/provenance/v1
Subject digest sha512:a78e1773004123eeb41fc49f47182ba2175e34a8f877ebca61493e6d4b6f98b26ecd9a6aa7f073812cb11da402899f0c4289956d73e3e726cf7be86ba

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 · 50 exposed · ~8,400 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 ~259

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: "drive,driveactivity,drivelabels". Prefer the narrowest set you need — requesting a service whose Google…

No output schema declared.

No examples provided.

gog_auth_add_complete ~219

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: "drive,driveactivity,drivelabels".

No output schema declared.

No examples provided.

gog_auth_add_url ~345

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: "drive,driveactivity,drivelabels". Prefer the narrowest set you need — requesting a service whose Google…

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_drive_activity ~324

Query the Drive Activity API for audit events (edits, creates, deletes, moves, shares, etc.) scoped to a file or folder and/or time range.

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.
actionsstringComma-separated action filters: edit,create,delete,move,rename,restore,comment,share,label,dlp,reference,settings
allbooleanFetch all pages
consolidatebooleanUse Drive Activity legacy consolidation strategy
filestringDrive file ID to query
filterstringRaw Drive Activity filter expression appended with AND
folderstringDrive folder ID; includes descendants
fromstringLower activity time bound (RFC3339)
maxnumberPage size (default: 10)
pagestringDeprecated alias for pageToken, accepted so existing callers keep working. Use pageToken — it matches the nextPageToken field in the response.
pageTokenstringCursor for the NEXT page. Pass back the nextPageToken from a previous response verbatim, keeping the query and max identical: call once, then call again with pageToken=<that value>. A response with N…
tostringUpper activity time bound (RFC3339)

No output schema declared.

No examples provided.

gog_drive_audit_sharing ~229

Audit Drive sharing without mutation — find public (anyone-with-link) or external permissions across a folder tree or a single 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.
depthnumberMax folder depth (0 = unlimited; default: 2)
externalOnlybooleanOnly report external user/group/domain permissions
filestringAudit one file ID instead of a folder tree
internalDomainarrayDomains treated as internal (defaults to account email domain)
maxnumberMax files/folders to scan (0 = unlimited; default: 500)
noAllDrivesbooleanMy Drive only — exclude shared drives (shared drives are included by default)
parentstringFolder ID to scan (default: root)
publicOnlybooleanOnly report anyone-with-link/public permissions

No output schema declared.

No examples provided.

gog_drive_audit_user ~189

Audit Drive sharing without mutation — find permissions granted to a specific user across a folder tree or a single 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.
depthnumberMax folder depth (0 = unlimited; default: 2)
filestringAudit one file ID instead of a folder tree
maxnumberMax files/folders to scan (0 = unlimited; default: 500)
noAllDrivesbooleanMy Drive only — exclude shared drives (shared drives are included by default)
parentstringFolder ID to scan (default: root)
userstringyesUser email to audit permissions for

No output schema declared.

No examples provided.

gog_drive_changes_list ~253

List Drive changes since a page token (for sync/automation). Get the initial token from gog_drive_changes_start_token; the response includes a newStartPageToken to persist for the next poll.

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.
allbooleanFetch all pages
drivestringShared drive ID for a shared-drive change log
includeRemovedbooleanInclude removed changes
maxnumberMax results (default: 100)
pagestringDeprecated alias for pageToken, accepted so existing callers keep working. Use pageToken — it matches the nextPageToken field in the response.
pageTokenstringCursor for the NEXT page. Pass back the nextPageToken from a previous response verbatim, keeping the query and max identical: call once, then call again with pageToken=<that value>. A response with N…
tokenstringyesStart page token or next page token

No output schema declared.

No examples provided.

gog_drive_changes_start_token ~98

Get a Drive changes start page token — the cursor you pass to gog_drive_changes_list to enumerate changes since this point.

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.
drivestringShared drive ID for a shared-drive change log

No output schema declared.

No examples provided.

gog_drive_comments_add ~85

Add a new comment to a Drive 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.
contentstringyesComment text
fileIdstringyesFile ID

No output schema declared.

No examples provided.

gog_drive_comments_delete ~87

Delete a comment from a Drive 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.
commentIdstringyesComment ID to delete
fileIdstringyesFile ID

No output schema declared.

No examples provided.

gog_drive_comments_get ~88

Get a single comment on a Drive file by 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.
commentIdstringyesComment ID
fileIdstringyesFile ID

No output schema declared.

No examples provided.

gog_drive_comments_list ~239

List comments on a Drive 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.
allbooleanFetch all pages
fileIdstringyesFile ID
includeQuotedbooleanInclude the quoted content each comment is anchored to
maxintegerMax results
pagestringDeprecated alias for pageToken, accepted so existing callers keep working. Use pageToken — it matches the nextPageToken field in the response.
pageTokenstringCursor for the NEXT page. Pass back the nextPageToken from a previous response verbatim, keeping the query and max identical: call once, then call again with pageToken=<that value>. A response with N…
sincestringOnly return comments modified at or after this RFC3339 timestamp (e.g. 2026-06-01T00:00:00Z)

No output schema declared.

No examples provided.

gog_drive_comments_reopen ~108

Reopen a previously resolved comment on a Drive file. To reopen while replying, use gog_drive_comments_reply with action: "reopen".

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.
commentIdstringyesComment ID to reopen
fileIdstringyesFile ID

No output schema declared.

No examples provided.

gog_drive_comments_reply ~161

Reply to an existing comment on a Drive file. Pass `action: "resolve"` or `"reopen"` to atomically flip the parent comment's resolved state via the Drive API's Reply.action field — avoids the older workaround of deleting the comment (which destroys review-thread context).

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.
actionstringOptional action on the parent comment alongside the reply
commentIdstringyesComment ID to reply to
contentstringyesReply text
fileIdstringyesFile ID

No output schema declared.

No examples provided.

gog_drive_comments_resolve ~113

Resolve a comment on a Drive file (mark as done) without posting a reply. To resolve while replying, use gog_drive_comments_reply with action: "resolve".

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.
commentIdstringyesComment ID to resolve
fileIdstringyesFile ID

No output schema declared.

No examples provided.

gog_drive_comments_update ~97

Update the text of an existing comment.

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.
commentIdstringyesComment ID to update
contentstringyesNew comment text
fileIdstringyesFile ID

No output schema declared.

No examples provided.

gog_drive_copy ~103

Copy a Drive file to a new file with the given name.

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.
fileIdstringyesFile ID to copy
namestringyesName for the new copy
parentstringDestination folder ID

No output schema declared.

No examples provided.

gog_drive_delete ~105

Move a Google Drive file to trash, or permanently delete it with permanent=true (irreversible).

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.
fileIdstringyesFile ID to delete
permanentbooleanPermanently delete instead of moving to trash (irreversible)

No output schema declared.

No examples provided.

gog_drive_download ~179

Download a Drive file to the local filesystem. For Google Docs formats, specify an export format (pdf, csv, xlsx, pptx, txt, png, docx, md).

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.
fileIdstringyesFile ID to download
formatstringExport format for Google Docs: pdf, csv, xlsx, pptx, txt, png, docx, md (default: inferred)
outstringOutput file path (default: gogcli config dir)
overwritebooleanOverwrite the output file if it already exists (gog refuses otherwise)

No output schema declared.

No examples provided.

gog_drive_drives_list ~205

List shared drives (Team Drives) accessible to the account.

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.
allbooleanFetch all pages
maxnumberMax results (default: 100, max allowed: 100)
pagestringDeprecated alias for pageToken, accepted so existing callers keep working. Use pageToken — it matches the nextPageToken field in the response.
pageTokenstringCursor for the NEXT page. Pass back the nextPageToken from a previous response verbatim, keeping the query and max identical: call once, then call again with pageToken=<that value>. A response with N…
querystringSearch query for filtering shared drives

No output schema declared.

No examples provided.

gog_drive_du ~175

Summarize Drive folder sizes (disk-usage style) starting from a folder.

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.
depthnumberDepth for folder totals (default: 1)
maxnumberMax folders to return (0 = unlimited; default: 50)
noAllDrivesbooleanMy Drive only — exclude shared drives (shared drives are included by default)
orderstringSort order (default: desc)
parentstringFolder ID to start from (default: root)
sortstringSort key (default: size)

No output schema declared.

No examples provided.

gog_drive_extract_text ~274

Extract readable TEXT from a Drive file — PDF, image, docx, or a native Google Doc — and return it to you directly (closing the webViewLink dead end). Accepts a Drive file id, including the id from gog_gmail_attachment's deliveredVia:"drive" response. For non-Docs it copies the file to a temporary Google Doc so Drive OCRs it (works for scanned PDFs too), exports plain text, then deletes the temp Doc. Operates entirely via the Drive API within the existing drive scope — no host filesystem, no scope widening. For a large file, page through with offset/maxChars.

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.
fileIdstringyesDrive file ID (e.g. the id returned by gog_gmail_attachment)
maxCharsintegerMax characters to return (default: all from offset)
ocrLanguagestringBCP-47 language hint for OCR of scanned/image PDFs (e.g. "en", "fr"). Optional.
offsetintegerCharacter offset to start from (default: 0)

No output schema declared.

No examples provided.

gog_drive_get ~142

Get metadata for a Google Drive 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.
fileIdstringyesFile ID
viewstringResponse shape: "compact" (default) drops fields the response already carries elsewhere; "full" returns every field this server understands. compact (the default) drops thumbnailLink — a URL a model…

No output schema declared.

No examples provided.

gog_drive_labels_file_apply ~266

Apply or update a label on a Drive file, optionally setting field values. Each field flag takes "fieldId=value" entries (repeatable). selection/integer/date/user values may be comma-separated within one entry for multi-valued fields.

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.
datearrayDate fields as fieldId=YYYY-MM-DD[,YYYY-MM-DD] (repeatable)
fieldsJsonstringSimple JSON object of fieldId to string/number/bool/string-array values
fileIdstringyesFile ID
integerarrayInteger fields as fieldId=123[,456] (repeatable)
labelIdstringyesLabel ID to apply
selectionarraySelection fields as fieldId=choiceId[,choiceId] (repeatable)
textarrayText fields as fieldId=value (repeatable)
unsetarrayField IDs to unset (repeatable)
userarrayUser fields as fieldId=email[,email] (repeatable)

No output schema declared.

No examples provided.

gog_drive_labels_file_list ~182

List labels applied to a Drive 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.
fileIdstringyesFile ID
maxnumberMax results (default: 100)
pagestringDeprecated alias for pageToken, accepted so existing callers keep working. Use pageToken — it matches the nextPageToken field in the response.
pageTokenstringCursor for the NEXT page. Pass back the nextPageToken from a previous response verbatim, keeping the query and max identical: call once, then call again with pageToken=<that value>. A response with N…

No output schema declared.

No examples provided.

gog_drive_labels_file_remove ~88

Remove a label from a Drive 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.
fileIdstringyesFile ID
labelIdstringyesLabel ID to remove

No output schema declared.

No examples provided.

gog_drive_labels_get ~136

Get a single Drive label schema by name (e.g. "labels/abc123").

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.
adminAccessbooleanUse admin access for Workspace admin accounts
languagestringBCP-47 language code
namestringyesLabel schema name (e.g. labels/abc123)
viewstringLabel view (default: LABEL_VIEW_FULL)

No output schema declared.

No examples provided.

gog_drive_labels_list ~246

List Drive label schemas available to the account.

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.
adminAccessbooleanUse admin access for Workspace admin accounts
languagestringBCP-47 language code
maxintegerMax results
minimumRolestringMinimum role filter (e.g. READER, APPLIER, ORGANIZER)
pagestringDeprecated alias for pageToken, accepted so existing callers keep working. Use pageToken — it matches the nextPageToken field in the response.
pageTokenstringCursor for the NEXT page. Pass back the nextPageToken from a previous response verbatim, keeping the query and max identical: call once, then call again with pageToken=<that value>. A response with N…
publishedOnlybooleanOnly list published labels
viewstringLabel view (default: LABEL_VIEW_BASIC)

No output schema declared.

No examples provided.

gog_drive_ls ~302

List files in a Google Drive folder (default: root).

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.
allDrivesbooleanInclude shared drives (default: true). Set false for My Drive only.
folderIdstringFolder ID to list (default: root)
maxnumberMax results (default: 20)
pagestringDeprecated alias for pageToken, accepted so existing callers keep working. Use pageToken — it matches the nextPageToken field in the response.
pageTokenstringCursor for the NEXT page. Pass back the nextPageToken from a previous response verbatim, keeping the query and max identical: call once, then call again with pageToken=<that value>. A response with N…
querystringDrive query filter (e.g. "name contains 'budget'")
viewstringResponse shape: "compact" (default) drops fields the response already carries elsewhere; "full" returns every field this server understands. compact (the default) drops owners, parents, thumbnailLink…

No output schema declared.

No examples provided.

gog_drive_mkdir ~74

Create a new folder in Google Drive.

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.
namestringyesFolder name

No output schema declared.

No examples provided.

gog_drive_move ~90

Move a file to a different folder in Google Drive.

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.
fileIdstringyesFile ID to move
parentIdstringyesDestination folder ID

No output schema declared.

No examples provided.

gog_drive_permissions ~179

List permissions on a Drive 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.
fileIdstringyesFile ID
maxnumberMax results (default: 100)
pagestringDeprecated alias for pageToken, accepted so existing callers keep working. Use pageToken — it matches the nextPageToken field in the response.
pageTokenstringCursor for the NEXT page. Pass back the nextPageToken from a previous response verbatim, keeping the query and max identical: call once, then call again with pageToken=<that value>. A response with N…

No output schema declared.

No examples provided.

gog_drive_read_bytes ~120

Fetch a Drive file's raw bytes and return them base64-encoded as an embedded resource — the generic fallback for callers that want the file itself (to parse locally) rather than extracted text. For readable text from a PDF, prefer gog_drive_extract_text.

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.
fileIdstringyesDrive file ID

No output schema declared.

No examples provided.

gog_drive_rename ~88

Rename a file or folder in Google Drive.

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.
fileIdstringyesFile or folder ID
newNamestringyesNew name

No output schema declared.

No examples provided.

gog_drive_revisions_get ~104

Get one revision of a Drive file by revision ID (metadata + export links). Find revision IDs with gog_drive_revisions_list.

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.
fileIdstringyesFile ID
revisionIdstringyesRevision ID

No output schema declared.

No examples provided.

gog_drive_revisions_list ~198

List a file's revision history — paged revision metadata plus provider export links for each revision.

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.
allbooleanFetch all pages
fileIdstringyesFile ID
maxintegerMax results
pagestringDeprecated alias for pageToken, accepted so existing callers keep working. Use pageToken — it matches the nextPageToken field in the response.
pageTokenstringCursor for the NEXT page. Pass back the nextPageToken from a previous response verbatim, keeping the query and max identical: call once, then call again with pageToken=<that value>. A response with N…

No output schema declared.

No examples provided.

gog_drive_run ~147

Run any gog drive subcommand not covered by the other tools. Run `gog drive --help` for the full list of subcommands, or `gog drive <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 drive subcommand to run, e.g. "copy", "upload", "download", "permissions"

No output schema declared.

No examples provided.

gog_drive_search ~142

Search Google Drive files by full-text query.

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.
querystringyesSearch query
viewstringResponse shape: "compact" (default) drops fields the response already carries elsewhere; "full" returns every field this server understands. compact (the default) drops thumbnailLink — a URL a model…

No output schema declared.

No examples provided.

gog_drive_share ~127

Share a Google Drive file or folder.

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.
domainstringDomain (required when to=domain)
emailstringUser email (required when to=user)
fileIdstringyesFile or folder ID
rolestringPermission role (default: reader)
tostringyesShare target type

No output schema declared.

No examples provided.

gog_drive_shortcut_create ~134

Create a Drive shortcut to a file or folder inside a destination folder. Shortcuts are classified distinctly in listing/tree output and are never followed by tree scans.

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.
namestringShortcut name (default: the target's name)
parentstringyesDestination folder ID for the shortcut
targetIdstringyesFile or folder ID the shortcut points to

No output schema declared.

No examples provided.

gog_drive_sync_push ~186

Recursively push a local directory's contents into an existing Drive folder — uploads new files, updates changed ones (matched by name + MD5), and creates missing subfolders. One-way and additive: it never deletes anything on Drive. Use dryRun to preview the planned actions 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.
allDrivesbooleanInclude shared drives (default: true; set false for My Drive only)
dryRunbooleanPreview the planned actions without making any changes
localPathstringyesLocal directory to push (its contents are mirrored into the parent folder)
parentstringyesExisting destination Drive folder ID

No output schema declared.

No examples provided.

gog_drive_tree ~145

Print a read-only folder tree starting from a folder.

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.
depthnumberMax depth (0 = unlimited; default: 2)
maxnumberMax items to return (0 = unlimited; default: 0)
noAllDrivesbooleanMy Drive only — exclude shared drives (shared drives are included by default)
parentstringFolder ID to start from (default: root)

No output schema declared.

No examples provided.

gog_drive_unshare ~96

Remove a permission from a Drive file. Get the permissionId from gog_drive_permissions.

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.
fileIdstringyesFile ID
permissionIdstringyesPermission ID to remove

No output schema declared.

No examples provided.

gog_drive_upload ~711

Upload a file to Drive. Supply it EITHER as localPath (a path on the gog server's own filesystem — local stdio deployments only) OR as content (the bytes, base64-encoded, carried with the request), which is what works when this server runs remotely from you and no path you can name exists on it. Use replace to replace the content of an existing file (preserves link/permissions), or convert to auto-convert to a Google format. Pair replace with ifVersion to make the overwrite conditional: gog sends an atomic If-Match precondition and reports a conflict — applying nothing — if the file changed since you read it, instead of silently clobbering a concurrent edit. No read tool surfaces the version number: fetch it immediately before uploading with gog_drive_run { subcommand: "raw", args: ["<fileId>", "--fields=version"] } — it comes back as a JSON string, so pass it on as a number. Conditional replacement refuses Google Workspace files (Docs/Sheets/Slides), which have no replaceable binary content.

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.
contentstringThe file's bytes, base64-encoded (standard alphabet, with padding) — upload a file you hold without it existing anywhere on the gog server. This is the only route that works when the caller and gog s…
convertbooleanAuto-convert to native Google format based on file extension (create only)
convertTostringConvert to a specific Google format: doc | sheet | slides (create only)
ifVersionintegerReplace only if the Drive file is still at this version (requires replace). On mismatch nothing is written and gog reports a conflict — re-read the file and reapply your edit. Read the current versio…
keepRevisionForeverbooleanKeep the new head revision forever (binary files only)
localPathstringPath to the file to upload, resolved ON THE GOG SERVER's filesystem — NOT this client's. Only usable when gog runs on the same machine you do (local stdio); on a hosted deployment (e.g. mcp-host) thi…
mimeTypestringOverride MIME type inference
namestringOverride filename (create) or rename target (replace)
parentstringDestination folder ID (create only)
replacestringReplace content of an existing Drive file ID (preserves link/permissions). Unconditional unless ifVersion is set.

No output schema declared.

No examples provided.

gog_drive_url ~85

Print shareable web URLs for one or more Drive files.

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.
fileIdsarrayyesOne or more file IDs to get URLs for

No output schema declared.

No examples provided.

Common questions

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

io.github.chrischall/gogcli-mcp-drive is listed in the public MCP registry as io.github.chrischall/gogcli-mcp-drive. Google Drive via gogcli for Claude, search, upload, download, permissions. This page covers its npm package (gogcli-mcp-drive).

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

io.github.chrischall/gogcli-mcp-drive scores 93 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-drive server expose?

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

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

io.github.chrischall/gogcli-mcp-drive 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-drive server under?

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