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

NPM · GOGCLI-MCP

Google Sheets (and more) for Claude via gogcli — read, write, and manage spreadsheets

Available components

0 this week 93 Trust /100

Last scanned (3 hours ago)

Scores higher than 96% of npm servers

Category Data and Analytics

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 Usability63
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 28529 tokens (~248/item across 115 items; 115 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 Management100
  • No destabilizing schema changes in the last 30 days.Pass
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 10 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
  • An AI judge read all 115 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
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.

  • 4 Nov 26 0
    • Stability: pass → unverified ▼ security
    • Tool safety: pass → unverified ▼ security
    • Capabilities: pass → unverified ▼ functional
    • Tool coverage: 100 → unverified ▼ functional
    • Package version: 4.8.1 → 4.9.1 functional
  • 24 Oct 26 0
    • Package version: 4.8.0 → 4.8.1 functional
  • 17 Oct 26 +12
    • Known CVEs: unverified → pass ▲ security
    • Stability: 0.97 → pass security
    • Dependency health: unverified → 1.00 ▲ functional
  • 16 Oct 26 −11
    • Stability: 0.93 → unverified ▼ security
    • Known CVEs: pass → unverified ▼ security
    • Tool safety: pass → unverified ▼ security
    • Capabilities: pass → unverified ▼ functional
    • Dependency health: 1.00 → unverified ▼ functional
    • Tool coverage: 100 → unverified ▼ functional
    • Package version: 4.8.0 → 4.8.1 functional
  • 15 Oct 26 −1
    • Stability: pass → 0.93 functional
  • 14 Oct 26 +44
    • Injection markers: unverified → pass ▲ security
    • Stability: unverified → pass ▲ security
    • Tool coverage: unverified → 100 ▲ functional
    • MCP protocol: unverified → pass ▲ functional
  • 12 Oct 26 0
    • Security disclosure: unverified → fail ▼ functional
    • Package version: 4.7.1 → 4.8.0 functional
  • 11 Oct 26 −44
    • Stability: pass → unverified ▼ security
    • Tool safety: pass → unverified ▼ security
    • Capabilities: pass → unverified ▼ functional
    • Security disclosure: fail → 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: 4.6.1 → 4.7.1 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 5 Nov 2026 · Analysed npm/gogcli-mcp@4.9.1

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 3691860127
Predicate type SLSA build provenance https://slsa.dev/provenance/v1
Subject digest sha512:9c666a12d9c76ee2605fd95d494f9e71907ede5d33f5255bb131c63594588a9ecb208836c5cabdc2ac2eadd130ace09a20b33572ddb1ea2f136bc1c46

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 · 115 exposed · ~28,529 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_classroom_roster ~226

List the full roster (students and/or teachers) of a Google Classroom course. Omit both flags to return both groups.

NameTypeReqDescription
accountstring–Google 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.
allboolean–Fetch all pages
courseIdstringyesCourse ID
maxnumber–Max results per page
pagestring–Deprecated alias for pageToken, accepted so existing callers keep working. Use pageToken — it matches the nextPageToken field in the response.
pageTokenstring–Cursor 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…
studentsboolean–Include students only
teachersboolean–Include teachers only

No output schema declared.

No examples provided.

gog_classroom_run ~287

Run any gog classroom subcommand not covered by the other tools. Run `gog classroom --help` for the full list of subcommands, or `gog classroom <subcommand> --help` for flags on a specific subcommand. Flags that override server safety controls (--readonly, --enable-commands, --disable-commands, --account, --access-token, --home, --client, --gmail-no-send, --no-input) and a bare "--" are refused. Local file paths (--out, --out-dir, --attach, --file, --*-file, @file JSON) must be inside GOG_FILE_ROOTS; subcommands that take a local path positionally (e.g. drive upload) are refused in favour of their dedicated tools. Covers anything not wrapped by the dedicated tools (guardians, guardian-invitations, materials, coursework assignees, announcement assignees, etc.).

NameTypeReqDescription
accountstring–Google 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 classroom subcommand to run, e.g. "guardians", "materials", "guardian-invitations"

No output schema declared.

No examples provided.

gog_classroom_students_get ~88

Get a specific student enrolled in a course.

NameTypeReqDescription
accountstring–Google 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.
courseIdstringyesCourse ID
userIdstringyesStudent user ID

No output schema declared.

No examples provided.

gog_classroom_students_list ~190

List students enrolled in a Google Classroom course.

NameTypeReqDescription
accountstring–Google 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.
allboolean–Fetch all pages
courseIdstringyesCourse ID
maxnumber–Max results per page
pagestring–Deprecated alias for pageToken, accepted so existing callers keep working. Use pageToken — it matches the nextPageToken field in the response.
pageTokenstring–Cursor 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_classroom_submissions_get ~96

Get a single submission by ID.

NameTypeReqDescription
accountstring–Google 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.
courseIdstringyesCourse ID
courseworkIdstringyesCoursework ID
submissionIdstringyesSubmission ID

No output schema declared.

No examples provided.

gog_classroom_submissions_grade ~125

Grade a student submission. Set draft and/or assigned grade values.

NameTypeReqDescription
accountstring–Google 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.
assignedstring–Assigned (final) grade value
courseIdstringyesCourse ID
courseworkIdstringyesCoursework ID
draftstring–Draft grade value
submissionIdstringyesSubmission ID

No output schema declared.

No examples provided.

gog_classroom_submissions_list ~234

List student submissions for a coursework item.

NameTypeReqDescription
accountstring–Google 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.
allboolean–Fetch all pages
courseIdstringyesCourse ID
courseworkIdstringyesCoursework ID
latestring–Filter by late status
maxnumber–Max results per page
pagestring–Deprecated alias for pageToken, accepted so existing callers keep working. Use pageToken — it matches the nextPageToken field in the response.
pageTokenstring–Cursor 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…
statestring–Filter by submission state
userstring–Filter by student user ID

No output schema declared.

No examples provided.

gog_classroom_submissions_reclaim ~104

Reclaim a turned-in submission (student action to edit a submission).

NameTypeReqDescription
accountstring–Google 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.
courseIdstringyesCourse ID
courseworkIdstringyesCoursework ID
submissionIdstringyesSubmission ID

No output schema declared.

No examples provided.

gog_classroom_submissions_return ~376

Return a graded submission to the student, who is notified and sees the grade. Reads the course, the coursework and the submission and asks the MCP host to show the user a confirmation prompt with the class, the assignment, the student and the grade being returned; nothing is returned unless they accept. If the client cannot show that prompt (no MCP elicitation, e.g. claude.ai), a two-step flow applies instead: call WITHOUT confirmToken and nothing is sent or changed — the result has status "confirmation-required", the full preview and a confirmToken. Follow its instruction (by default: show the preview to the user verbatim and only after they explicitly approve it in chat, call again with the SAME arguments plus confirmToken). The tool re-reads what it would act on and refuses (DRAFT_CHANGED, with a fresh preview and token) if it changed; TOKEN_EXPIRED / TOKEN_REUSED / TOKEN_INVALID also do nothing. A server set to MCP_CONFIRM_MODE=refuse refuses instead.

NameTypeReqDescription
accountstring–Google 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.
confirmTokenstring–ONLY for the two-step confirmation fallback (a client without MCP elicitation). The confirmToken from this same tool's phase-1 "confirmation-required" response, passed back ONLY after the user has se…
courseIdstringyesCourse ID
courseworkIdstringyesCoursework ID
submissionIdstringyesSubmission ID

No output schema declared.

No examples provided.

gog_classroom_submissions_turn_in ~99

Turn in a student submission (student action).

NameTypeReqDescription
accountstring–Google 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.
courseIdstringyesCourse ID
courseworkIdstringyesCoursework ID
submissionIdstringyesSubmission ID

No output schema declared.

No examples provided.

gog_classroom_teachers_get ~88

Get a specific teacher in a course.

NameTypeReqDescription
accountstring–Google 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.
courseIdstringyesCourse ID
userIdstringyesTeacher user ID

No output schema declared.

No examples provided.

gog_classroom_teachers_list ~190

List teachers in a Google Classroom course.

NameTypeReqDescription
accountstring–Google 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.
allboolean–Fetch all pages
courseIdstringyesCourse ID
maxnumber–Max results per page
pagestring–Deprecated alias for pageToken, accepted so existing callers keep working. Use pageToken — it matches the nextPageToken field in the response.
pageTokenstring–Cursor 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_classroom_topics_get ~85

Get a single topic by ID.

NameTypeReqDescription
accountstring–Google 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.
courseIdstringyesCourse ID
topicIdstringyesTopic ID

No output schema declared.

No examples provided.

gog_classroom_topics_list ~189

List topics in a Google Classroom course.

NameTypeReqDescription
accountstring–Google 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.
allboolean–Fetch all pages
courseIdstringyesCourse ID
maxnumber–Max results per page
pagestring–Deprecated alias for pageToken, accepted so existing callers keep working. Use pageToken — it matches the nextPageToken field in the response.
pageTokenstring–Cursor 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_contacts_create ~125

Create a new Google Contact.

NameTypeReqDescription
accountstring–Google 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.
emailstring–Email address
familyNamestring–Family (last) name
givenNamestringyesGiven (first) name
orgstring–Organization/company name
phonestring–Phone number
titlestring–Job title

No output schema declared.

No examples provided.

gog_contacts_get ~82

Get a contact by resource name.

NameTypeReqDescription
accountstring–Google 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.
resourceNamestringyesContact resource name (e.g. people/c12345)

No output schema declared.

No examples provided.

gog_contacts_list ~61

List all Google Contacts.

NameTypeReqDescription
accountstring–Google 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.

No output schema declared.

No examples provided.

gog_contacts_run ~251

Run any gog contacts subcommand not covered by the other tools. Run `gog contacts --help` for the full list of subcommands, or `gog contacts <subcommand> --help` for flags on a specific subcommand. Flags that override server safety controls (--readonly, --enable-commands, --disable-commands, --account, --access-token, --home, --client, --gmail-no-send, --no-input) and a bare "--" are refused. Local file paths (--out, --out-dir, --attach, --file, --*-file, @file JSON) must be inside GOG_FILE_ROOTS; subcommands that take a local path positionally (e.g. drive upload) are refused in favour of their dedicated tools.

NameTypeReqDescription
accountstring–Google 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 contacts subcommand to run, e.g. "update", "delete", "directory"

No output schema declared.

No examples provided.

gog_contacts_search ~110

Search personal Google Contacts by name, email, or phone. For searching the Workspace directory (internal users not in your personal contacts), use gog_people_search from gogcli-mcp-contacts.

NameTypeReqDescription
accountstring–Google 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 (name, email, or phone)

No output schema declared.

No examples provided.

gog_docs_cat ~103

Read a Google Doc as plain text.

NameTypeReqDescription
accountstring–Google 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.
chipsboolean–Render Google Docs smart chips (people, dates, rich links) inline in the text output
docIdstringyesDoc ID (from the URL)

No output schema declared.

No examples provided.

gog_docs_create ~84

Create a new Google Doc. Returns JSON with the new docId and URL.

NameTypeReqDescription
accountstring–Google 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.
titlestringyesTitle for the new document

No output schema declared.

No examples provided.

gog_docs_find_replace ~99

Find and replace text in a Google Doc.

NameTypeReqDescription
accountstring–Google 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.
docIdstringyesDoc ID (from the URL)
findstringyesText to find
replacestringyesReplacement text

No output schema declared.

No examples provided.

gog_docs_info ~83

Get Google Doc metadata: title, ID, and other properties.

NameTypeReqDescription
accountstring–Google 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.
docIdstringyesDoc ID (from the URL)

No output schema declared.

No examples provided.

gog_docs_run ~257

Run any gog docs subcommand not covered by the other tools. Run `gog docs --help` for the full list of subcommands, or `gog docs <subcommand> --help` for flags on a specific subcommand. Flags that override server safety controls (--readonly, --enable-commands, --disable-commands, --account, --access-token, --home, --client, --gmail-no-send, --no-input) and a bare "--" are refused. Local file paths (--out, --out-dir, --attach, --file, --*-file, @file JSON) must be inside GOG_FILE_ROOTS; subcommands that take a local path positionally (e.g. drive upload) are refused in favour of their dedicated tools.

NameTypeReqDescription
accountstring–Google 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 docs subcommand to run, e.g. "copy", "clear", "insert", "sed", "export"

No output schema declared.

No examples provided.

gog_docs_structure ~92

Show a Google Doc's structure with numbered paragraphs. Useful for understanding the document layout before making index-based edits.

NameTypeReqDescription
accountstring–Google 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.
docIdstringyesDoc ID (from the URL)

No output schema declared.

No examples provided.

gog_docs_write ~421

Write text content to a Google Doc, replacing existing body content by default. Set append=true to add after existing content.

NameTypeReqDescription
accountstring–Google 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.
appendboolean–Append to existing content instead of replacing (default: false)
batchstring–Append this mutation to a persisted batch (from gog_batch_begin in gogcli-mcp-docs) instead of applying it — nothing changes in the doc until the batch is submitted.
bulletPresetstring–Write a bulleted list with a specific Google Docs bullet glyph preset (e.g. BULLET_DISC_CIRCLE_SQUARE)
bulletsboolean–Write the paragraphs as a bulleted list with the default disc preset
checkOrphansboolean–Block the write (exit code 11) if it would orphan an open comment — i.e. remove the text the comment is anchored to. Recommended for replacement writes on commented docs.
docIdstringyesDoc ID (from the URL)
indentEndnumber–Paragraph end indentation in points
indentFirstLinenumber–Paragraph first-line indentation in points
indentStartnumber–Paragraph start indentation in points
keepLinesTogetherboolean–Keep all lines of the paragraph on one page/column (true) or clear that setting (false)
keepWithNextboolean–Keep the paragraph with the next paragraph (true) or clear that setting (false)
noBulletsboolean–Remove bullets or numbering from the written paragraphs
orderedboolean–Write the paragraphs as a numbered list with the default decimal preset
spaceAbovenumber–Space above the paragraph in points
spaceBelownumber–Space below the paragraph in points
textstringyesText content to write

No output schema declared.

No examples provided.

gog_drive_delete ~378

Move a Google Drive file to trash, or permanently delete it with permanent=true (irreversible). A permanent delete reads the file and asks the MCP host to show the user a confirmation prompt naming it first; nothing is deleted unless they accept. Moving to trash is recoverable and does not ask. If the client cannot show that prompt (no MCP elicitation, e.g. claude.ai), a two-step flow applies instead: call WITHOUT confirmToken and nothing is sent or changed — the result has status "confirmation-required", the full preview and a confirmToken. Follow its instruction (by default: show the preview to the user verbatim and only after they explicitly approve it in chat, call again with the SAME arguments plus confirmToken). The tool re-reads what it would act on and refuses (DRAFT_CHANGED, with a fresh preview and token) if it changed; TOKEN_EXPIRED / TOKEN_REUSED / TOKEN_INVALID also do nothing. A server set to MCP_CONFIRM_MODE=refuse refuses instead.

NameTypeReqDescription
accountstring–Google 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.
confirmTokenstring–ONLY for the two-step confirmation fallback (a client without MCP elicitation). The confirmToken from this same tool's phase-1 "confirmation-required" response, passed back ONLY after the user has se…
fileIdstringyesFile ID to delete
permanentboolean–Permanently delete instead of moving to trash (irreversible; asks the user first)

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
accountstring–Google 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)
maxCharsinteger–Max characters to return (default: all from offset)
ocrLanguagestring–BCP-47 language hint for OCR of scanned/image PDFs (e.g. "en", "fr"). Optional.
offsetinteger–Character 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
accountstring–Google 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
viewstring–Response 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_ls ~302

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

NameTypeReqDescription
accountstring–Google 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.
allDrivesboolean–Include shared drives (default: true). Set false for My Drive only.
folderIdstring–Folder ID to list (default: root)
maxnumber–Max results (default: 20)
pagestring–Deprecated alias for pageToken, accepted so existing callers keep working. Use pageToken — it matches the nextPageToken field in the response.
pageTokenstring–Cursor 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…
querystring–Drive query filter (e.g. "name contains 'budget'")
viewstring–Response 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
accountstring–Google 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
accountstring–Google 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_read_bytes ~133

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. Files over 8 MiB are refused (checked before downloading). For readable text from a PDF, prefer gog_drive_extract_text.

NameTypeReqDescription
accountstring–Google 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
accountstring–Google 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_run ~251

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. Flags that override server safety controls (--readonly, --enable-commands, --disable-commands, --account, --access-token, --home, --client, --gmail-no-send, --no-input) and a bare "--" are refused. Local file paths (--out, --out-dir, --attach, --file, --*-file, @file JSON) must be inside GOG_FILE_ROOTS; subcommands that take a local path positionally (e.g. drive upload) are refused in favour of their dedicated tools.

NameTypeReqDescription
accountstring–Google 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", "download", "permissions"

No output schema declared.

No examples provided.

gog_drive_search ~142

Search Google Drive files by full-text query.

NameTypeReqDescription
accountstring–Google 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
viewstring–Response 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 ~411

Share a Google Drive file or folder. Granting access is the risk even though no email is sent (gog does not notify by default), so this reads the file and asks the MCP host to show the user a confirmation prompt naming it, who gets access and with what role; nothing is shared unless they accept. If the client cannot show that prompt (no MCP elicitation, e.g. claude.ai), a two-step flow applies instead: call WITHOUT confirmToken and nothing is sent or changed — the result has status "confirmation-required", the full preview and a confirmToken. Follow its instruction (by default: show the preview to the user verbatim and only after they explicitly approve it in chat, call again with the SAME arguments plus confirmToken). The tool re-reads what it would act on and refuses (DRAFT_CHANGED, with a fresh preview and token) if it changed; TOKEN_EXPIRED / TOKEN_REUSED / TOKEN_INVALID also do nothing. A server set to MCP_CONFIRM_MODE=refuse refuses instead.

NameTypeReqDescription
accountstring–Google 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.
confirmTokenstring–ONLY for the two-step confirmation fallback (a client without MCP elicitation). The confirmToken from this same tool's phase-1 "confirmation-required" response, passed back ONLY after the user has se…
domainstring–Domain (required when to=domain)
emailstring–User email (required when to=user)
fileIdstringyesFile or folder ID
rolestring–Permission role (default: reader)
tostringyesShare target type

No output schema declared.

No examples provided.

gog_gmail_get ~185

Get a Gmail message by ID. For a long message, sanitizeContent is the cheapest way to keep it in context: it drops the raw MIME payload and the HTML part, which are usually the bulk of the response.

NameTypeReqDescription
accountstring–Google 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.
formatstring–Message format (default: full)
messageIdstringyesMessage ID
sanitizeContentboolean–Return agent-oriented sanitized content: HTML stripped, HTTP(S) URLs removed, raw Gmail payloads omitted from the JSON. The largest payload-size reduction available here. Note the URL removal is loss…

No output schema declared.

No examples provided.

gog_gmail_reply ~1,294

SENDS MAIL — asks the MCP host to show a confirmation prompt with the resolved recipient, subject, a preview of the body and the attachment names. Mail is sent only after the user accepts that prompt. To STAGE a reply instead of sending it, use gog_gmail_drafts_reply (gogcli-mcp-gmail only), which never needs confirmation. Reply to a Gmail message (goes to the original sender only). USE THIS, not gog_gmail_send, whenever you are answering a message: it threads off the original AND inherits its "Re:" subject and quotes its body below yours, which gog_gmail_send does not — a send with replyToMessageId lands in the right thread but reads as a brand-new message, with the original nowhere in it. To answer every participant use gog_gmail_reply_all. The gogcli-mcp-gmail package adds two more routes with the same composition: gog_gmail_autoreply to reply across every message matching a query, and gog_gmail_drafts_reply to stage this exact reply as a draft instead of sending it. If the client cannot show that prompt (no MCP elicitation, e.g. claude.ai), a two-step flow applies instead: call WITHOUT confirmToken and nothing is sent or changed — the result has status "confirmation-required", the full preview and a confirmToken. Follow its instruction (by default: show the preview to the user verbatim and only after they explicitly approve it in chat, call again with the SAME arguments plus confirmToken). The tool re-reads what it would act on and refuses (DRAFT_CHANGED, with a fresh preview and token) if it changed; TOKEN_EXPIRED / TOKEN_REUSED / TOKEN_INVALID also do nothing. A server set to MCP_CONFIRM_MODE=refuse refuses instead.

NameTypeReqDescription
accountstring–Google 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.
attacharray–File paths to attach (repeatable), 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-ho…
attachInlinearray–Attachments supplied as BYTES rather than as server-side paths — use this whenever you hold a file and the gog server does not, which is always the case on a hosted deployment (e.g. mcp-host). Each e…
autoFromAddressedAliasboolean–When from is omitted, send from the verified send-as alias the original message was addressed TO, instead of the account's primary address — so a reply to mail sent to an alias goes back out from tha…
bccarray–Add or move recipients to Bcc (repeatable)
bodystring–Reply body (plain text; required unless bodyHtml or bodyHtmlFile is set). Any size — a large body is written to a temp file on the gog server rather than inlined into the command line. Note gog strip…
bodyHtmlstring–Reply body (HTML; optional). Pass the HTML itself at any size — a large body is written to a temp file on the gog server rather than inlined into the command line. Mutually exclusive with bodyHtmlFil…
bodyHtmlFilestring–Path to an HTML file that ALREADY EXISTS on the gog server for the reply body. gog also accepts "-" for stdin, but this server never writes to gog's stdin, so "-" would hang until the call times out.…
ccarray–Add or move recipients to Cc (repeatable)
confirmTokenstring–ONLY for the two-step confirmation fallback (a client without MCP elicitation). The confirmToken from this same tool's phase-1 "confirmation-required" response, passed back ONLY after the user has se…
fromstring–Send from this email address (must be a verified send-as alias)
messageIdstringyesGmail message ID to reply to — the short hex `id` from gog_gmail_get / _search (or gog_gmail_messages_search, gogcli-mcp-gmail only). NOT the threadId, NOT the RFC822 `<…@host>` Message-Id header.
noQuoteboolean–Do not include the original message quoted below the reply (default: the original is quoted)
removearray–Remove these recipients from all fields (repeatable) — e.g. to drop someone from a reply-all.
signatureboolean–Append the Gmail signature from the active send-as address
signatureFilestring–Append a local signature file (plain text or HTML), read on the gog server. Must be inside GOG_FILE_ROOTS. Cannot be combined with signature/signatureFrom.
signatureFromstring–Append the Gmail signature from this send-as email address
subjectstring–Override reply subject (default: "Re: <original>"). A changed subject starts a NEW Gmail thread.
toarray–Add or move recipients to To (repeatable). Added on top of the recipients inherited from the original message.

No output schema declared.

No examples provided.

gog_gmail_reply_all ~1,196

SENDS MAIL — asks the MCP host to show a confirmation prompt with the resolved recipients, subject, a preview of the body and the attachment names. Mail is sent only after the user accepts that prompt. To STAGE a reply-all instead of sending it, use gog_gmail_drafts_reply_all (gogcli-mcp-gmail only), which never needs confirmation. Reply to all participants of a Gmail message (the sender plus every To/Cc recipient). Same inherited "Re:" subject and quoted original as gog_gmail_reply. Use the remove flag to drop specific recipients from the reply-all. If the client cannot show that prompt (no MCP elicitation, e.g. claude.ai), a two-step flow applies instead: call WITHOUT confirmToken and nothing is sent or changed — the result has status "confirmation-required", the full preview and a confirmToken. Follow its instruction (by default: show the preview to the user verbatim and only after they explicitly approve it in chat, call again with the SAME arguments plus confirmToken). The tool re-reads what it would act on and refuses (DRAFT_CHANGED, with a fresh preview and token) if it changed; TOKEN_EXPIRED / TOKEN_REUSED / TOKEN_INVALID also do nothing. A server set to MCP_CONFIRM_MODE=refuse refuses instead.

NameTypeReqDescription
accountstring–Google 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.
attacharray–File paths to attach (repeatable), 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-ho…
attachInlinearray–Attachments supplied as BYTES rather than as server-side paths — use this whenever you hold a file and the gog server does not, which is always the case on a hosted deployment (e.g. mcp-host). Each e…
autoFromAddressedAliasboolean–When from is omitted, send from the verified send-as alias the original message was addressed TO, instead of the account's primary address — so a reply to mail sent to an alias goes back out from tha…
bccarray–Add or move recipients to Bcc (repeatable)
bodystring–Reply body (plain text; required unless bodyHtml or bodyHtmlFile is set). Any size — a large body is written to a temp file on the gog server rather than inlined into the command line. Note gog strip…
bodyHtmlstring–Reply body (HTML; optional). Pass the HTML itself at any size — a large body is written to a temp file on the gog server rather than inlined into the command line. Mutually exclusive with bodyHtmlFil…
bodyHtmlFilestring–Path to an HTML file that ALREADY EXISTS on the gog server for the reply body. gog also accepts "-" for stdin, but this server never writes to gog's stdin, so "-" would hang until the call times out.…
ccarray–Add or move recipients to Cc (repeatable)
confirmTokenstring–ONLY for the two-step confirmation fallback (a client without MCP elicitation). The confirmToken from this same tool's phase-1 "confirmation-required" response, passed back ONLY after the user has se…
fromstring–Send from this email address (must be a verified send-as alias)
messageIdstringyesGmail message ID to reply to — the short hex `id` from gog_gmail_get / _search (or gog_gmail_messages_search, gogcli-mcp-gmail only). NOT the threadId, NOT the RFC822 `<…@host>` Message-Id header.
noQuoteboolean–Do not include the original message quoted below the reply (default: the original is quoted)
removearray–Remove these recipients from all fields (repeatable) — e.g. to drop someone from a reply-all.
signatureboolean–Append the Gmail signature from the active send-as address
signatureFilestring–Append a local signature file (plain text or HTML), read on the gog server. Must be inside GOG_FILE_ROOTS. Cannot be combined with signature/signatureFrom.
signatureFromstring–Append the Gmail signature from this send-as email address
subjectstring–Override reply subject (default: "Re: <original>"). A changed subject starts a NEW Gmail thread.
toarray–Add or move recipients to To (repeatable). Added on top of the recipients inherited from the original message.

No output schema declared.

No examples provided.

gog_gmail_run ~253

Run any gog gmail subcommand not covered by the other tools. Run `gog gmail --help` for the full list of subcommands, or `gog gmail <subcommand> --help` for flags on a specific subcommand. Flags that override server safety controls (--readonly, --enable-commands, --disable-commands, --account, --access-token, --home, --client, --gmail-no-send, --no-input) and a bare "--" are refused. Local file paths (--out, --out-dir, --attach, --file, --*-file, @file JSON) must be inside GOG_FILE_ROOTS; subcommands that take a local path positionally (e.g. drive upload) are refused in favour of their dedicated tools.

NameTypeReqDescription
accountstring–Google 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 gmail subcommand to run, e.g. "archive", "mark-read", "labels"

No output schema declared.

No examples provided.

gog_gmail_search ~596

Search Gmail threads using Gmail query syntax (e.g. "from:alice subject:invoice is:unread"). The query is passed verbatim to Gmail; a bare name token (from:alison) matches per Gmail's own heuristics, a full address (from:alison@example.com) is exact. To match a contact across several addresses, OR them: from:(a@x.com OR b@y.com). Results are ALWAYS newest-first by Gmail's internalDate — the wrapper sorts them, so the first result is the most recent match and a recent message can never be buried below older ones. IMPORTANT — a response carrying "truncated": true is an INCOMPLETE view of the matches: NEVER report that a message does not exist, or that there is no such mail, on the strength of one. Page through it (pass nextPageToken back as `pageToken`), set maxPages to walk several pages in one call, or narrow the query, and only then draw a conclusion. If you already know the thread, do not search for it at all — read it directly with gog_gmail_thread_get, which returns the whole thread and cannot be truncated or mis-ranked.

NameTypeReqDescription
accountstring–Google 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.
allboolean–Fetch every page instead of one. Removes truncation entirely, at the cost of one API round-trip per page — the reliable way to answer "does any message match?" for a query with few expected hits.
fromContactstring–Resolve a Google Contact (name or email) to its addresses and AND a from:(addr OR addr) clause onto the query — saves looking the contact up first when you only know who, not which address.
maxinteger–Max results to return (default: 10)
maxPagesinteger–Walk up to this many pages in ONE call and merge the results, instead of returning a single page. Use it for existence questions ("is there any mail matching X?"), which a single page cannot answer.…
pagestring–Deprecated alias for pageToken, accepted so existing callers keep working. Use pageToken — it matches the nextPageToken field in the response.
pageTokenstring–Cursor 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…
querystringyesGmail search query

No output schema declared.

No examples provided.

gog_gmail_send ~1,057

SENDS MAIL — asks the MCP host to show a confirmation prompt with the recipients, subject, a preview of the body and the attachment names. Mail is sent only after the user accepts that prompt. Two ways to attach a file: `attach` takes paths READ ON THE GOG SERVER, and `attachInline` takes the bytes themselves. Use attachInline unless you know the file exists on the same machine gog runs on — on the hosted connector and any remote deployment there is no shared filesystem, so no path you can name resolves there and `attach` will fail with "no such file or directory". When either is used, the JSON result echoes the attached filenames and byte sizes — check it to confirm the files were embedded. NOT the tool for answering a message: replyToMessageId only files this in the right thread — the subject, recipients and body are entirely yours, and the original is not quoted unless you set quote. Use gog_gmail_reply / gog_gmail_reply_all instead, which inherit all three. If the client cannot show that prompt (no MCP elicitation, e.g. claude.ai), a two-step flow applies instead: call WITHOUT confirmToken and nothing is sent or changed — the result has status "confirmation-required", the full preview and a confirmToken. Follow its instruction (by default: show the preview to the user verbatim and only after they explicitly approve it in chat, call again with the SAME arguments plus confirmToken). The tool re-reads what it would act on and refuses (DRAFT_CHANGED, with a fresh preview and token) if it changed; TOKEN_EXPIRED / TOKEN_REUSED / TOKEN_INVALID also do nothing. A server set to MCP_CONFIRM_MODE=refuse refuses instead.

NameTypeReqDescription
accountstring–Google 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.
attacharray–File paths to attach (repeatable), 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-ho…
attachInlinearray–Attachments supplied as BYTES rather than as server-side paths — use this whenever you hold a file and the gog server does not, which is always the case on a hosted deployment (e.g. mcp-host). Each e…
bccstring–BCC recipients, comma-separated
bodystringyesEmail body (plain text). Any size — a large body is written to a temp file on the gog server rather than inlined into the command line. Note gog strips trailing newlines from a file-delivered body.
ccstring–CC recipients, comma-separated
confirmTokenstring–ONLY for the two-step confirmation fallback (a client without MCP elicitation). The confirmToken from this same tool's phase-1 "confirmation-required" response, passed back ONLY after the user has se…
quoteboolean–Include the original message quoted below the body. Requires replyToMessageId or threadId. gog quotes by DEFAULT on gmail reply but never on gmail send, so without this a threaded send arrives with t…
replyToMessageIdstring–Message ID to thread this message against — sets In-Reply-To/References only. It does NOT quote the original (pass quote for that), inherit its recipients, or prefix the subject with "Re:". For an ac…
signatureboolean–Append the Gmail signature from the active send-as address
signatureFilestring–Append a local signature file (plain text or HTML), read on the gog server. Must be inside GOG_FILE_ROOTS. Cannot be combined with signature/signatureFrom.
signatureFromstring–Append the Gmail signature from this send-as email address
subjectstringyesSubject line
threadIdstring–Thread ID to thread this message within. Same caveat as replyToMessageId: threading only, no quote and no inherited subject or recipients.
tostringyesRecipient(s), comma-separated

No output schema declared.

No examples provided.

gog_sheets_append ~198

Append rows to a Google Sheet after the last row with data in the given range. Values may be strings, numbers, booleans, or null. Strings starting with "=" are interpreted as formulas.

NameTypeReqDescription
accountstring–Google 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.
dry_runboolean–Preview the operation without modifying the sheet (gog --dry-run): reports the intended actions and exits without writing.
rangestringyesRange indicating which sheet/columns to append to, e.g. Sheet1!A:C
spreadsheetIdstringyesSpreadsheet ID (from the URL)
valuesarrayyes2D array of rows to append. Cells may be string/number/boolean/null; strings starting with "=" are formulas.

No output schema declared.

No examples provided.

gog_sheets_clear ~125

Clear all values in a Google Sheets range (formatting is preserved).

NameTypeReqDescription
accountstring–Google 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.
dry_runboolean–Preview the operation without modifying the sheet (gog --dry-run): reports the intended actions and exits without writing.
rangestringyesRange in A1 notation to clear
spreadsheetIdstringyesSpreadsheet ID

No output schema declared.

No examples provided.

gog_sheets_create ~85

Create a new Google Spreadsheet. Returns JSON with the new spreadsheetId and URL.

NameTypeReqDescription
accountstring–Google 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.
titlestringyesTitle for the new spreadsheet

No output schema declared.

No examples provided.

gog_sheets_find_replace ~97

Find and replace text across an entire Google Spreadsheet.

NameTypeReqDescription
accountstring–Google 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.
findstringyesText to find
replacestringyesReplacement text
spreadsheetIdstringyesSpreadsheet ID

No output schema declared.

No examples provided.

gog_sheets_get ~119

Read values from a Google Sheets range. Returns a JSON object with a "values" array of rows.

NameTypeReqDescription
accountstring–Google 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.
rangestringyesRange in A1 notation, e.g. Sheet1!A1:B10 or a named range
spreadsheetIdstringyesSpreadsheet ID (from the URL)

No output schema declared.

No examples provided.

gog_sheets_metadata ~111

Get spreadsheet metadata: title, named ranges, and per-tab properties including grid dimensions (gridProperties.rowCount / columnCount). Use this to learn a sheet's current size before writing — a write outside the grid fails.

NameTypeReqDescription
accountstring–Google 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.
spreadsheetIdstringyesSpreadsheet ID

No output schema declared.

No examples provided.

gog_sheets_run ~254

Run any gog sheets subcommand not covered by the other tools. Run `gog sheets --help` for the full list of subcommands, or `gog sheets <subcommand> --help` for flags on a specific subcommand. Flags that override server safety controls (--readonly, --enable-commands, --disable-commands, --account, --access-token, --home, --client, --gmail-no-send, --no-input) and a bare "--" are refused. Local file paths (--out, --out-dir, --attach, --file, --*-file, @file JSON) must be inside GOG_FILE_ROOTS; subcommands that take a local path positionally (e.g. drive upload) are refused in favour of their dedicated tools.

NameTypeReqDescription
accountstring–Google 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 sheets subcommand to run, e.g. "freeze", "add-tab", "rename-tab"

No output schema declared.

No examples provided.

Install

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

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

# add to Claude Code
claude mcp add chrischall-gogcli-mcp -- npx -y gogcli-mcp
Common questions

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

io.github.chrischall/gogcli-mcp is listed in the public MCP registry as io.github.chrischall/gogcli-mcp. Google Sheets (and more) for Claude via gogcli, read, write, and manage spreadsheets. This page covers its npm package (gogcli-mcp).

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

io.github.chrischall/gogcli-mcp scores 93 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 5 November 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 server expose?

io.github.chrischall/gogcli-mcp exposes 115 tools: gog_api_list, gog_api_describe, gog_api_call, gog_appscript_get, gog_appscript_content, and 110 more. Their descriptions and schemas cost roughly 28,529 tokens of context every time the server is loaded.

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

io.github.chrischall/gogcli-mcp is still listed as active in the MCP registry. We last reached this channel on 5 November 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 server under?

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