{"id":"ce322559-8d8f-41fb-b97b-434881f50349","entityType":"agent","slug":"clawhub-chrischall-gogcli-mcp-calendar","name":"gogcli-mcp-calendar","canonicalUrl":"https://www.xpersona.co/agent/clawhub-chrischall-gogcli-mcp-calendar","canonicalPath":"/agent/clawhub-chrischall-gogcli-mcp-calendar","generatedAt":"2026-10-09T18:37:46.432Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T10:12:44.064Z","emptyReason":null},"description":"Use when the user asks to manage Google Calendar events or Google Meet spaces. Triggers for scheduling, listing events, creating/updating/deleting events, responding to invitations, creating Meet spaces, ending conferences, listing meeting participants or call history.","descriptionLabel":"Source description","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 3K downloads reported by the source. Last updated 10/9/2026.","installCommand":"clawhub skill install s17cjx1a349nz5apaqp02vgz4h85728z:gogcli-mcp-calendar","sourceUrl":"https://clawhub.ai/chrischall/gogcli-mcp-calendar","homepage":"https://clawhub.ai/chrischall/skills/gogcli-mcp-calendar","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/chrischall/gogcli-mcp-calendar","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/chrischall/skills/gogcli-mcp-calendar","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":70,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"gogcli-mcp-calendar technical dossier on Xpersona with agent coverage, OPENCLEW support, and live trust metadata."},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-09T10:12:44.064Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T10:12:44.064Z","emptyReason":null},"stars":null,"forks":null,"downloads":3021,"packageName":null,"latestVersion":"4.7.0","tractionLabel":"3K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T10:12:44.064Z","emptyReason":null},"lastUpdatedAt":"2026-10-09T10:12:44.064Z","lastCrawledAt":"2026-10-09T10:12:44.064Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-10T10:12:44.064Z","lastVerifiedAt":null,"highlights":[{"version":"4.7.0","createdAt":"2026-10-07T13:38:31.943Z","changelog":"- Updated dependencies in package.json for improved compatibility. - Built dist/index.js with the latest changes. - Removed outdated documentation file (skill-card.md). - No changes to functionality or usage documented in SKILL.md.","fileCount":16,"zipByteSize":304641},{"version":"4.6.3","createdAt":"2026-10-05T16:43:06.609Z","changelog":"- Maintenance update with minor changes. - Updated core files: dist/index.js, manifest.json, and package.json. - Removed unused documentation file: skill-card.md. - No changes to features or functionality.","fileCount":16,"zipByteSize":304303},{"version":"4.6.2","createdAt":"2026-10-05T02:53:18.812Z","changelog":"- Updated build and configuration files. - Removed the skill-card.md documentation file. - No changes to functionality or available tools.","fileCount":16,"zipByteSize":304162},{"version":"4.6.1","createdAt":"2026-10-03T01:44:06.749Z","changelog":"- Updated distribution files and package metadata. - Removed the skill-card.md documentation file. - No changes to tool functionality or user-facing features.","fileCount":16,"zipByteSize":303453},{"version":"4.6.0","createdAt":"2026-10-02T12:19:47.486Z","changelog":"- Updated core files: dist/index.js, manifest.json, mint.yaml, package.json. - Removed redundant documentation file: skill-card.md. - No user-facing feature changes.","fileCount":16,"zipByteSize":300950},{"version":"4.5.2","createdAt":"2026-09-28T05:19:07.985Z","changelog":"- Updated dependencies and rebuilt distribution files. - Removed the skill-card.md file. - No changes to user-facing features or documentation.","fileCount":16,"zipByteSize":300856},{"version":"4.5.1","createdAt":"2026-09-25T15:39:46.827Z","changelog":"- Improved calendar extra tools with additional tests for gating logic. - Added new test file: calendar-extra-gates.test.ts for better coverage. - Updated existing calendar-extra tool code and related tests. - Updated build output and manifest files. - Removed the outdated skill-card.md documentation file.","fileCount":16,"zipByteSize":299894},{"version":"4.5.0","createdAt":"2026-09-24T15:18:10.227Z","changelog":"- updated 3, removed 1 file(s). - Updated SKILL.md and bundle contents.","fileCount":15,"zipByteSize":293414}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s17cjx1a349nz5apaqp02vgz4h85728z:gogcli-mcp-calendar","setupComplexity":"low","setupSteps":["Install using `clawhub skill install s17cjx1a349nz5apaqp02vgz4h85728z:gogcli-mcp-calendar` in an isolated environment before connecting it to live workloads.","No published capability contract is available yet, so validate auth and request/response behavior manually.","Review the upstream CLAWHUB listing at https://clawhub.ai/chrischall/gogcli-mcp-calendar before using production credentials."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-chrischall-gogcli-mcp-calendar/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-chrischall-gogcli-mcp-calendar/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-chrischall-gogcli-mcp-calendar/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-chrischall-gogcli-mcp-calendar/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-chrischall-gogcli-mcp-calendar/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-chrischall-gogcli-mcp-calendar/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-09T18:37:46.428Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-chrischall-gogcli-mcp-calendar/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-chrischall-gogcli-mcp-calendar/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-chrischall-gogcli-mcp-calendar/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-chrischall-gogcli-mcp-calendar/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T10:12:44.064Z","emptyReason":null},"readme":"Skill: gogcli-mcp-calendar\n\nOwner: chrischall\n\nSummary: Use when the user asks to manage Google Calendar events or Google Meet spaces. Triggers for scheduling, listing events, creating/updating/deleting events, responding to invitations, creating Meet spaces, ending conferences, listing meeting participants or call history.\n\nTags: latest:4.7.0\n\nVersion history:\n\nv4.7.0 | 2026-10-07T13:38:31.943Z | auto\n\n- Updated dependencies in package.json for improved compatibility.\n- Built dist/index.js with the latest changes.\n- Removed outdated documentation file (skill-card.md).\n- No changes to functionality or usage documented in SKILL.md.\n\nv4.6.3 | 2026-10-05T16:43:06.609Z | auto\n\n- Maintenance update with minor changes.\n- Updated core files: dist/index.js, manifest.json, and package.json.\n- Removed unused documentation file: skill-card.md.\n- No changes to features or functionality.\n\nv4.6.2 | 2026-10-05T02:53:18.812Z | auto\n\n- Updated build and configuration files.\n- Removed the skill-card.md documentation file.\n- No changes to functionality or available tools.\n\nv4.6.1 | 2026-10-03T01:44:06.749Z | auto\n\n- Updated distribution files and package metadata.\n- Removed the skill-card.md documentation file.\n- No changes to tool functionality or user-facing features.\n\nv4.6.0 | 2026-10-02T12:19:47.486Z | auto\n\n- Updated core files: dist/index.js, manifest.json, mint.yaml, package.json.\n- Removed redundant documentation file: skill-card.md.\n- No user-facing feature changes.\n\nv4.5.2 | 2026-09-28T05:19:07.985Z | auto\n\n- Updated dependencies and rebuilt distribution files.\n- Removed the skill-card.md file. \n- No changes to user-facing features or documentation.\n\nv4.5.1 | 2026-09-25T15:39:46.827Z | auto\n\n- Improved calendar extra tools with additional tests for gating logic.\n- Added new test file: calendar-extra-gates.test.ts for better coverage.\n- Updated existing calendar-extra tool code and related tests.\n- Updated build output and manifest files.\n- Removed the outdated skill-card.md documentation file.\n\nv4.5.0 | 2026-09-24T15:18:10.227Z | auto\n\n- updated 3, removed 1 file(s).\n- Updated SKILL.md and bundle contents.\n\nv4.4.0 | 2026-09-24T12:52:54.179Z | auto\n\n- Updated distribution files and dependencies for improved stability.\n- Removed the skill-card.md documentation file.\n- No changes to user-facing features or available tools.\n\nv4.3.0 | 2026-09-23T15:48:20.672Z | auto\n\n- Added improvements and fixes to calendar extra tools logic and tests.\n- Updated dependencies and build outputs.\n- Removed outdated documentation file (skill-card.md).\n\nv4.2.5 | 2026-09-22T14:04:59.130Z | auto\n\n- Internal package and metadata updates.\n- Obsolete skill documentation file (skill-card.md) removed.\n- No functional changes to skill usage or supported tools.\n\nv4.2.4 | 2026-09-21T04:15:22.654Z | auto\n\n- Internal code and dependency updates across multiple files.\n- Documentation cleanup: removed the redundant skill-card.md file.\n- No user-facing changes to features or toolset.\n\nv4.2.3 | 2026-09-20T23:41:57.334Z | auto\n\n- Internal updates to core files (`dist/index.js`, `manifest.json`, `package.json`, `src/tools/calendar-extra.ts`)\n- Removed outdated or redundant documentation file (`skill-card.md`)\n- No changes to user-facing features or tool functionality\n\nv4.2.2 | 2026-09-20T20:36:35.852Z | auto\n\n- Maintenance update with minor changes.\n- Updated dist/index.js, manifest.json, and package.json.\n- Removed the skill-card.md documentation file.\n- No functional or feature changes to core calendar or meet tools.\n\nv4.2.1 | 2026-09-20T19:43:59.708Z | auto\n\n- Updated build and metadata files.\n- Removed the documentation file skill-card.md.\n- No changes to features or configuration.\n\nv4.2.0 | 2026-09-20T18:29:36.025Z | auto\n\n- Updated dependencies and internal build (dist/index.js, package.json).\n- Refreshed manifest for compatibility.\n- Removed skill-card.md file.\n- No user-facing feature changes.\n\nv4.1.0 | 2026-09-20T02:51:59.728Z | auto\n\n- Minimum Node.js version increased from 18 to 22.\n- Documentation updates in README.md and SKILL.md.\n- Removed obsolete skill-card.md file.\n- Updated package metadata and distribution files.\n\nv4.0.1 | 2026-09-18T15:50:04.881Z | auto\n\n- Internal updates to distribution files and metadata.\n- No user-facing changes.\n\nv4.0.0 | 2026-09-18T15:20:38.035Z | auto\n\nVersion 4.0.0\n\n- Major release with updates across 6 files.\n- Refactored core files including TypeScript source, build output, and configuration.\n- Updated package metadata and workflow definitions.\n- No changes to skill usage, features, or documentation content.\n\nv3.0.0 | 2026-09-17T12:09:38.197Z | auto\n\nVersion 3.0.0\n\n- Major update with multiple file changes and one file removed.\n- Updated core files: dist/index.js, manifest.json, package.json, and src/tools/calendar-extra.ts.\n- Removed skill-card.md file.\n- No changes to the user-facing description or documented feature set.\n\nv2.30.0 | 2026-09-14T12:44:36.009Z | auto\n\n- Updated dependencies and build outputs.\n- Removed skill-card.md documentation file.\n- No changes to user-facing features or functionality.\n\nv2.29.1 | 2026-09-07T19:09:45.220Z | auto\n\n- Internal maintenance update: one file removed (skill-card.md) for housekeeping.\n- Updated distribution files and dependencies.\n- No changes to features, functionality, or documentation.\n\nv2.29.0 | 2026-09-04T15:27:59.619Z | auto\n\n- Switched to a full Node.js package structure with new config and build files.\n- Added multiple new source files, tests, and documentation (README.md, LICENSE, CHANGELOG.md).\n- Introduced \"calendar-extra\" tool and corresponding tests for expanded functionality.\n- Removed the old skill-card.md file.\n\nv2.8.0 | 2026-06-12T13:44:55.247Z | auto\n\n- Removed the file: skill-card.md\n- No functional or feature changes to the skill itself.\n\nv2.7.1 | 2026-06-11T15:37:09.543Z | auto\n\n- Removed the file: skill-card.md\n- No other functional or documentation changes in this version.\n\nv2.7.0 | 2026-06-11T13:29:49.078Z | auto\n\n- Removed the file: skill-card.md\n- No changes to skill functionality or user commands.\n\nv2.6.1 | 2026-06-09T14:23:28.162Z | auto\n\n- Removed the skill-card.md file.\n- No changes to features or functionality.\n\nv2.6.0 | 2026-06-09T02:36:46.961Z | auto\n\n- Removed the skill-card.md file.  \n- No changes to core functionality or documentation otherwise.\n\nv2.5.0 | 2026-06-07T16:53:35.238Z | auto\n\n- Removed the file skill-card.md.\n- No other user-facing changes.\n\nv2.4.1 | 2026-06-02T11:56:32.164Z | auto\n\n- Removed documentation file skill-card.md.\n- No changes to features or core functionality.\n\nv2.4.0 | 2026-06-01T18:40:50.369Z | auto\n\n- Removed the sample file skill-card.md.\n- No changes to features or functionality.\n\nv2.3.0 | 2026-05-30T17:15:46.353Z | auto\n\nVersion 2.3.0 of gogcli-mcp-calendar\n\n- No file changes detected in this release.\n- No new features, fixes, or updates included for this version.\n\nv2.2.0 | 2026-05-30T14:41:27.334Z | auto\n\n- Removed the skill-card.md file.\n- No changes to core features or setup.\n- The rest of the documentation and functionality remain unchanged.\n\nv2.0.12 | 2026-05-22T02:37:35.734Z | auto\n\nVersion 2.0.12\n\n- No file or functionality changes detected in this release.\n- All features and setup instructions remain the same.\n\nv2.0.11 | 2026-05-19T16:02:28.884Z | auto\n\n- Updated documentation links from steipete/gogcli to openclaw/gogcli in SKILL.md\n- No functional or code changes; only documentation updated for correct repository references\n\nv2.0.10 | 2026-05-19T14:21:26.571Z | auto\n\nVersion 2.0.10 of gogcli-mcp-calendar\n\n- No changes detected in this release.  \n- Functionality, features, and documentation remain unchanged.\n\nv2.0.9 | 2026-05-15T20:51:07.108Z | auto\n\nVersion 2.0.9 of gogcli-mcp-calendar\n\n- No file changes detected in this release.\n- Functionality and documentation remain the same as the previous version.\n\nv2.0.8 | 2026-05-14T18:38:51.031Z | auto\n\n- No changes detected in this version.\n- Functionality, documentation, and features remain the same.\n\nv2.0.7 | 2026-05-14T18:25:48.802Z | auto\n\n- Improved documentation for usage and setup, highlighting Calendar and Meet management features.\n- Clearer description of all available tools, including extra Meet-related commands.\n- Requirements and setup instructions updated for clarity.\n- Revised to specify 18 total tools: 7 Calendar, 6 Meet, 5 auth.\n- No tool or core functionality changes described.\n\nArchive index:\n\nArchive v4.7.0: 16 files, 304641 bytes\n\nFiles: CHANGELOG.md (933b), dist/index.js (1506832b), LICENSE (1067b), manifest.json (6493b), mint.yaml (4703b), package.json (1120b), README.md (1535b), skill-card.md (2043b), SKILL.md (1370b), src/index.ts (531b), src/tools/calendar-extra.ts (22209b), tests/tools/calendar-extra-gates.test.ts (12164b), tests/tools/calendar-extra.test.ts (16875b), tsconfig.json (209b), vitest.config.ts (523b), _meta.json (138b)\n\nFile v4.7.0:SKILL.md\n\n---\nname: gogcli-mcp-calendar\ndescription: Use when the user asks to manage Google Calendar events or Google Meet spaces. Triggers for scheduling, listing events, creating/updating/deleting events, responding to invitations, creating Meet spaces, ending conferences, listing meeting participants or call history.\n---\n\n# gogcli-mcp-calendar\n\nExtended Google Calendar MCP server via [gogcli](https://github.com/openclaw/gogcli) — 18 tools: auth + 7 base Calendar + 6 extra Meet tools.\n\n- **Source:** [github.com/chrischall/gogcli-mcp](https://github.com/chrischall/gogcli-mcp)\n\n## Requirements\n\n- [gogcli](https://github.com/openclaw/gogcli) installed and authenticated\n- Node.js 22 or later\n\n## Setup\n\n```json\n{\n  \"mcpServers\": {\n    \"gogcli-calendar\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"gogcli-mcp-calendar\"],\n      \"env\": {\n        \"GOG_ACCOUNT\": \"you@gmail.com\"\n      }\n    }\n  }\n}\n```\n\n## Extra Meet Tools\n\n| Tool | What it does |\n|------|-------------|\n| `gog_meet_create` | Create a Meet space |\n| `gog_meet_get` | Get a Meet space by code |\n| `gog_meet_update` | Update Meet space config |\n| `gog_meet_end` | End the active conference |\n| `gog_meet_history` | List past calls in a space |\n| `gog_meet_participants` | List call participants |\n\nPlus 5 auth tools and 7 base Calendar tools (`gog_calendar_events/get/create/update/delete/respond/run`).\n\nFile v4.7.0:README.md\n\n# gogcli-mcp-calendar\n\n> [!WARNING]\n> **AI-developed project.** This codebase was built and is actively maintained by [Claude Code](https://www.anthropic.com/claude). Review all code and tool permissions before use.\n\nExtended Google Calendar [MCP](https://modelcontextprotocol.io) server via [gogcli](https://github.com/openclaw/gogcli). Includes auth tools plus the base Calendar tools and 6 additional dedicated Google Meet tools for space management.\n\n## Requirements\n\n- [gogcli](https://github.com/openclaw/gogcli) installed and authenticated\n- Node.js 22+\n\n```bash\nbrew install gogcli\ngog auth add your@gmail.com --services calendar,meet\n```\n\n## Installation\n\n```bash\nnpm install -g gogcli-mcp-calendar\n```\n\n### Claude Desktop\n\n```json\n{\n  \"mcpServers\": {\n    \"gogcli-calendar\": {\n      \"command\": \"gogcli-mcp-calendar\",\n      \"env\": {\n        \"GOG_ACCOUNT\": \"you@gmail.com\"\n      }\n    }\n  }\n}\n```\n\n### Claude Code\n\n```bash\nclaude mcp add gogcli-calendar -- gogcli-mcp-calendar\n```\n\n## Extra Meet Tools (6)\n\nPlus 5 auth tools and 7 base Calendar tools (events, get, create, update, delete, respond, run).\n\n| Tool | Description |\n|------|-------------|\n| `gog_meet_create` | Create a Google Meet space |\n| `gog_meet_get` | Get a Meet space by meeting code |\n| `gog_meet_update` | Update Meet space configuration (access type) |\n| `gog_meet_end` | End the active conference in a Meet space |\n| `gog_meet_history` | List past calls in a Meet space |\n| `gog_meet_participants` | List participants from a Meet call |\n\n## License\n\nMIT\n\nFile v4.7.0:_meta.json\n\n{\n  \"ownerId\": \"kn700jq4sjtf2anb0rk3ft4p7n856872\",\n  \"slug\": \"gogcli-mcp-calendar\",\n  \"version\": \"4.7.0\",\n  \"publishedAt\": 1791380311943\n}\n\nFile v4.7.0:CHANGELOG.md\n\n# Changelog\n\n## [2.1.0](https://github.com/chrischall/gogcli-mcp/compare/v2.0.13...v2.1.0) (2026-05-25)\n\n\n### Features\n\n* wrap new gog cli v0.18.0 tools ([173242a](https://github.com/chrischall/gogcli-mcp/commit/173242aafaa8c2f2d7282a2fbd8faedfc65a63bd))\n\n\n### Refactor\n\n* aggressive cleanup pass (audit findings) ([e635b39](https://github.com/chrischall/gogcli-mcp/commit/e635b391cf611e9c102a422ffbce5ebe28687b80))\n* rebalance base vs sub-package tool split (120 -&gt; 84 base) ([1074953](https://github.com/chrischall/gogcli-mcp/commit/1074953833fc4766e85cc0b28cbcc08834f8dc47))\n* review-pass cleanup (enums, shared schemas, test harness) ([ea851de](https://github.com/chrischall/gogcli-mcp/commit/ea851deb30b9cfef3f07ed506a011fc363b34018))\n\n\n### Documentation\n\n* update gogcli repo URLs to openclaw/gogcli (was steipete/gogcli) ([951a181](https://github.com/chrischall/gogcli-mcp/commit/951a1818ebc269f203aee723ccbea32c13817d8b))\n\nFile v4.7.0:skill-card.md\n\n## Description:\n\nConnects an agent to Google Calendar and Meet to manage events, invitations, meeting spaces, and call history.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[chrischall](https://clawhub.ai/user/chrischall)\n\n### License/Terms of Use:\n\nMIT\n\n## Use Case:\n\nPeople and teams use this skill to view and manage Google Calendar events and invitations, and to create or manage Google Meet spaces through an authorized account.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Ending a live Google Meet conference does not require a separate confirmation prompt.\n\nMitigation: Require explicit user approval before invoking gog_meet_end, and do not expose this action to untrusted agents.\n\nRisk: Zoom credential tools can store credentials and contact Zoom, beyond the primary Google Calendar and Meet use case.\n\nMitigation: Enable Zoom credential tools and Zoom network access only if needed; review their permissions and credential handling first.\n\nRisk: An agent with account access can change calendar events and meeting settings.\n\nMitigation: Connect only a trusted agent to the intended Google account; set GOG_READONLY=1 when changes are unnecessary.\n\n## Reference(s):\n\n- [ClawHub skill listing](https://clawhub.ai/chrischall/skills/gogcli-mcp-calendar)\n- [gogcli documentation](https://github.com/openclaw/gogcli)\n- [Model Context Protocol](https://modelcontextprotocol.io)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Guidance]\n\n**Output Format:** [Text and structured tool results]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include event details, meeting information, and action results.]\n\n## Skill Version(s):\n\n4.7.0 (source: server-resolved release, package.json)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v4.7.0:manifest.json\n\n{\n  \"$schema\": \"https://raw.githubusercontent.com/anthropics/dxt/main/dist/mcpb-manifest.schema.json\",\n  \"manifest_version\": \"0.3\",\n  \"name\": \"gogcli-mcp-calendar\",\n  \"display_name\": \"gogcli (Calendar)\",\n  \"version\": \"4.7.0\",\n  \"description\": \"Extended Google Calendar for Claude via gogcli — auth + Calendar events + Meet space management\",\n  \"author\": {\n    \"name\": \"Chris Hall\",\n    \"email\": \"chris.c.hall@gmail.com\",\n    \"url\": \"https://github.com/chrischall\"\n  },\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"https://github.com/chrischall/gogcli-mcp\"\n  },\n  \"homepage\": \"https://github.com/chrischall/gogcli-mcp\",\n  \"support\": \"https://github.com/chrischall/gogcli-mcp/issues\",\n  \"license\": \"MIT\",\n  \"keywords\": [\n    \"google\",\n    \"calendar\",\n    \"meet\",\n    \"meetings\",\n    \"gogcli\",\n    \"gog\"\n  ],\n  \"server\": {\n    \"type\": \"node\",\n    \"entry_point\": \"dist/index.js\",\n    \"mcp_config\": {\n      \"command\": \"node\",\n      \"args\": [\n        \"${__dirname}/dist/index.js\"\n      ],\n      \"env\": {\n        \"GOG_ACCOUNT\": \"${user_config.gog_account}\",\n        \"GOG_PATH\": \"${user_config.gog_path}\",\n        \"GOG_FILE_ROOTS\": \"${user_config.gog_file_roots}\"\n      }\n    }\n  },\n  \"user_config\": {\n    \"gog_account\": {\n      \"type\": \"string\",\n      \"title\": \"Google Account\",\n      \"description\": \"Default Google account email (optional — uses gogcli's configured default if omitted)\",\n      \"required\": false\n    },\n    \"gog_path\": {\n      \"type\": \"string\",\n      \"title\": \"gog Executable Path\",\n      \"description\": \"Path to the gog executable (optional — defaults to 'gog' on your PATH)\",\n      \"required\": false\n    },\n    \"gog_file_roots\": {\n      \"type\": \"string\",\n      \"title\": \"Allowed file directories\",\n      \"description\": \"Directories tools may read files from (attachments, uploads) or write files to (exports, downloads), separated by ':' (';' on Windows). Optional — defaults to ~/gogcli-mcp-files\",\n      \"required\": false\n    }\n  },\n  \"tools\": [\n    {\n      \"name\": \"gog_auth_add\",\n      \"description\": \"Authorize a Google account via browser-based OAuth\"\n    },\n    {\n      \"name\": \"gog_auth_health\",\n      \"description\": \"Live per-account token health: validity, age, and pre-expiry warnings (detects invalid_grant)\"\n    },\n    {\n      \"name\": \"gog_auth_add_url\",\n      \"description\": \"Begin remote/headless OAuth (step 1): return a sign-in URL to open in any browser\"\n    },\n    {\n      \"name\": \"gog_auth_add_complete\",\n      \"description\": \"Complete remote/headless OAuth (step 2): exchange the pasted redirect URL and store the token\"\n    },\n    {\n      \"name\": \"gog_auth_list\",\n      \"description\": \"List all Google accounts stored in gogcli\"\n    },\n    {\n      \"name\": \"gog_auth_status\",\n      \"description\": \"Show gogcli auth configuration\"\n    },\n    {\n      \"name\": \"gog_auth_services\",\n      \"description\": \"List Google services and OAuth scopes supported by gogcli\"\n    },\n    {\n      \"name\": \"gog_auth_run\",\n      \"description\": \"Run any gog auth subcommand (escape hatch)\"\n    },\n    {\n      \"name\": \"gog_calendar_events\",\n      \"description\": \"List calendar events; compact by default (view=full for descriptions and attendees), paginated and flags a truncated range\"\n    },\n    {\n      \"name\": \"gog_calendar_get\",\n      \"description\": \"Get a specific calendar event\"\n    },\n    {\n      \"name\": \"gog_calendar_create\",\n      \"description\": \"Create a calendar event (optionally attach a Zoom meeting via withZoom)\"\n    },\n    {\n      \"name\": \"gog_calendar_update\",\n      \"description\": \"Update an existing calendar event (add/replace/remove Zoom meeting via withZoom/regenerateZoom/removeZoom)\"\n    },\n    {\n      \"name\": \"gog_calendar_delete\",\n      \"description\": \"Delete a calendar event (asks the user to confirm when it has guests or recurs)\"\n    },\n    {\n      \"name\": \"gog_calendar_respond\",\n      \"description\": \"Respond to a calendar event invitation\"\n    },\n    {\n      \"name\": \"gog_calendar_run\",\n      \"description\": \"Run any gog calendar subcommand (escape hatch)\"\n    },\n    {\n      \"name\": \"gog_calendar_calendars\",\n      \"description\": \"List the calendars in your calendar list\"\n    },\n    {\n      \"name\": \"gog_calendar_search\",\n      \"description\": \"Full-text search for events with optional time filters\"\n    },\n    {\n      \"name\": \"gog_calendar_changed\",\n      \"description\": \"List most recently changed events (including cancellations) across calendars\"\n    },\n    {\n      \"name\": \"gog_calendar_freebusy\",\n      \"description\": \"Query free/busy intervals for one or more calendars\"\n    },\n    {\n      \"name\": \"gog_calendar_colors\",\n      \"description\": \"Show the available calendar and event color palette\"\n    },\n    {\n      \"name\": \"gog_calendar_acl\",\n      \"description\": \"List the access control list (sharing rules) for a calendar\"\n    },\n    {\n      \"name\": \"gog_calendar_move\",\n      \"description\": \"Move an event to another calendar (asks the user to confirm when guests are emailed)\"\n    },\n    {\n      \"name\": \"gog_calendar_out_of_office\",\n      \"description\": \"Create an Out of Office event that auto-declines invitations (asks the user to confirm unless autoDecline is none)\"\n    },\n    {\n      \"name\": \"gog_calendar_unsubscribe\",\n      \"description\": \"Remove a calendar from your calendar list\"\n    },\n    {\n      \"name\": \"gog_calendar_delete_calendar\",\n      \"description\": \"Delete an owned secondary calendar (asks the user to confirm)\"\n    },\n    {\n      \"name\": \"gog_meet_create\",\n      \"description\": \"Create a Google Meet space\"\n    },\n    {\n      \"name\": \"gog_meet_get\",\n      \"description\": \"Get a Google Meet space by meeting code\"\n    },\n    {\n      \"name\": \"gog_meet_update\",\n      \"description\": \"Update a Google Meet space configuration\"\n    },\n    {\n      \"name\": \"gog_meet_end\",\n      \"description\": \"End the active conference in a Meet space\"\n    },\n    {\n      \"name\": \"gog_meet_history\",\n      \"description\": \"List past calls in a Meet space\"\n    },\n    {\n      \"name\": \"gog_meet_participants\",\n      \"description\": \"List participants from a Meet call\"\n    },\n    {\n      \"name\": \"gog_zoom_auth_setup\",\n      \"description\": \"Store Zoom Server-to-Server OAuth credentials (needed for calendar event Zoom attachment)\"\n    },\n    {\n      \"name\": \"gog_zoom_auth_doctor\",\n      \"description\": \"Validate stored Zoom Server-to-Server OAuth credentials\"\n    }\n  ],\n  \"compatibility\": {\n    \"platforms\": [\n      \"darwin\",\n      \"linux\",\n      \"win32\"\n    ],\n    \"runtimes\": {\n      \"node\": \">=22.0.0\"\n    }\n  }\n}\n\nFile v4.7.0:package.json\n\n{\n  \"name\": \"gogcli-mcp-calendar\",\n  \"version\": \"4.7.0\",\n  \"mcpName\": \"io.github.chrischall/gogcli-mcp-calendar\",\n  \"description\": \"Extended Google Calendar + Meet MCP server via gogcli — auth + Calendar events + Meet space management\",\n  \"author\": \"Claude Code (AI) <https://www.anthropic.com/claude>\",\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"https://github.com/chrischall/gogcli-mcp\"\n  },\n  \"type\": \"module\",\n  \"bin\": {\n    \"gogcli-mcp-calendar\": \"dist/index.js\"\n  },\n  \"exports\": {\n    \".\": \"./dist/index.js\"\n  },\n  \"scripts\": {\n    \"build\": \"tsc --noEmit && npm run bundle\",\n    \"bundle\": \"node ../../scripts/bundle.js src/index.ts dist/index.js\",\n    \"typecheck\": \"tsc --noEmit\",\n    \"test\": \"vitest run --coverage\",\n    \"test:watch\": \"vitest\",\n    \"test:coverage\": \"vitest run --coverage\"\n  },\n  \"dependencies\": {\n    \"@chrischall/mcp-utils\": \"^2.15.0\",\n    \"@modelcontextprotocol/server\": \"^2.3.0\",\n    \"zod\": \"^4.6.1\"\n  },\n  \"license\": \"MIT\",\n  \"keywords\": [\n    \"mcp\",\n    \"model-context-protocol\",\n    \"claude\",\n    \"ai\",\n    \"google\",\n    \"gogcli\",\n    \"calendar\",\n    \"meet\",\n    \"meetings\"\n  ]\n}\n\nFile v4.7.0:tsconfig.json\n\n{\n  \"extends\": \"../../tsconfig.base.json\",\n  \"compilerOptions\": {\n    \"outDir\": \"./dist\",\n    \"rootDir\": \"../\"\n  },\n  \"include\": [\"src/**/*\", \"../gogcli-mcp/src/**/*\"],\n  \"exclude\": [\"node_modules\", \"dist\"]\n}\n\nFile v4.7.0:mint.yaml\n\nversion: 1\nname: Google Calendar (gogcli)\nslug: gogcli-mcp-calendar\nsummary: >-\n  Extended Google Calendar + Meet MCP server via gogcli — auth + Calendar\n  events + Meet space management\ncommand:\n  # This package publishes a single bin; naming it keeps the install\n  # unambiguous alongside its eight sibling packages.\n  bin: gogcli-mcp-calendar\nenv:\n  - name: GOG_CLIENT_ID\n    required: false\n    help: >-\n      Google OAuth client id. Read by the Node wrapper at startup\n      (bootstrap-auth.ts), which imports it into gog's keyring via a temp file\n      together with GOG_CLIENT_SECRET, GOG_REFRESH_TOKEN and GOG_ACCOUNT — set\n      all four or none. Not a secret, so unlike GOG_CLIENT_SECRET and\n      GOG_REFRESH_TOKEN it is not stripped from the spawned `gog`'s\n      environment; gog authenticates from its keyring under $HOME (see\n      state.dataDir).\n  - name: GOG_CLIENT_SECRET\n    secret: true\n    required: false\n    help: >-\n      Google OAuth client secret. Imported into gog's keyring at startup with\n      GOG_CLIENT_ID; stripped from the spawned CLI's environment by runner.ts's\n      *_SECRET rule.\n  - name: GOG_REFRESH_TOKEN\n    secret: true\n    required: false\n    help: >-\n      Google OAuth refresh token (`gog auth tokens export` prints one). Imported\n      into gog's keyring at startup with GOG_CLIENT_ID; stripped from the\n      spawned CLI's environment by runner.ts's *_TOKEN rule. Changing it\n      re-imports on the next start; an in-connector re-auth\n      (gog_auth_add_url/complete) stays in effect until it changes.\n  - name: GOG_ACCESS_TOKEN\n    secret: true\n    required: false\n    help: >-\n      Deliberately removed from the spawned CLI's environment by runner.ts, so\n      that a stale directly-passed token cannot shadow gog's stored refresh\n      credential. Leave unset.\n  - name: GOG_ACCOUNT\n    required: false\n    help: >-\n      The Google account to act as. Required for the startup auth bootstrap\n      (the refresh token is imported under this email); otherwise defaults to\n      gog's single/most recent account.\n  - name: GOG_KEYRING_BACKEND\n    required: false\n    help: >-\n      gog's credential store. Set to \"file\" on a headless host — there is no OS\n      keychain — so the keyring lives on the persistent data dir.\n  - name: GOG_KEYRING_PASSWORD\n    secret: true\n    required: false\n    help: >-\n      Encrypts gog's file keyring on the data dir. Required with\n      GOG_KEYRING_BACKEND=file. Deliberately not stripped from the spawned\n      CLI's environment — it is the one credential gog itself reads.\n  - name: GOG_READONLY\n    required: false\n    help: >-\n      Set to 1 to refuse every mutating operation. Recommended when the\n      connector is shared or you only need reads.\n  - name: GOG_PATH\n    required: false\n    help: >-\n      Path to the `gog` binary. Leave unset when the dependency below supplies\n      it; set it only to point at a binary you manage yourself.\n  - name: GOG_TIMEZONE\n    required: false\n    help: >-\n      The IANA zone gog formats its naive timestamps in. The wrapper passes\n      it to every spawned gog and reads it back (naiveSourceTimeZone) to\n      re-attach the offset, so the two always agree. Unset or invalid, both\n      use DISPLAY_TZ, then America/New_York — never the host's local zone.\n  - name: DISPLAY_TZ\n    required: false\n    help: >-\n      The IANA zone every rendered *Display field uses (displayTimeZone,\n      default America/New_York). It does not read GOG_TIMEZONE — the fallback\n      runs the other way, so this is also what GOG_TIMEZONE falls back to. An\n      invalid value degrades to the default rather than throwing.\ndependencies:\n  # Every tool shells out to the `gog` CLI; without it the server starts and\n  # then fails on the first call. This tag must track\n  # packages/gogcli-mcp/src/runner.ts's MIN_GOG_VERSION (the floor the tools\n  # assume). See CLAUDE.md \"Required gog version\" — bumping the floor means\n  # bumping these nine pins, and the pin stored on each mcp-host registration.\n  - kind: github-release\n    repo: openclaw/gogcli\n    tag: v0.43.0\n    asset: \"gogcli_*_linux_amd64.tar.gz\"\n    bin: [gog]\nstate:\n  dataDir: true\n  reason: >-\n    `gog` keeps its authorised-account state and file keyring under $HOME, and\n    the wrapper keeps its auth-bootstrap marker (~/.gogcli-mcp) there, so a\n    restart neither re-imports an unchanged secret nor discards an\n    in-connector re-auth. Without a persistent data dir every cold start has\n    only what the env secrets can re-seed.\negress:\n  allow:\n    # Google OAuth token exchange and the Google REST APIs the CLI calls.\n    - oauth2.googleapis.com\n    - www.googleapis.com\n    - googleapis.com\n\nFile v4.7.0:LICENSE\n\nMIT License\n\nCopyright (c) 2026 Chris Hall\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n\nArchive v4.6.3: 16 files, 304303 bytes\n\nFiles: CHANGELOG.md (933b), dist/index.js (1505211b), LICENSE (1067b), manifest.json (6493b), mint.yaml (4703b), package.json (1120b), README.md (1535b), skill-card.md (2098b), SKILL.md (1370b), src/index.ts (531b), src/tools/calendar-extra.ts (22209b), tests/tools/calendar-extra-gates.test.ts (12164b), tests/tools/calendar-extra.test.ts (16875b), tsconfig.json (209b), vitest.config.ts (523b), _meta.json (138b)\n\nFile v4.6.3:SKILL.md\n\n---\nname: gogcli-mcp-calendar\ndescription: Use when the user asks to manage Google Calendar events or Google Meet spaces. Triggers for scheduling, listing events, creating/updating/deleting events, responding to invitations, creating Meet spaces, ending conferences, listing meeting participants or call history.\n---\n\n# gogcli-mcp-calendar\n\nExtended Google Calendar MCP server via [gogcli](https://github.com/openclaw/gogcli) — 18 tools: auth + 7 base Calendar + 6 extra Meet tools.\n\n- **Source:** [github.com/chrischall/gogcli-mcp](https://github.com/chrischall/gogcli-mcp)\n\n## Requirements\n\n- [gogcli](https://github.com/openclaw/gogcli) installed and authenticated\n- Node.js 22 or later\n\n## Setup\n\n```json\n{\n  \"mcpServers\": {\n    \"gogcli-calendar\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"gogcli-mcp-calendar\"],\n      \"env\": {\n        \"GOG_ACCOUNT\": \"you@gmail.com\"\n      }\n    }\n  }\n}\n```\n\n## Extra Meet Tools\n\n| Tool | What it does |\n|------|-------------|\n| `gog_meet_create` | Create a Meet space |\n| `gog_meet_get` | Get a Meet space by code |\n| `gog_meet_update` | Update Meet space config |\n| `gog_meet_end` | End the active conference |\n| `gog_meet_history` | List past calls in a space |\n| `gog_meet_participants` | List call participants |\n\nPlus 5 auth tools and 7 base Calendar tools (`gog_calendar_events/get/create/update/delete/respond/run`).\n\nFile v4.6.3:README.md\n\n# gogcli-mcp-calendar\n\n> [!WARNING]\n> **AI-developed project.** This codebase was built and is actively maintained by [Claude Code](https://www.anthropic.com/claude). Review all code and tool permissions before use.\n\nExtended Google Calendar [MCP](https://modelcontextprotocol.io) server via [gogcli](https://github.com/openclaw/gogcli). Includes auth tools plus the base Calendar tools and 6 additional dedicated Google Meet tools for space management.\n\n## Requirements\n\n- [gogcli](https://github.com/openclaw/gogcli) installed and authenticated\n- Node.js 22+\n\n```bash\nbrew install gogcli\ngog auth add your@gmail.com --services calendar,meet\n```\n\n## Installation\n\n```bash\nnpm install -g gogcli-mcp-calendar\n```\n\n### Claude Desktop\n\n```json\n{\n  \"mcpServers\": {\n    \"gogcli-calendar\": {\n      \"command\": \"gogcli-mcp-calendar\",\n      \"env\": {\n        \"GOG_ACCOUNT\": \"you@gmail.com\"\n      }\n    }\n  }\n}\n```\n\n### Claude Code\n\n```bash\nclaude mcp add gogcli-calendar -- gogcli-mcp-calendar\n```\n\n## Extra Meet Tools (6)\n\nPlus 5 auth tools and 7 base Calendar tools (events, get, create, update, delete, respond, run).\n\n| Tool | Description |\n|------|-------------|\n| `gog_meet_create` | Create a Google Meet space |\n| `gog_meet_get` | Get a Meet space by meeting code |\n| `gog_meet_update` | Update Meet space configuration (access type) |\n| `gog_meet_end` | End the active conference in a Meet space |\n| `gog_meet_history` | List past calls in a Meet space |\n| `gog_meet_participants` | List participants from a Meet call |\n\n## License\n\nMIT\n\nFile v4.6.3:_meta.json\n\n{\n  \"ownerId\": \"kn700jq4sjtf2anb0rk3ft4p7n856872\",\n  \"slug\": \"gogcli-mcp-calendar\",\n  \"version\": \"4.6.3\",\n  \"publishedAt\": 1791218586609\n}\n\nFile v4.6.3:CHANGELOG.md\n\n# Changelog\n\n## [2.1.0](https://github.com/chrischall/gogcli-mcp/compare/v2.0.13...v2.1.0) (2026-05-25)\n\n\n### Features\n\n* wrap new gog cli v0.18.0 tools ([173242a](https://github.com/chrischall/gogcli-mcp/commit/173242aafaa8c2f2d7282a2fbd8faedfc65a63bd))\n\n\n### Refactor\n\n* aggressive cleanup pass (audit findings) ([e635b39](https://github.com/chrischall/gogcli-mcp/commit/e635b391cf611e9c102a422ffbce5ebe28687b80))\n* rebalance base vs sub-package tool split (120 -&gt; 84 base) ([1074953](https://github.com/chrischall/gogcli-mcp/commit/1074953833fc4766e85cc0b28cbcc08834f8dc47))\n* review-pass cleanup (enums, shared schemas, test harness) ([ea851de](https://github.com/chrischall/gogcli-mcp/commit/ea851deb30b9cfef3f07ed506a011fc363b34018))\n\n\n### Documentation\n\n* update gogcli repo URLs to openclaw/gogcli (was steipete/gogcli) ([951a181](https://github.com/chrischall/gogcli-mcp/commit/951a1818ebc269f203aee723ccbea32c13817d8b))\n\nFile v4.6.3:skill-card.md\n\n## Description:\n\nConnects an agent to Google Calendar and Google Meet to manage events, invitations, meeting spaces, and call history.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[chrischall](https://clawhub.ai/user/chrischall)\n\n### License/Terms of Use:\n\nMIT\n\n## Use Case:\n\nPeople and teams use this skill through an agent to schedule and manage Google Calendar events, respond to invitations, and manage Google Meet spaces and call history.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Calendar and Meet access can expose private events, attendee information, and meeting history.\n\nMitigation: Use a dedicated Google account or least-privilege OAuth scopes where possible; review the full tool list before installing.\n\nRisk: Delete-calendar, out-of-office auto-decline, move, and meeting-management tools can make disruptive changes.\n\nMitigation: Confirm the target and intended change before high-impact actions; set GOG_READONLY=1 when only read access is needed.\n\nRisk: Auth setup, Zoom credential storage, and general run tools extend access beyond basic calendar operations.\n\nMitigation: Avoid supplying Zoom S2S credentials unless meeting attachment is needed, and limit access to credential and escape-hatch tools.\n\n## Reference(s):\n\n- [ClawHub skill listing](https://clawhub.ai/chrischall/skills/gogcli-mcp-calendar)\n- [gogcli documentation](https://github.com/openclaw/gogcli)\n- [Model Context Protocol](https://modelcontextprotocol.io)\n\n## Skill Output:\n\n**Output Type(s):** [Text, JSON]\n\n**Output Format:** [Text or JSON tool responses]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Responses can contain event, attendee, and meeting details.]\n\n## Skill Version(s):\n\n4.6.3 (source: server release, manifest.json, package.json)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v4.6.3:manifest.json\n\n{\n  \"$schema\": \"https://raw.githubusercontent.com/anthropics/dxt/main/dist/mcpb-manifest.schema.json\",\n  \"manifest_version\": \"0.3\",\n  \"name\": \"gogcli-mcp-calendar\",\n  \"display_name\": \"gogcli (Calendar)\",\n  \"version\": \"4.6.3\",\n  \"description\": \"Extended Google Calendar for Claude via gogcli — auth + Calendar events + Meet space management\",\n  \"author\": {\n    \"name\": \"Chris Hall\",\n    \"email\": \"chris.c.hall@gmail.com\",\n    \"url\": \"https://github.com/chrischall\"\n  },\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"https://github.com/chrischall/gogcli-mcp\"\n  },\n  \"homepage\": \"https://github.com/chrischall/gogcli-mcp\",\n  \"support\": \"https://github.com/chrischall/gogcli-mcp/issues\",\n  \"license\": \"MIT\",\n  \"keywords\": [\n    \"google\",\n    \"calendar\",\n    \"meet\",\n    \"meetings\",\n    \"gogcli\",\n    \"gog\"\n  ],\n  \"server\": {\n    \"type\": \"node\",\n    \"entry_point\": \"dist/index.js\",\n    \"mcp_config\": {\n      \"command\": \"node\",\n      \"args\": [\n        \"${__dirname}/dist/index.js\"\n      ],\n      \"env\": {\n        \"GOG_ACCOUNT\": \"${user_config.gog_account}\",\n        \"GOG_PATH\": \"${user_config.gog_path}\",\n        \"GOG_FILE_ROOTS\": \"${user_config.gog_file_roots}\"\n      }\n    }\n  },\n  \"user_config\": {\n    \"gog_account\": {\n      \"type\": \"string\",\n      \"title\": \"Google Account\",\n      \"description\": \"Default Google account email (optional — uses gogcli's configured default if omitted)\",\n      \"required\": false\n    },\n    \"gog_path\": {\n      \"type\": \"string\",\n      \"title\": \"gog Executable Path\",\n      \"description\": \"Path to the gog executable (optional — defaults to 'gog' on your PATH)\",\n      \"required\": false\n    },\n    \"gog_file_roots\": {\n      \"type\": \"string\",\n      \"title\": \"Allowed file directories\",\n      \"description\": \"Directories tools may read files from (attachments, uploads) or write files to (exports, downloads), separated by ':' (';' on Windows). Optional — defaults to ~/gogcli-mcp-files\",\n      \"required\": false\n    }\n  },\n  \"tools\": [\n    {\n      \"name\": \"gog_auth_add\",\n      \"description\": \"Authorize a Google account via browser-based OAuth\"\n    },\n    {\n      \"name\": \"gog_auth_health\",\n      \"description\": \"Live per-account token health: validity, age, and pre-expiry warnings (detects invalid_grant)\"\n    },\n    {\n      \"name\": \"gog_auth_add_url\",\n      \"description\": \"Begin remote/headless OAuth (step 1): return a sign-in URL to open in any browser\"\n    },\n    {\n      \"name\": \"gog_auth_add_complete\",\n      \"description\": \"Complete remote/headless OAuth (step 2): exchange the pasted redirect URL and store the token\"\n    },\n    {\n      \"name\": \"gog_auth_list\",\n      \"description\": \"List all Google accounts stored in gogcli\"\n    },\n    {\n      \"name\": \"gog_auth_status\",\n      \"description\": \"Show gogcli auth configuration\"\n    },\n    {\n      \"name\": \"gog_auth_services\",\n      \"description\": \"List Google services and OAuth scopes supported by gogcli\"\n    },\n    {\n      \"name\": \"gog_auth_run\",\n      \"description\": \"Run any gog auth subcommand (escape hatch)\"\n    },\n    {\n      \"name\": \"gog_calendar_events\",\n      \"description\": \"List calendar events; compact by default (view=full for descriptions and attendees), paginated and flags a truncated range\"\n    },\n    {\n      \"name\": \"gog_calendar_get\",\n      \"description\": \"Get a specific calendar event\"\n    },\n    {\n      \"name\": \"gog_calendar_create\",\n      \"description\": \"Create a calendar event (optionally attach a Zoom meeting via withZoom)\"\n    },\n    {\n      \"name\": \"gog_calendar_update\",\n      \"description\": \"Update an existing calendar event (add/replace/remove Zoom meeting via withZoom/regenerateZoom/removeZoom)\"\n    },\n    {\n      \"name\": \"gog_calendar_delete\",\n      \"description\": \"Delete a calendar event (asks the user to confirm when it has guests or recurs)\"\n    },\n    {\n      \"name\": \"gog_calendar_respond\",\n      \"description\": \"Respond to a calendar event invitation\"\n    },\n    {\n      \"name\": \"gog_calendar_run\",\n      \"description\": \"Run any gog calendar subcommand (escape hatch)\"\n    },\n    {\n      \"name\": \"gog_calendar_calendars\",\n      \"description\": \"List the calendars in your calendar list\"\n    },\n    {\n      \"name\": \"gog_calendar_search\",\n      \"description\": \"Full-text search for events with optional time filters\"\n    },\n    {\n      \"name\": \"gog_calendar_changed\",\n      \"description\": \"List most recently changed events (including cancellations) across calendars\"\n    },\n    {\n      \"name\": \"gog_calendar_freebusy\",\n      \"description\": \"Query free/busy intervals for one or more calendars\"\n    },\n    {\n      \"name\": \"gog_calendar_colors\",\n      \"description\": \"Show the available calendar and event color palette\"\n    },\n    {\n      \"name\": \"gog_calendar_acl\",\n      \"description\": \"List the access control list (sharing rules) for a calendar\"\n    },\n    {\n      \"name\": \"gog_calendar_move\",\n      \"description\": \"Move an event to another calendar (asks the user to confirm when guests are emailed)\"\n    },\n    {\n      \"name\": \"gog_calendar_out_of_office\",\n      \"description\": \"Create an Out of Office event that auto-declines invitations (asks the user to confirm unless autoDecline is none)\"\n    },\n    {\n      \"name\": \"gog_calendar_unsubscribe\",\n      \"description\": \"Remove a calendar from your calendar list\"\n    },\n    {\n      \"name\": \"gog_calendar_delete_calendar\",\n      \"description\": \"Delete an owned secondary calendar (asks the user to confirm)\"\n    },\n    {\n      \"name\": \"gog_meet_create\",\n      \"description\": \"Create a Google Meet space\"\n    },\n    {\n      \"name\": \"gog_meet_get\",\n      \"description\": \"Get a Google Meet space by meeting code\"\n    },\n    {\n      \"name\": \"gog_meet_update\",\n      \"description\": \"Update a Google Meet space configuration\"\n    },\n    {\n      \"name\": \"gog_meet_end\",\n      \"description\": \"End the active conference in a Meet space\"\n    },\n    {\n      \"name\": \"gog_meet_history\",\n      \"description\": \"List past calls in a Meet space\"\n    },\n    {\n      \"name\": \"gog_meet_participants\",\n      \"description\": \"List participants from a Meet call\"\n    },\n    {\n      \"name\": \"gog_zoom_auth_setup\",\n      \"description\": \"Store Zoom Server-to-Server OAuth credentials (needed for calendar event Zoom attachment)\"\n    },\n    {\n      \"name\": \"gog_zoom_auth_doctor\",\n      \"description\": \"Validate stored Zoom Server-to-Server OAuth credentials\"\n    }\n  ],\n  \"compatibility\": {\n    \"platforms\": [\n      \"darwin\",\n      \"linux\",\n      \"win32\"\n    ],\n    \"runtimes\": {\n      \"node\": \">=22.0.0\"\n    }\n  }\n}\n\nFile v4.6.3:package.json\n\n{\n  \"name\": \"gogcli-mcp-calendar\",\n  \"version\": \"4.6.3\",\n  \"mcpName\": \"io.github.chrischall/gogcli-mcp-calendar\",\n  \"description\": \"Extended Google Calendar + Meet MCP server via gogcli — auth + Calendar events + Meet space management\",\n  \"author\": \"Claude Code (AI) <https://www.anthropic.com/claude>\",\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"https://github.com/chrischall/gogcli-mcp\"\n  },\n  \"type\": \"module\",\n  \"bin\": {\n    \"gogcli-mcp-calendar\": \"dist/index.js\"\n  },\n  \"exports\": {\n    \".\": \"./dist/index.js\"\n  },\n  \"scripts\": {\n    \"build\": \"tsc --noEmit && npm run bundle\",\n    \"bundle\": \"node ../../scripts/bundle.js src/index.ts dist/index.js\",\n    \"typecheck\": \"tsc --noEmit\",\n    \"test\": \"vitest run --coverage\",\n    \"test:watch\": \"vitest\",\n    \"test:coverage\": \"vitest run --coverage\"\n  },\n  \"dependencies\": {\n    \"@chrischall/mcp-utils\": \"^2.14.0\",\n    \"@modelcontextprotocol/server\": \"^2.3.0\",\n    \"zod\": \"^4.6.1\"\n  },\n  \"license\": \"MIT\",\n  \"keywords\": [\n    \"mcp\",\n    \"model-context-protocol\",\n    \"claude\",\n    \"ai\",\n    \"google\",\n    \"gogcli\",\n    \"calendar\",\n    \"meet\",\n    \"meetings\"\n  ]\n}\n\nFile v4.6.3:tsconfig.json\n\n{\n  \"extends\": \"../../tsconfig.base.json\",\n  \"compilerOptions\": {\n    \"outDir\": \"./dist\",\n    \"rootDir\": \"../\"\n  },\n  \"include\": [\"src/**/*\", \"../gogcli-mcp/src/**/*\"],\n  \"exclude\": [\"node_modules\", \"dist\"]\n}\n\nFile v4.6.3:mint.yaml\n\nversion: 1\nname: Google Calendar (gogcli)\nslug: gogcli-mcp-calendar\nsummary: >-\n  Extended Google Calendar + Meet MCP server via gogcli — auth + Calendar\n  events + Meet space management\ncommand:\n  # This package publishes a single bin; naming it keeps the install\n  # unambiguous alongside its eight sibling packages.\n  bin: gogcli-mcp-calendar\nenv:\n  - name: GOG_CLIENT_ID\n    required: false\n    help: >-\n      Google OAuth client id. Read by the Node wrapper at startup\n      (bootstrap-auth.ts), which imports it into gog's keyring via a temp file\n      together with GOG_CLIENT_SECRET, GOG_REFRESH_TOKEN and GOG_ACCOUNT — set\n      all four or none. Not a secret, so unlike GOG_CLIENT_SECRET and\n      GOG_REFRESH_TOKEN it is not stripped from the spawned `gog`'s\n      environment; gog authenticates from its keyring under $HOME (see\n      state.dataDir).\n  - name: GOG_CLIENT_SECRET\n    secret: true\n    required: false\n    help: >-\n      Google OAuth client secret. Imported into gog's keyring at startup with\n      GOG_CLIENT_ID; stripped from the spawned CLI's environment by runner.ts's\n      *_SECRET rule.\n  - name: GOG_REFRESH_TOKEN\n    secret: true\n    required: false\n    help: >-\n      Google OAuth refresh token (`gog auth tokens export` prints one). Imported\n      into gog's keyring at startup with GOG_CLIENT_ID; stripped from the\n      spawned CLI's environment by runner.ts's *_TOKEN rule. Changing it\n      re-imports on the next start; an in-connector re-auth\n      (gog_auth_add_url/complete) stays in effect until it changes.\n  - name: GOG_ACCESS_TOKEN\n    secret: true\n    required: false\n    help: >-\n      Deliberately removed from the spawned CLI's environment by runner.ts, so\n      that a stale directly-passed token cannot shadow gog's stored refresh\n      credential. Leave unset.\n  - name: GOG_ACCOUNT\n    required: false\n    help: >-\n      The Google account to act as. Required for the startup auth bootstrap\n      (the refresh token is imported under this email); otherwise defaults to\n      gog's single/most recent account.\n  - name: GOG_KEYRING_BACKEND\n    required: false\n    help: >-\n      gog's credential store. Set to \"file\" on a headless host — there is no OS\n      keychain — so the keyring lives on the persistent data dir.\n  - name: GOG_KEYRING_PASSWORD\n    secret: true\n    required: false\n    help: >-\n      Encrypts gog's file keyring on the data dir. Required with\n      GOG_KEYRING_BACKEND=file. Deliberately not stripped from the spawned\n      CLI's environment — it is the one credential gog itself reads.\n  - name: GOG_READONLY\n    required: false\n    help: >-\n      Set to 1 to refuse every mutating operation. Recommended when the\n      connector is shared or you only need reads.\n  - name: GOG_PATH\n    required: false\n    help: >-\n      Path to the `gog` binary. Leave unset when the dependency below supplies\n      it; set it only to point at a binary you manage yourself.\n  - name: GOG_TIMEZONE\n    required: false\n    help: >-\n      The IANA zone gog formats its naive timestamps in. The wrapper passes\n      it to every spawned gog and reads it back (naiveSourceTimeZone) to\n      re-attach the offset, so the two always agree. Unset or invalid, both\n      use DISPLAY_TZ, then America/New_York — never the host's local zone.\n  - name: DISPLAY_TZ\n    required: false\n    help: >-\n      The IANA zone every rendered *Display field uses (displayTimeZone,\n      default America/New_York). It does not read GOG_TIMEZONE — the fallback\n      runs the other way, so this is also what GOG_TIMEZONE falls back to. An\n      invalid value degrades to the default rather than throwing.\ndependencies:\n  # Every tool shells out to the `gog` CLI; without it the server starts and\n  # then fails on the first call. This tag must track\n  # packages/gogcli-mcp/src/runner.ts's MIN_GOG_VERSION (the floor the tools\n  # assume). See CLAUDE.md \"Required gog version\" — bumping the floor means\n  # bumping these nine pins, and the pin stored on each mcp-host registration.\n  - kind: github-release\n    repo: openclaw/gogcli\n    tag: v0.43.0\n    asset: \"gogcli_*_linux_amd64.tar.gz\"\n    bin: [gog]\nstate:\n  dataDir: true\n  reason: >-\n    `gog` keeps its authorised-account state and file keyring under $HOME, and\n    the wrapper keeps its auth-bootstrap marker (~/.gogcli-mcp) there, so a\n    restart neither re-imports an unchanged secret nor discards an\n    in-connector re-auth. Without a persistent data dir every cold start has\n    only what the env secrets can re-seed.\negress:\n  allow:\n    # Google OAuth token exchange and the Google REST APIs the CLI calls.\n    - oauth2.googleapis.com\n    - www.googleapis.com\n    - googleapis.com\n\nFile v4.6.3:LICENSE\n\nMIT License\n\nCopyright (c) 2026 Chris Hall\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n\nArchive v4.6.2: 16 files, 304162 bytes\n\nFiles: CHANGELOG.md (933b), dist/index.js (1505025b), LICENSE (1067b), manifest.json (6493b), mint.yaml (4703b), package.json (1120b), README.md (1535b), skill-card.md (1881b), SKILL.md (1370b), src/index.ts (531b), src/tools/calendar-extra.ts (22209b), tests/tools/calendar-extra-gates.test.ts (12164b), tests/tools/calendar-extra.test.ts (16875b), tsconfig.json (209b), vitest.config.ts (523b), _meta.json (138b)\n\nFile v4.6.2:SKILL.md\n\n---\nname: gogcli-mcp-calendar\ndescription: Use when the user asks to manage Google Calendar events or Google Meet spaces. Triggers for scheduling, listing events, creating/updating/deleting events, responding to invitations, creating Meet spaces, ending conferences, listing meeting participants or call history.\n---\n\n# gogcli-mcp-calendar\n\nExtended Google Calendar MCP server via [gogcli](https://github.com/openclaw/gogcli) — 18 tools: auth + 7 base Calendar + 6 extra Meet tools.\n\n- **Source:** [github.com/chrischall/gogcli-mcp](https://github.com/chrischall/gogcli-mcp)\n\n## Requirements\n\n- [gogcli](https://github.com/openclaw/gogcli) installed and authenticated\n- Node.js 22 or later\n\n## Setup\n\n```json\n{\n  \"mcpServers\": {\n    \"gogcli-calendar\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"gogcli-mcp-calendar\"],\n      \"env\": {\n        \"GOG_ACCOUNT\": \"you@gmail.com\"\n      }\n    }\n  }\n}\n```\n\n## Extra Meet Tools\n\n| Tool | What it does |\n|------|-------------|\n| `gog_meet_create` | Create a Meet space |\n| `gog_meet_get` | Get a Meet space by code |\n| `gog_meet_update` | Update Meet space config |\n| `gog_meet_end` | End the active conference |\n| `gog_meet_history` | List past calls in a space |\n| `gog_meet_participants` | List call participants |\n\nPlus 5 auth tools and 7 base Calendar tools (`gog_calendar_events/get/create/update/delete/respond/run`).\n\nFile v4.6.2:README.md\n\n# gogcli-mcp-calendar\n\n> [!WARNING]\n> **AI-developed project.** This codebase was built and is actively maintained by [Claude Code](https://www.anthropic.com/claude). Review all code and tool permissions before use.\n\nExtended Google Calendar [MCP](https://modelcontextprotocol.io) server via [gogcli](https://github.com/openclaw/gogcli). Includes auth tools plus the base Calendar tools and 6 additional dedicated Google Meet tools for space management.\n\n## Requirements\n\n- [gogcli](https://github.com/openclaw/gogcli) installed and authenticated\n- Node.js 22+\n\n```bash\nbrew install gogcli\ngog auth add your@gmail.com --services calendar,meet\n```\n\n## Installation\n\n```bash\nnpm install -g gogcli-mcp-calendar\n```\n\n### Claude Desktop\n\n```json\n{\n  \"mcpServers\": {\n    \"gogcli-calendar\": {\n      \"command\": \"gogcli-mcp-calendar\",\n      \"env\": {\n        \"GOG_ACCOUNT\": \"you@gmail.com\"\n      }\n    }\n  }\n}\n```\n\n### Claude Code\n\n```bash\nclaude mcp add gogcli-calendar -- gogcli-mcp-calendar\n```\n\n## Extra Meet Tools (6)\n\nPlus 5 auth tools and 7 base Calendar tools (events, get, create, update, delete, respond, run).\n\n| Tool | Description |\n|------|-------------|\n| `gog_meet_create` | Create a Google Meet space |\n| `gog_meet_get` | Get a Meet space by meeting code |\n| `gog_meet_update` | Update Meet space configuration (access type) |\n| `gog_meet_end` | End the active conference in a Meet space |\n| `gog_meet_history` | List past calls in a Meet space |\n| `gog_meet_participants` | List participants from a Meet call |\n\n## License\n\nMIT\n\nFile v4.6.2:_meta.json\n\n{\n  \"ownerId\": \"kn700jq4sjtf2anb0rk3ft4p7n856872\",\n  \"slug\": \"gogcli-mcp-calendar\",\n  \"version\": \"4.6.2\",\n  \"publishedAt\": 1791168798812\n}\n\nFile v4.6.2:CHANGELOG.md\n\n# Changelog\n\n## [2.1.0](https://github.com/chrischall/gogcli-mcp/compare/v2.0.13...v2.1.0) (2026-05-25)\n\n\n### Features\n\n* wrap new gog cli v0.18.0 tools ([173242a](https://github.com/chrischall/gogcli-mcp/commit/173242aafaa8c2f2d7282a2fbd8faedfc65a63bd))\n\n\n### Refactor\n\n* aggressive cleanup pass (audit findings) ([e635b39](https://github.com/chrischall/gogcli-mcp/commit/e635b391cf611e9c102a422ffbce5ebe28687b80))\n* rebalance base vs sub-package tool split (120 -&gt; 84 base) ([1074953](https://github.com/chrischall/gogcli-mcp/commit/1074953833fc4766e85cc0b28cbcc08834f8dc47))\n* review-pass cleanup (enums, shared schemas, test harness) ([ea851de](https://github.com/chrischall/gogcli-mcp/commit/ea851deb30b9cfef3f07ed506a011fc363b34018))\n\n\n### Documentation\n\n* update gogcli repo URLs to openclaw/gogcli (was steipete/gogcli) ([951a181](https://github.com/chrischall/gogcli-mcp/commit/951a1818ebc269f203aee723ccbea32c13817d8b))\n\nFile v4.6.2:skill-card.md\n\n## Description:\n\nHelps agents manage Google Calendar events and Google Meet spaces, including scheduling, invitations, meeting history, and participants.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[chrischall](https://clawhub.ai/user/chrischall)\n\n### License/Terms of Use:\n\nMIT\n\n## Use Case:\n\nPeople and teams using an agent to manage Google Calendar events and Meet spaces can list and change schedules, respond to invitations, and inspect meeting history and participants.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The 33-tool manifest exposes account-changing actions beyond those described in the main skill text.\n\nMitigation: Review the full tool manifest and grant access only to accounts where the agent may read calendar data and make the intended changes; set GOG_READONLY=1 for read-only use.\n\nRisk: An agent can end an active Meet call without a code-enforced user confirmation; other actions can delete calendars or change events.\n\nMitigation: Require explicit user approval for destructive actions and do not let untrusted prompts trigger them.\n\n## Reference(s):\n\n- [ClawHub skill listing](https://clawhub.ai/chrischall/skills/gogcli-mcp-calendar)\n- [gogcli dependency](https://github.com/openclaw/gogcli)\n\n## Skill Output:\n\n**Output Type(s):** [Text, JSON]\n\n**Output Format:** [MCP tool responses in text or JSON]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Responses may contain calendar events, Meet details, and account metadata.]\n\n## Skill Version(s):\n\n4.6.2 (source: ClawHub release, package.json)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v4.6.2:manifest.json\n\n{\n  \"$schema\": \"https://raw.githubusercontent.com/anthropics/dxt/main/dist/mcpb-manifest.schema.json\",\n  \"manifest_version\": \"0.3\",\n  \"name\": \"gogcli-mcp-calendar\",\n  \"display_name\": \"gogcli (Calendar)\",\n  \"version\": \"4.6.2\",\n  \"description\": \"Extended Google Calendar for Claude via gogcli — auth + Calendar events + Meet space management\",\n  \"author\": {\n    \"name\": \"Chris Hall\",\n    \"email\": \"chris.c.hall@gmail.com\",\n    \"url\": \"https://github.com/chrischall\"\n  },\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"https://github.com/chrischall/gogcli-mcp\"\n  },\n  \"homepage\": \"https://github.com/chrischall/gogcli-mcp\",\n  \"support\": \"https://github.com/chrischall/gogcli-mcp/issues\",\n  \"license\": \"MIT\",\n  \"keywords\": [\n    \"google\",\n    \"calendar\",\n    \"meet\",\n    \"meetings\",\n    \"gogcli\",\n    \"gog\"\n  ],\n  \"server\": {\n    \"type\": \"node\",\n    \"entry_point\": \"dist/index.js\",\n    \"mcp_config\": {\n      \"command\": \"node\",\n      \"args\": [\n        \"${__dirname}/dist/index.js\"\n      ],\n      \"env\": {\n        \"GOG_ACCOUNT\": \"${user_config.gog_account}\",\n        \"GOG_PATH\": \"${user_config.gog_path}\",\n        \"GOG_FILE_ROOTS\": \"${user_config.gog_file_roots}\"\n      }\n    }\n  },\n  \"user_config\": {\n    \"gog_account\": {\n      \"type\": \"string\",\n      \"title\": \"Google Account\",\n      \"description\": \"Default Google account email (optional — uses gogcli's configured default if omitted)\",\n      \"required\": false\n    },\n    \"gog_path\": {\n      \"type\": \"string\",\n      \"title\": \"gog Executable Path\",\n      \"description\": \"Path to the gog executable (optional — defaults to 'gog' on your PATH)\",\n      \"required\": false\n    },\n    \"gog_file_roots\": {\n      \"type\": \"string\",\n      \"title\": \"Allowed file directories\",\n      \"description\": \"Directories tools may read files from (attachments, uploads) or write files to (exports, downloads), separated by ':' (';' on Windows). Optional — defaults to ~/gogcli-mcp-files\",\n      \"required\": false\n    }\n  },\n  \"tools\": [\n    {\n      \"name\": \"gog_auth_add\",\n      \"description\": \"Authorize a Google account via browser-based OAuth\"\n    },\n    {\n      \"name\": \"gog_auth_health\",\n      \"description\": \"Live per-account token health: validity, age, and pre-expiry warnings (detects invalid_grant)\"\n    },\n    {\n      \"name\": \"gog_auth_add_url\",\n      \"description\": \"Begin remote/headless OAuth (step 1): return a sign-in URL to open in any browser\"\n    },\n    {\n      \"name\": \"gog_auth_add_complete\",\n      \"description\": \"Complete remote/headless OAuth (step 2): exchange the pasted redirect URL and store the token\"\n    },\n    {\n      \"name\": \"gog_auth_list\",\n      \"description\": \"List all Google accounts stored in gogcli\"\n    },\n    {\n      \"name\": \"gog_auth_status\",\n      \"description\": \"Show gogcli auth configuration\"\n    },\n    {\n      \"name\": \"gog_auth_services\",\n      \"description\": \"List Google services and OAuth scopes supported by gogcli\"\n    },\n    {\n      \"name\": \"gog_auth_run\",\n      \"description\": \"Run any gog auth subcommand (escape hatch)\"\n    },\n    {\n      \"name\": \"gog_calendar_events\",\n      \"description\": \"List calendar events; compact by default (view=full for descriptions and attendees), paginated and flags a truncated range\"\n    },\n    {\n      \"name\": \"gog_calendar_get\",\n      \"description\": \"Get a specific calendar event\"\n    },\n    {\n      \"name\": \"gog_calendar_create\",\n      \"description\": \"Create a calendar event (optionally attach a Zoom meeting via withZoom)\"\n    },\n    {\n      \"name\": \"gog_calendar_update\",\n      \"description\": \"Update an existing calendar event (add/replace/remove Zoom meeting via withZoom/regenerateZoom/removeZoom)\"\n    },\n    {\n      \"name\": \"gog_calendar_delete\",\n      \"description\": \"Delete a calendar event (asks the user to confirm when it has guests or recurs)\"\n    },\n    {\n      \"name\": \"gog_calendar_respond\",\n      \"description\": \"Respond to a calendar event invitation\"\n    },\n    {\n      \"name\": \"gog_calendar_run\",\n      \"description\": \"Run any gog calendar subcommand (escape hatch)\"\n    },\n    {\n      \"name\": \"gog_calendar_calendars\",\n      \"description\": \"List the calendars in your calendar list\"\n    },\n    {\n      \"name\": \"gog_calendar_search\",\n      \"description\": \"Full-text search for events with optional time filters\"\n    },\n    {\n      \"name\": \"gog_calendar_changed\",\n      \"description\": \"List most recently changed events (including cancellations) across calendars\"\n    },\n    {\n      \"name\": \"gog_calendar_freebusy\",\n      \"description\": \"Query free/busy intervals for one or more calendars\"\n    },\n    {\n      \"name\": \"gog_calendar_colors\",\n      \"description\": \"Show the available calendar and event color palette\"\n    },\n    {\n      \"name\": \"gog_calendar_acl\",\n      \"description\": \"List the access control list (sharing rules) for a calendar\"\n    },\n    {\n      \"name\": \"gog_calendar_move\",\n      \"description\": \"Move an event to another calendar (asks the user to confirm when guests are emailed)\"\n    },\n    {\n      \"name\": \"gog_calendar_out_of_office\",\n      \"description\": \"Create an Out of Office event that auto-declines invitations (asks the user to confirm unless autoDecline is none)\"\n    },\n    {\n      \"name\": \"gog_calendar_unsubscribe\",\n      \"description\": \"Remove a calendar from your calendar list\"\n    },\n    {\n      \"name\": \"gog_calendar_delete_calendar\",\n      \"description\": \"Delete an owned secondary calendar (asks the user to confirm)\"\n    },\n    {\n      \"name\": \"gog_meet_create\",\n      \"description\": \"Create a Google Meet space\"\n    },\n    {\n      \"name\": \"gog_meet_get\",\n      \"description\": \"Get a Google Meet space by meeting code\"\n    },\n    {\n      \"name\": \"gog_meet_update\",\n      \"description\": \"Update a Google Meet space configuration\"\n    },\n    {\n      \"name\": \"gog_meet_end\",\n      \"description\": \"End the active conference in a Meet space\"\n    },\n    {\n      \"name\": \"gog_meet_history\",\n      \"description\": \"List past calls in a Meet space\"\n    },\n    {\n      \"name\": \"gog_meet_participants\",\n      \"description\": \"List participants from a Meet call\"\n    },\n    {\n      \"name\": \"gog_zoom_auth_setup\",\n      \"description\": \"Store Zoom Server-to-Server OAuth credentials (needed for calendar event Zoom attachment)\"\n    },\n    {\n      \"name\": \"gog_zoom_auth_doctor\",\n      \"description\": \"Validate stored Zoom Server-to-Server OAuth credentials\"\n    }\n  ],\n  \"compatibility\": {\n    \"platforms\": [\n      \"darwin\",\n      \"linux\",\n      \"win32\"\n    ],\n    \"runtimes\": {\n      \"node\": \">=22.0.0\"\n    }\n  }\n}\n\nFile v4.6.2:package.json\n\n{\n  \"name\": \"gogcli-mcp-calendar\",\n  \"version\": \"4.6.2\",\n  \"mcpName\": \"io.github.chrischall/gogcli-mcp-calendar\",\n  \"description\": \"Extended Google Calendar + Meet MCP server via gogcli — auth + Calendar events + Meet space management\",\n  \"author\": \"Claude Code (AI) <https://www.anthropic.com/claude>\",\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"https://github.com/chrischall/gogcli-mcp\"\n  },\n  \"type\": \"module\",\n  \"bin\": {\n    \"gogcli-mcp-calendar\": \"dist/index.js\"\n  },\n  \"exports\": {\n    \".\": \"./dist/index.js\"\n  },\n  \"scripts\": {\n    \"build\": \"tsc --noEmit && npm run bundle\",\n    \"bundle\": \"node ../../scripts/bundle.js src/index.ts dist/index.js\",\n    \"typecheck\": \"tsc --noEmit\",\n    \"test\": \"vitest run --coverage\",\n    \"test:watch\": \"vitest\",\n    \"test:coverage\": \"vitest run --coverage\"\n  },\n  \"dependencies\": {\n    \"@chrischall/mcp-utils\": \"^2.14.0\",\n    \"@modelcontextprotocol/server\": \"^2.3.0\",\n    \"zod\": \"^4.6.1\"\n  },\n  \"license\": \"MIT\",\n  \"keywords\": [\n    \"mcp\",\n    \"model-context-protocol\",\n    \"claude\",\n    \"ai\",\n    \"google\",\n    \"gogcli\",\n    \"calendar\",\n    \"meet\",\n    \"meetings\"\n  ]\n}\n\nFile v4.6.2:tsconfig.json\n\n{\n  \"extends\": \"../../tsconfig.base.json\",\n  \"compilerOptions\": {\n    \"outDir\": \"./dist\",\n    \"rootDir\": \"../\"\n  },\n  \"include\": [\"src/**/*\", \"../gogcli-mcp/src/**/*\"],\n  \"exclude\": [\"node_modules\", \"dist\"]\n}\n\nFile v4.6.2:mint.yaml\n\nversion: 1\nname: Google Calendar (gogcli)\nslug: gogcli-mcp-calendar\nsummary: >-\n  Extended Google Calendar + Meet MCP server via gogcli — auth + Calendar\n  events + Meet space management\ncommand:\n  # This package publishes a single bin; naming it keeps the install\n  # unambiguous alongside its eight sibling packages.\n  bin: gogcli-mcp-calendar\nenv:\n  - name: GOG_CLIENT_ID\n    required: false\n    help: >-\n      Google OAuth client id. Read by the Node wrapper at startup\n      (bootstrap-auth.ts), which imports it into gog's keyring via a temp file\n      together with GOG_CLIENT_SECRET, GOG_REFRESH_TOKEN and GOG_ACCOUNT — set\n      all four or none. Not a secret, so unlike GOG_CLIENT_SECRET and\n      GOG_REFRESH_TOKEN it is not stripped from the spawned `gog`'s\n      environment; gog authenticates from its keyring under $HOME (see\n      state.dataDir).\n  - name: GOG_CLIENT_SECRET\n    secret: true\n    required: false\n    help: >-\n      Google OAuth client secret. Imported into gog's keyring at startup with\n      GOG_CLIENT_ID; stripped from the spawned CLI's environment by runner.ts's\n      *_SECRET rule.\n  - name: GOG_REFRESH_TOKEN\n    secret: true\n    required: false\n    help: >-\n      Google OAuth refresh token (`gog auth tokens export` prints one). Imported\n      into gog's keyring at startup with GOG_CLIENT_ID; stripped from the\n      spawned CLI's environment by runner.ts's *_TOKEN rule. Changing it\n      re-imports on the next start; an in-connector re-auth\n      (gog_auth_add_url/complete) stays in effect until it changes.\n  - name: GOG_ACCESS_TOKEN\n    secret: true\n    required: false\n    help: >-\n      Deliberately removed from the spawned CLI's environment by runner.ts, so\n      that a stale directly-passed token cannot shadow gog's stored refresh\n      credential. Leave unset.\n  - name: GOG_ACCOUNT\n    required: false\n    help: >-\n      The Google account to act as. Required for the startup auth bootstrap\n      (the refresh token is imported under this email); otherwise defaults to\n      gog's single/most recent account.\n  - name: GOG_KEYRING_BACKEND\n    required: false\n    help: >-\n      gog's credential store. Set to \"file\" on a headless host — there is no OS\n      keychain — so the keyring lives on the persistent data dir.\n  - name: GOG_KEYRING_PASSWORD\n    secret: true\n    required: false\n    help: >-\n      Encrypts gog's file keyring on the data dir. Required with\n      GOG_KEYRING_BACKEND=file. Deliberately not stripped from the spawned\n      CLI's environment — it is the one credential gog itself reads.\n  - name: GOG_READONLY\n    required: false\n    help: >-\n      Set to 1 to refuse every mutating operation. Recommended when the\n      connector is shared or you only need reads.\n  - name: GOG_PATH\n    required: false\n    help: >-\n      Path to the `gog` binary. Leave unset when the dependency below supplies\n      it; set it only to point at a binary you manage yourself.\n  - name: GOG_TIMEZONE\n    required: false\n    help: >-\n      The IANA zone gog formats its naive timestamps in. The wrapper passes\n      it to every spawned gog and reads it back (naiveSourceTimeZone) to\n      re-attach the offset, so the two always agree. Unset or invalid, both\n      use DISPLAY_TZ, then America/New_York — never the host's local zone.\n  - name: DISPLAY_TZ\n    required: false\n    help: >-\n      The IANA zone every rendered *Display field uses (displayTimeZone,\n      default America/New_York). It does not read GOG_TIMEZONE — the fallback\n      runs the other way, so this is also what GOG_TIMEZONE falls back to. An\n      invalid value degrades to the default rather than throwing.\ndependencies:\n  # Every tool shells out to the `gog` CLI; without it the server starts and\n  # then fails on the first call. This tag must track\n  # packages/gogcli-mcp/src/runner.ts's MIN_GOG_VERSION (the floor the tools\n  # assume). See CLAUDE.md \"Required gog version\" — bumping the floor means\n  # bumping these nine pins, and the pin stored on each mcp-host registration.\n  - kind: github-release\n    repo: openclaw/gogcli\n    tag: v0.43.0\n    asset: \"gogcli_*_linux_amd64.tar.gz\"\n    bin: [gog]\nstate:\n  dataDir: true\n  reason: >-\n    `gog` keeps its authorised-account state and file keyring under $HOME, and\n    the wrapper keeps its auth-bootstrap marker (~/.gogcli-mcp) there, so a\n    restart neither re-imports an unchanged secret nor discards an\n    in-connector re-auth. Without a persistent data dir every cold start has\n    only what the env secrets can re-seed.\negress:\n  allow:\n    # Google OAuth token exchange and the Google REST APIs the CLI calls.\n    - oauth2.googleapis.com\n    - www.googleapis.com\n    - googleapis.com\n\nFile v4.6.2:LICENSE\n\nMIT License\n\nCopyright (c) 2026 Chris Hall\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n\nArchive v4.6.1: 16 files, 303453 bytes\n\nFiles: CHANGELOG.md (933b), dist/index.js (1501940b), LICENSE (1067b), manifest.json (6493b), mint.yaml (4703b), package.json (1120b), README.md (1535b), skill-card.md (2120b), SKILL.md (1370b), src/index.ts (531b), src/tools/calendar-extra.ts (22209b), tests/tools/calendar-extra-gates.test.ts (12164b), tests/tools/calendar-extra.test.ts (16875b), tsconfig.json (209b), vitest.config.ts (523b), _meta.json (138b)\n\nFile v4.6.1:SKILL.md\n\n---\nname: gogcli-mcp-calendar\ndescription: Use when the user asks to manage Google Calendar events or Google Meet spaces. Triggers for scheduling, listing events, creating/updating/deleting events, responding to invitations, creating Meet spaces, ending conferences, listing meeting participants or call history.\n---\n\n# gogcli-mcp-calendar\n\nExtended Google Calendar MCP server via [gogcli](https://github.com/openclaw/gogcli) — 18 tools: auth + 7 base Calendar + 6 extra Meet tools.\n\n- **Source:** [github.com/chrischall/gogcli-mcp](https://github.com/chrischall/gogcli-mcp)\n\n## Requirements\n\n- [gogcli](https://github.com/openclaw/gogcli) installed and authenticated\n- Node.js 22 or later\n\n## Setup\n\n```json\n{\n  \"mcpServers\": {\n    \"gogcli-calendar\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"gogcli-mcp-calendar\"],\n      \"env\": {\n        \"GOG_ACCOUNT\": \"you@gmail.com\"\n      }\n    }\n  }\n}\n```\n\n## Extra Meet Tools\n\n| Tool | What it does |\n|------|-------------|\n| `gog_meet_create` | Create a Meet space |\n| `gog_meet_get` | Get a Meet space by code |\n| `gog_meet_update` | Update Meet space config |\n| `gog_meet_end` | End the active conference |\n| `gog_meet_history` | List past calls in a space |\n| `gog_meet_participants` | List call participants |\n\nPlus 5 auth tools and 7 base Calendar tools (`gog_calendar_events/get/create/update/delete/respond/run`).\n\nFile v4.6.1:README.md\n\n# gogcli-mcp-calendar\n\n> [!WARNING]\n> **AI-developed project.** This codebase was built and is actively maintained by [Claude Code](https://www.anthropic.com/claude). Review all code and tool permissions before use.\n\nExtended Google Calendar [MCP](https://modelcontextprotocol.io) server via [gogcli](https://github.com/openclaw/gogcli). Includes auth tools plus the base Calendar tools and 6 additional dedicated Google Meet tools for space management.\n\n## Requirements\n\n- [gogcli](https://github.com/openclaw/gogcli) installed and authenticated\n- Node.js 22+\n\n```bash\nbrew install gogcli\ngog auth add your@gmail.com --services calendar,meet\n```\n\n## Installation\n\n```bash\nnpm install -g gogcli-mcp-calendar\n```\n\n### Claude Desktop\n\n```json\n{\n  \"mcpServers\": {\n    \"gogcli-calendar\": {\n      \"command\": \"gogcli-mcp-calendar\",\n      \"env\": {\n        \"GOG_ACCOUNT\": \"you@gmail.com\"\n      }\n    }\n  }\n}\n```\n\n### Claude Code\n\n```bash\nclaude mcp add gogcli-calendar -- gogcli-mcp-calendar\n```\n\n## Extra Meet Tools (6)\n\nPlus 5 auth tools and 7 base Calendar tools (events, get, create, update, delete, respond, run).\n\n| Tool | Description |\n|------|-------------|\n| `gog_meet_create` | Create a Google Meet space |\n| `gog_meet_get` | Get a Meet space by meeting code |\n| `gog_meet_update` | Update Meet space configuration (access type) |\n| `gog_meet_end` | End the active conference in a Meet space |\n| `gog_meet_history` | List past calls in a Meet space |\n| `gog_meet_participants` | List participants from a Meet call |\n\n## License\n\nMIT\n\nFile v4.6.1:_meta.json\n\n{\n  \"ownerId\": \"kn700jq4sjtf2anb0rk3ft4p7n856872\",\n  \"slug\": \"gogcli-mcp-calendar\",\n  \"version\": \"4.6.1\",\n  \"publishedAt\": 1790991846749\n}\n\nFile v4.6.1:CHANGELOG.md\n\n# Changelog\n\n## [2.1.0](https://github.com/chrischall/gogcli-mcp/compare/v2.0.13...v2.1.0) (2026-05-25)\n\n\n### Features\n\n* wrap new gog cli v0.18.0 tools ([173242a](https://github.com/chrischall/gogcli-mcp/commit/173242aafaa8c2f2d7282a2fbd8faedfc65a63bd))\n\n\n### Refactor\n\n* aggressive cleanup pass (audit findings) ([e635b39](https://github.com/chrischall/gogcli-mcp/commit/e635b391cf611e9c102a422ffbce5ebe28687b80))\n* rebalance base vs sub-package tool split (120 -&gt; 84 base) ([1074953](https://github.com/chrischall/gogcli-mcp/commit/1074953833fc4766e85cc0b28cbcc08834f8dc47))\n* review-pass cleanup (enums, shared schemas, test harness) ([ea851de](https://github.com/chrischall/gogcli-mcp/commit/ea851deb30b9cfef3f07ed506a011fc363b34018))\n\n\n### Documentation\n\n* update gogcli repo URLs to openclaw/gogcli (was steipete/gogcli) ([951a181](https://github.com/chrischall/gogcli-mcp/commit/951a1818ebc269f203aee723ccbea32c13817d8b))\n\nFile v4.6.1:skill-card.md\n\n## Description:\n\nConnects an agent to Google Calendar and Meet to manage events, invitations, meeting spaces, and call history.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[chrischall](https://clawhub.ai/user/chrischall)\n\n### License/Terms of Use:\n\nMIT\n\n## Use Case:\n\nDevelopers and users connect an agent to their Google account to schedule and manage calendar events and work with Google Meet spaces and calls.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Calendar changes and meeting actions can disrupt schedules; ending a Meet conference can proceed without an enforced confirmation gate.\n\nMitigation: Require explicit user approval before mutating events or ending meetings; set GOG_READONLY=1 when write access is unnecessary.\n\nRisk: Authentication tools and optional Zoom integration may expose account or conferencing credentials to an agent.\n\nMitigation: Use only a trusted Google account, protect OAuth and Zoom credentials, and limit GOG_FILE_ROOTS to necessary directories.\n\nRisk: The full set of exposed tools includes high-impact actions not fully described in the short skill instructions.\n\nMitigation: Review manifest.json and restrict tool access before deploying to shared or unattended agents.\n\n## Reference(s):\n\n- [ClawHub skill listing](https://clawhub.ai/chrischall/skills/gogcli-mcp-calendar)\n- [gogcli dependency documentation](https://github.com/openclaw/gogcli)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Configuration guidance, Shell commands]\n\n**Output Format:** [Plain text tool results and Markdown guidance]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Calendar and meeting results depend on the selected Google account and its permissions.]\n\n## Skill Version(s):\n\n4.6.1 (source: ClawHub release, package.json, manifest.json)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v4.6.1:manifest.json\n\n{\n  \"$schema\": \"https://raw.githubusercontent.com/anthropics/dxt/main/dist/mcpb-manifest.schema.json\",\n  \"manifest_version\": \"0.3\",\n  \"name\": \"gogcli-mcp-calendar\",\n  \"display_name\": \"gogcli (Calendar)\",\n  \"version\": \"4.6.1\",\n  \"description\": \"Extended Google Calendar for Claude via gogcli — auth + Calendar events + Meet space management\",\n  \"author\": {\n    \"name\": \"Chris Hall\",\n    \"email\": \"chris.c.hall@gmail.com\",\n    \"url\": \"https://github.com/chrischall\"\n  },\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"https://github.com/chrischall/gogcli-mcp\"\n  },\n  \"homepage\": \"https://github.com/chrischall/gogcli-mcp\",\n  \"support\": \"https://github.com/chrischall/gogcli-mcp/issues\",\n  \"license\": \"MIT\",\n  \"keywords\": [\n    \"google\",\n    \"calendar\",\n    \"meet\",\n    \"meetings\",\n    \"gogcli\",\n    \"gog\"\n  ],\n  \"server\": {\n    \"type\": \"node\",\n    \"entry_point\": \"dist/index.js\",\n    \"mcp_config\": {\n      \"command\": \"node\",\n      \"args\": [\n        \"${__dirname}/dist/index.js\"\n      ],\n      \"env\": {\n        \"GOG_ACCOUNT\": \"${user_config.gog_account}\",\n        \"GOG_PATH\": \"${user_config.gog_path}\",\n        \"GOG_FILE_ROOTS\": \"${user_config.gog_file_roots}\"\n      }\n    }\n  },\n  \"user_config\": {\n    \"gog_account\": {\n      \"type\": \"string\",\n      \"title\": \"Google Account\",\n      \"description\": \"Default Google account email (optional — uses gogcli's configured default if omitted)\",\n      \"required\": false\n    },\n    \"gog_path\": {\n      \"type\": \"string\",\n      \"title\": \"gog Executable Path\",\n      \"description\": \"Path to the gog executable (optional — defaults to 'gog' on your PATH)\",\n      \"required\": false\n    },\n    \"gog_file_roots\": {\n      \"type\": \"string\",\n      \"title\": \"Allowed file directories\",\n      \"description\": \"Directories tools may read files from (attachments, uploads) or write files to (exports, downloads), separated by ':' (';' on Windows). Optional — defaults to ~/gogcli-mcp-files\",\n      \"required\": false\n    }\n  },\n  \"tools\": [\n    {\n      \"name\": \"gog_auth_add\",\n      \"description\": \"Authorize a Google account via browser-based OAuth\"\n    },\n    {\n      \"name\": \"gog_auth_health\",\n      \"description\": \"Live per-account token health: validity, age, and pre-expiry warnings (detects invalid_grant)\"\n    },\n    {\n      \"name\": \"gog_auth_add_url\",\n      \"description\": \"Begin remote/headless OAuth (step 1): return a sign-in URL to open in any browser\"\n    },\n    {\n      \"name\": \"gog_auth_add_complete\",\n      \"description\": \"Complete remote/headless OAuth (step 2): exchange the pasted redirect URL and store the token\"\n    },\n    {\n      \"name\": \"gog_auth_list\",\n      \"description\": \"List all Google accounts stored in gogcli\"\n    },\n    {\n      \"name\": \"gog_auth_status\",\n      \"description\": \"Show gogcli auth configuration\"\n    },\n    {\n      \"name\": \"gog_auth_services\",\n      \"description\": \"List Google services and OAuth scopes supported by gogcli\"\n    },\n    {\n      \"name\": \"gog_auth_run\",\n      \"description\": \"Run any gog auth subcommand (escape hatch)\"\n    },\n    {\n      \"name\": \"gog_calendar_events\",\n      \"description\": \"List calendar events; compact by default (view=full for descriptions and attendees), paginated and flags a truncated range\"\n    },\n    {\n      \"name\": \"gog_calendar_get\",\n      \"description\": \"Get a specific calendar event\"\n    },\n    {\n      \"name\": \"gog_calendar_create\",\n      \"description\": \"Create a calendar event (optionally attach a Zoom meeting via withZoom)\"\n    },\n    {\n      \"name\": \"gog_calendar_update\",\n      \"description\": \"Update an existing calendar event (add/replace/remove Zoom meeting via withZoom/regenerateZoom/removeZoom)\"\n    },\n    {\n      \"name\": \"gog_calendar_delete\",\n      \"description\": \"Delete a calendar event (asks the user to confirm when it has guests or recurs)\"\n    },\n    {\n      \"name\": \"gog_calendar_respond\",\n      \"description\": \"Respond to a calendar event invitation\"\n    },\n    {\n      \"name\": \"gog_calendar_run\",\n      \"description\": \"Run any gog calendar subcommand (escape hatch)\"\n    },\n    {\n      \"name\": \"gog_calendar_calendars\",\n      \"description\": \"List the calendars in your calendar list\"\n    },\n    {\n      \"name\": \"gog_calendar_search\",\n      \"description\": \"Full-text search for events with optional time filters\"\n    },\n    {\n      \"name\": \"gog_calendar_changed\",\n      \"description\": \"List most recently changed events (including cancellations) across calendars\"\n    },\n    {\n      \"name\": \"gog_calendar_freebusy\",\n      \"description\": \"Query free/busy intervals for one or more calendars\"\n    },\n    {\n      \"name\": \"gog_calendar_colors\",\n      \"description\": \"Show the available calendar and event color palette\"\n    },\n    {\n      \"name\": \"gog_calendar_acl\",\n      \"description\": \"List the access control list (sharing rules) for a calendar\"\n    },\n    {\n      \"name\": \"gog_calendar_move\",\n      \"description\": \"Move an event to another calendar (asks the user to confirm when guests are emailed)\"\n    },\n    {\n      \"name\": \"gog_calendar_out_of_office\",\n      \"description\": \"Create an Out of Office event that auto-declines invitations (asks the user to confirm unless autoDecline is none)\"\n    },\n    {\n      \"name\": \"gog_calendar_unsubscribe\",\n      \"description\": \"Remove a calendar from your calendar list\"\n    },\n    {\n      \"name\": \"gog_calendar_delete_calendar\",\n      \"description\": \"Delete an owned secondary calendar (asks the user to confirm)\"\n    },\n    {\n      \"name\": \"gog_meet_create\",\n      \"description\": \"Create a Google Meet space\"\n    },\n    {\n      \"name\": \"gog_meet_get\",\n      \"description\": \"Get a Google Meet space by meeting code\"\n    },\n    {\n      \"name\": \"gog_meet_update\",\n      \"description\": \"Update a Google Meet space configuration\"\n    },\n    {\n      \"name\": \"gog_meet_end\",\n      \"description\": \"End the active conference in a Meet space\"\n    },\n    {\n      \"name\": \"gog_meet_history\",\n      \"description\": \"List past calls in a Meet space\"\n    },\n    {\n      \"name\": \"gog_meet_participants\",\n      \"description\": \"List participants from a Meet call\"\n    },\n    {\n      \"name\": \"gog_zoom_auth_setup\",\n      \"description\": \"Store Zoom Server-to-Server OAuth credentials (needed for calendar event Zoom attachment)\"\n    },\n    {\n      \"name\": \"gog_zoom_auth_doctor\",\n      \"description\": \"Validate stored Zoom Server-to-Server OAuth credentials\"\n    }\n  ],\n  \"compatibility\": {\n    \"platforms\": [\n      \"darwin\",\n      \"linux\",\n      \"win32\"\n    ],\n    \"runtimes\": {\n      \"node\": \">=22.0.0\"\n    }\n  }\n}\n\nFile v4.6.1:package.json\n\n{\n  \"name\": \"gogcli-mcp-calendar\",\n  \"version\": \"4.6.1\",\n  \"mcpName\": \"io.github.chrischall/gogcli-mcp-calendar\",\n  \"description\": \"Extended Google Calendar + Meet MCP server via gogcli — auth + Calendar events + Meet space management\",\n  \"author\": \"Claude Code (AI) <https://www.anthropic.com/claude>\",\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"https://github.com/chrischall/gogcli-mcp\"\n  },\n  \"type\": \"module\",\n  \"bin\": {\n    \"gogcli-mcp-calendar\": \"dist/index.js\"\n  },\n  \"exports\": {\n    \".\": \"./dist/index.js\"\n  },\n  \"scripts\": {\n    \"build\": \"tsc --noEmit && npm run bundle\",\n    \"bundle\": \"node ../../scripts/bundle.js src/index.ts dist/index.js\",\n    \"typecheck\": \"tsc --noEmit\",\n    \"test\": \"vitest run --coverage\",\n    \"test:watch\": \"vitest\",\n    \"test:coverage\": \"vitest run --coverage\"\n  },\n  \"dependencies\": {\n    \"@chrischall/mcp-utils\": \"^2.13.0\",\n    \"@modelcontextprotocol/server\": \"^2.1.0\",\n    \"zod\": \"^4.6.1\"\n  },\n  \"license\": \"MIT\",\n  \"keywords\": [\n    \"mcp\",\n    \"model-context-protocol\",\n    \"claude\",\n    \"ai\",\n    \"google\",\n    \"gogcli\",\n    \"calendar\",\n    \"meet\",\n    \"meetings\"\n  ]\n}\n\nFile v4.6.1:tsconfig.json\n\n{\n  \"extends\": \"../../tsconfig.base.json\",\n  \"compilerOptions\": {\n    \"outDir\": \"./dist\",\n    \"rootDir\": \"../\"\n  },\n  \"include\": [\"src/**/*\", \"../gogcli-mcp/src/**/*\"],\n  \"exclude\": [\"node_modules\", \"dist\"]\n}\n\nFile v4.6.1:mint.yaml\n\nversion: 1\nname: Google Calendar (gogcli)\nslug: gogcli-mcp-calendar\nsummary: >-\n  Extended Google Calendar + Meet MCP server via gogcli — auth + Calendar\n  events + Meet space management\ncommand:\n  # This package publishes a single bin; naming it keeps the install\n  # unambiguous alongside its eight sibling packages.\n  bin: gogcli-mcp-calendar\nenv:\n  - name: GOG_CLIENT_ID\n    required: false\n    help: >-\n      Google OAuth client id. Read by the Node wrapper at startup\n      (bootstrap-auth.ts), which imports it into gog's keyring via a temp file\n      together with GOG_CLIENT_SECRET, GOG_REFRESH_TOKEN and GOG_ACCOUNT — set\n      all four or none. Not a secret, so unlike GOG_CLIENT_SECRET and\n      GOG_REFRESH_TOKEN it is not stripped from the spawned `gog`'s\n      environment; gog authenticates from its keyring under $HOME (see\n      state.dataDir).\n  - name: GOG_CLIENT_SECRET\n    secret: true\n    required: false\n    help: >-\n      Google OAuth client secret. Imported into gog's keyring at startup with\n      GOG_CLIENT_ID; stripped from the spawned CLI's environment by runner.ts's\n      *_SECRET rule.\n  - name: GOG_REFRESH_TOKEN\n    secret: true\n    required: false\n    help: >-\n      Google OAuth refresh token (`gog auth tokens export` prints one). Imported\n      into gog's keyring at startup with GOG_CLIENT_ID; stripped from the\n      spawned CLI's environment by runner.ts's *_TOKEN rule. Changing it\n      re-imports on the next start; an in-connector re-auth\n      (gog_auth_add_url/complete) stays in effect until it changes.\n  - name: GOG_ACCESS_TOKEN\n    secret: true\n    required: false\n    help: >-\n      Deliberately removed from the spawned CLI's environment by runner.ts, so\n      that a stale directly-passed token cannot shadow gog's stored refresh\n      credential. Leave unset.\n  - name: GOG_ACCOUNT\n    required: false\n    help: >-\n      The Google account to act as. Required for the startup auth bootstrap\n      (the refresh token is imported under this email); otherwise defaults to\n      gog's single/most recent account.\n  - name: GOG_KEYRING_BACKEND\n    required: false\n    help: >-\n      gog's credential store. Set to \"file\" on a headless host — there is no OS\n      keychain — so the keyring lives on the persistent data dir.\n  - name: GOG_KEYRING_PASSWORD\n    secret: true\n    required: false\n    help: >-\n      Encrypts gog's file keyring on the data dir. Required with\n      GOG_KEYRING_BACKEND=file. Deliberately not stripped from the spawned\n      CLI's environment — it is the one credential gog itself reads.\n  - name: GOG_READONLY\n    required: false\n    help: >-\n      Set to 1 to refuse every mutating operation. Recommended when the\n      connector is shared or you only need reads.\n  - name: GOG_PATH\n    required: false\n    help: >-\n      Path to the `gog` binary. Leave unset when the dependency below supplies\n      it; set it only to point at a binary you manage yourself.\n  - name: GOG_TIMEZONE\n    required: false\n    help: >-\n      The IANA zone gog formats its naive timestamps in. The wrapper passes\n      it to every spawned gog and reads it back (naiveSourceTimeZone) to\n      re-attach the offset, so the two always agree. Unset or invalid, both\n      use DISPLAY_TZ, then America/New_York — never the host's local zone.\n  - name: DISPLAY_TZ\n    required: false\n    help: >-\n      The IANA zone every rendered *Display field uses (displayTimeZone,\n      default America/New_York). It does not read GOG_TIMEZONE — the fallback\n      runs the other way, so this is also what GOG_TIMEZONE falls back to. An\n      invalid value degrades to the default rather than throwing.\ndependencies:\n  # Every tool shells out to the `gog` CLI; without it the server starts and\n  # then fails on the first call. This tag must track\n  # packages/gogcli-mcp/src/runner.ts's MIN_GOG_VERSION (the floor the tools\n  # assume). See CLAUDE.md \"Required gog version\" — bumping the floor means\n  # bumping these nine pins, and the pin stored on each mcp-host registration.\n  - kind: github-release\n    repo: openclaw/gogcli\n    tag: v0.43.0\n    asset: \"gogcli_*_linux_amd64.tar.gz\"\n    bin: [gog]\nstate:\n  dataDir: true\n  reason: >-\n    `gog` keeps its authorised-account state and file keyring under $HOME, and\n    the wrapper keeps its auth-bootstrap marker (~/.gogcli-mcp) there, so a\n    restart neither re-imports an unchanged secret nor discards an\n    in-connector re-auth. Without a persistent data dir every cold start has\n    only what the env secrets can re-seed.\negress:\n  allow:\n    # Google OAuth token exchange and the Google REST APIs the CLI calls.\n    - oauth2.googleapis.com\n    - www.googleapis.com\n    - googleapis.com\n\nFile v4.6.1:LICENSE\n\nMIT License\n\nCopyright (c) 2026 Chris Hall\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n\nArchive v4.6.0: 16 files, 300950 bytes\n\nFiles: CHANGELOG.md (933b), dist/index.js (1493942b), LICENSE (1067b), manifest.json (6493b), mint.yaml (4703b), package.json (1119b), README.md (1535b), skill-card.md (2282b), SKILL.md (1370b), src/index.ts (531b), src/tools/calendar-extra.ts (22209b), tests/tools/calendar-extra-gates.test.ts (12164b), tests/tools/calendar-extra.test.ts (16875b), tsconfig.json (209b), vitest.config.ts (523b), _meta.json (138b)\n\nFile v4.6.0:SKILL.md\n\n---\nname: gogcli-mcp-calendar\ndescription: Use when the user asks to manage Google Calendar events or Google Meet spaces. Triggers for scheduling, listing events, creating/updating/deleting events, responding to invitations, creating Meet spaces, ending conferences, listing meeting participants or call history.\n---\n\n# gogcli-mcp-calendar\n\nExtended Google Calendar MCP server via [gogcli](https://github.com/openclaw/gogcli) — 18 tools: auth + 7 base Calendar + 6 extra Meet tools.\n\n- **Source:** [github.com/chrischall/gogcli-mcp](https://github.com/chrischall/gogcli-mcp)\n\n## Requirements\n\n- [gogcli](https://github.com/openclaw/gogcli) installed and authenticated\n- Node.js 22 or later\n\n## Setup\n\n```json\n{\n  \"mcpServers\": {\n    \"gogcli-calendar\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"gogcli-mcp-calendar\"],\n      \"env\": {\n        \"GOG_ACCOUNT\": \"you@gmail.com\"\n      }\n    }\n  }\n}\n```\n\n## Extra Meet Tools\n\n| Tool | What it does |\n|------|-------------|\n| `gog_meet_create` | Create a Meet space |\n| `gog_meet_get` | Get a Meet space by code |\n| `gog_meet_update` | Update Meet space config |\n| `gog_meet_end` | End the active conference |\n| `gog_meet_history` | List past calls in a space |\n| `gog_meet_participants` | List call participants |\n\nPlus 5 auth tools and 7 base Calendar tools (`gog_calendar_events/get/create/update/delete/respond/run`).\n\nFile v4.6.0:README.md\n\n# gogcli-mcp-calendar\n\n> [!WARNING]\n> **AI-developed project.** This codebase was built and is actively maintained by [Claude Code](https://www.anthropic.com/claude). Review all code and tool permissions before use.\n\nExtended Google Calendar [MCP](https://modelcontextprotocol.io) server via [gogcli](https://github.com/openclaw/gogcli). Includes auth tools plus the base Calendar tools and 6 additional dedicated Google Meet tools for space management.\n\n## Requirements\n\n- [gogcli](https://github.com/openclaw/gogcli) installed and authenticated\n- Node.js 22+\n\n```bash\nbrew install gogcli\ngog auth add your@gmail.com --services calendar,meet\n```\n\n## Installation\n\n```bash\nnpm install -g gogcli-mcp-calendar\n```\n\n### Claude Desktop\n\n```json\n{\n  \"mcpServers\": {\n    \"gogcli-calendar\": {\n      \"command\": \"gogcli-mcp-calendar\",\n      \"env\": {\n        \"GOG_ACCOUNT\": \"you@gmail.com\"\n      }\n    }\n  }\n}\n```\n\n### Claude Code\n\n```bash\nclaude mcp add gogcli-calendar -- gogcli-mcp-calendar\n```\n\n## Extra Meet Tools (6)\n\nPlus 5 auth tools and 7 base Calendar tools (events, get, create, update, delete, respond, run).\n\n| Tool | Description |\n|------|-------------|\n| `gog_meet_create` | Create a Google Meet space |\n| `gog_meet_get` | Get a Meet space by meeting code |\n| `gog_meet_update` | Update Meet space configuration (access type) |\n| `gog_meet_end` | End the active conference in a Meet space |\n| `gog_meet_history` | List past calls in a Meet space |\n| `gog_meet_participants` | List participants from a Meet call |\n\n## License\n\nMIT\n\nFile v4.6.0:_meta.json\n\n{\n  \"ownerId\": \"kn700jq4sjtf2anb0rk3ft4p7n856872\",\n  \"slug\": \"gogcli-mcp-calendar\",\n  \"version\": \"4.6.0\",\n  \"publishedAt\": 1790943587486\n}\n\nFile v4.6.0:CHANGELOG.md\n\n# Changelog\n\n## [2.1.0](https://github.com/chrischall/gogcli-mcp/compare/v2.0.13...v2.1.0) (2026-05-25)\n\n\n### Features\n\n* wrap new gog cli v0.18.0 tools ([173242a](https://github.com/chrischall/gogcli-mcp/commit/173242aafaa8c2f2d7282a2fbd8faedfc65a63bd))\n\n\n### Refactor\n\n* aggressive cleanup pass (audit findings) ([e635b39](https://github.com/chrischall/gogcli-mcp/commit/e635b391cf611e9c102a422ffbce5ebe28687b80))\n* rebalance base vs sub-package tool split (120 -&gt; 84 base) ([1074953](https://github.com/chrischall/gogcli-mcp/commit/1074953833fc4766e85cc0b28cbcc08834f8dc47))\n* review-pass cleanup (enums, shared schemas, test harness) ([ea851de](https://github.com/chrischall/gogcli-mcp/commit/ea851deb30b9cfef3f07ed506a011fc363b34018))\n\n\n### Documentation\n\n* update gogcli repo URLs to openclaw/gogcli (was steipete/gogcli) ([951a181](https://github.com/chrischall/gogcli-mcp/commit/951a1818ebc269f203aee723ccbea32c13817d8b))\n\nFile v4.6.0:skill-card.md\n\n## Description:\n\nHelps an agent manage Google Calendar events and Google Meet spaces, including scheduling, invitations, and meeting history.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[chrischall](https://clawhub.ai/user/chrischall)\n\n### License/Terms of Use:\n\nMIT\n\n## Use Case:\n\nPeople using an agent to organize Google Calendar events and Google Meet spaces can look up availability, schedule or change events, respond to invitations, and manage meetings.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill exposes account authorization and broader calendar administration than its brief description suggests.\n\nMitigation: Review tool permissions before installation, especially on shared or hosted agents; use GOG_READONLY=1 when only reading is needed.\n\nRisk: Deleting events or calendars and ending active meetings can disrupt others.\n\nMitigation: Require explicit user approval before calendar deletion, meeting termination, or other high-impact changes.\n\nRisk: Auth and calendar command tools can perform actions beyond the dedicated scheduling tools.\n\nMitigation: Manually control auth-run and calendar-run tools and limit access to trusted users.\n\nRisk: Optional Zoom attachment support may require additional credentials.\n\nMitigation: Do not supply Zoom credentials unless Zoom attachment support is needed.\n\n## Reference(s):\n\n- [ClawHub skill listing](https://clawhub.ai/chrischall/skills/gogcli-mcp-calendar)\n- [gogcli documentation](https://github.com/openclaw/gogcli)\n- [Model Context Protocol](https://modelcontextprotocol.io)\n\n## Skill Output:\n\n**Output Type(s):** [Text, JSON]\n\n**Output Format:** [MCP tool responses containing calendar and meeting information or action results]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Requires an authenticated gogcli account; available actions depend on account permissions.]\n\n## Skill Version(s):\n\n4.6.0 (source: server release, package.json, manifest.json)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v4.6.0:manifest.json\n\n{\n  \"$schema\": \"https://raw.githubusercontent.com/anthropics/dxt/main/dist/mcpb-manifest.schema.json\",\n  \"manifest_version\": \"0.3\",\n  \"name\": \"gogcli-mcp-calendar\",\n  \"display_name\": \"gogcli (Calendar)\",\n  \"version\": \"4.6.0\",\n  \"description\": \"Extended Google Calendar for Claude via gogcli — auth + Calendar events + Meet space management\",\n  \"author\": {\n    \"name\": \"Chris Hall\",\n    \"email\": \"chris.c.hall@gmail.com\",\n    \"url\": \"https://github.com/chrischall\"\n  },\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"https://github.com/chrischall/gogcli-mcp\"\n  },\n  \"homepage\": \"https://github.com/chrischall/gogcli-mcp\",\n  \"support\": \"https://github.com/chrischall/gogcli-mcp/issues\",\n  \"license\": \"MIT\",\n  \"keywords\": [\n    \"google\",\n    \"calendar\",\n    \"meet\",\n    \"meetings\",\n    \"gogcli\",\n    \"gog\"\n  ],\n  \"server\": {\n    \"type\": \"node\",\n    \"entry_point\": \"dist/index.js\",\n    \"mcp_config\": {\n      \"command\": \"node\",\n      \"args\": [\n        \"${__dirname}/dist/index.js\"\n      ],\n      \"env\": {\n        \"GOG_ACCOUNT\": \"${user_config.gog_account}\",\n        \"GOG_PATH\": \"${user_config.gog_path}\",\n        \"GOG_FILE_ROOTS\": \"${user_config.gog_file_roots}\"\n      }\n    }\n  },\n  \"user_config\": {\n    \"gog_account\": {\n      \"type\": \"string\",\n      \"title\": \"Google Account\",\n      \"description\": \"Default Google account email (optional — uses gogcli's configured default if omitted)\",\n      \"required\": false\n    },\n    \"gog_path\": {\n      \"type\": \"string\",\n      \"title\": \"gog Executable Path\",\n      \"description\": \"Path to the gog executable (optional — defaults to 'gog' on your PATH)\",\n      \"required\": false\n    },\n    \"gog_file_roots\": {\n      \"type\": \"string\",\n      \"title\": \"Allowed file directories\",\n      \"description\": \"Directories tools may read files from (attachments, uploads) or write files to (exports, downloads), separated by ':' (';' on Windows). Optional — defaults to ~/gogcli-mcp-files\",\n      \"required\": false\n    }\n  },\n  \"tools\": [\n    {\n      \"name\": \"gog_auth_add\",\n      \"description\": \"Authorize a Google account via browser-based OAuth\"\n    },\n    {\n      \"name\": \"gog_auth_health\",\n      \"description\": \"Live per-account token health: validity, age, and pre-expiry warnings (detects invalid_grant)\"\n    },\n    {\n      \"name\": \"gog_auth_add_url\",\n      \"description\": \"Begin remote/headless OAuth (step 1): return a sign-in URL to open in any browser\"\n    },\n    {\n      \"name\": \"gog_auth_add_complete\",\n      \"description\": \"Complete remote/headless OAuth (step 2): exchange the pasted redirect URL and store the token\"\n    },\n    {\n      \"name\": \"gog_auth_list\",\n      \"description\": \"List all Google accounts stored in gogcli\"\n    },\n    {\n      \"name\": \"gog_auth_status\",\n      \"description\": \"Show gogcli auth configuration\"\n    },\n    {\n      \"name\": \"gog_auth_services\",\n      \"description\": \"List Google services and OAuth scopes supported by gogcli\"\n    },\n    {\n      \"name\": \"gog_auth_run\",\n      \"description\": \"Run any gog auth subcommand (escape hatch)\"\n    },\n    {\n      \"name\": \"gog_calendar_events\",\n      \"description\": \"List calendar events; compact by default (view=full for descriptions and attendees), paginated and flags a truncated range\"\n    },\n    {\n      \"name\": \"gog_calendar_get\",\n      \"description\": \"Get a specific calendar event\"\n    },\n    {\n      \"name\": \"gog_calendar_create\",\n      \"description\": \"Create a calendar event (optionally attach a Zoom meeting via withZoom)\"\n    },\n    {\n      \"name\": \"gog_calendar_update\",\n      \"description\": \"Update an existing calendar event (add/replace/remove Zoom meeting via withZoom/regenerateZoom/removeZoom)\"\n    },\n    {\n      \"name\": \"gog_calendar_delete\",\n      \"description\": \"Delete a calendar event (asks the user to confirm when it has guests or recurs)\"\n    },\n    {\n      \"name\": \"gog_calendar_respond\",\n      \"description\": \"Respond to a calendar event invitation\"\n    },\n    {\n      \"name\": \"gog_calendar_run\",\n      \"description\": \"Run any gog calendar subcommand (escape hatch)\"\n    },\n    {\n      \"name\": \"gog_calendar_calendars\",\n      \"description\": \"List the calendars in your calendar list\"\n    },\n    {\n      \"name\": \"gog_calendar_search\",\n      \"description\": \"Full-text search for events with optional time filters\"\n    },\n    {\n      \"name\": \"gog_calendar_changed\",\n      \"description\": \"List most recently changed events (including cancellations) across calendars\"\n    },\n    {\n      \"name\": \"gog_calendar_freebusy\",\n      \"description\": \"Query free/busy intervals for one or more calendars\"\n    },\n    {\n      \"name\": \"gog_calendar_colors\",\n      \"description\": \"Show the available calendar and event color palette\"\n    },\n    {\n      \"name\": \"gog_calendar_acl\",\n      \"description\": \"List the access control list (sharing rules) for a calendar\"\n    },\n    {\n      \"name\": \"gog_calendar_move\",\n      \"description\": \"Move an event to another calendar (asks the user to confirm when guests are emailed)\"\n    },\n    {\n      \"name\": \"gog_calendar_out_of_office\",\n      \"description\": \"Create an Out of Office event that auto-declines invitations (asks the user to confirm unless autoDecline is none)\"\n    },\n    {\n      \"name\": \"gog_calendar_unsubscribe\",\n      \"description\": \"Remove a calendar from your calendar list\"\n    },\n    {\n      \"name\": \"gog_calendar_delete_calendar\",\n      \"description\": \"Delete an owned secondary calendar (asks the user to confirm)\"\n    },\n    {\n      \"name\": \"gog_meet_create\",\n      \"description\": \"Create a Google Meet space\"\n    },\n    {\n      \"name\": \"gog_meet_get\",\n      \"description\": \"Get a Google Meet space by meeting code\"\n    },\n    {\n      \"name\": \"gog_meet_update\",\n      \"description\": \"Update a Google Meet space configuration\"\n    },\n    {\n      \"name\": \"gog_meet_end\",\n      \"description\": \"End the active conference in a Meet space\"\n    },\n    {\n      \"name\": \"gog_meet_history\",\n      \"description\": \"List past calls in a Meet space\"\n    },\n    {\n      \"name\": \"gog_meet_participants\",\n      \"description\": \"List participants from a Meet call\"\n    },\n    {\n      \"name\": \"gog_zoom_auth_setup\",\n      \"description\": \"Store Zoom Server-to-Server OAuth credentials (needed for calendar event Zoom attachment)\"\n    },\n    {\n      \"name\": \"gog_zoom_auth_doctor\",\n      \"description\": \"Validate stored Zoom Server-to-Server OAuth credentials\"\n    }\n  ],\n  \"compatibility\": {\n    \"platforms\": [\n      \"darwin\",\n      \"linux\",\n      \"win32\"\n    ],\n    \"runtimes\": {\n      \"node\": \">=22.0.0\"\n    }\n  }\n}\n\nFile v4.6.0:package.json\n\n{\n  \"name\": \"gogcli-mcp-calendar\",\n  \"version\": \"4.6.0\",\n  \"mcpName\": \"io.github.chrischall/gogcli-mcp-calendar\",\n  \"description\": \"Extended Google Calendar + Meet MCP server via gogcli — auth + Calendar events + Meet space management\",\n  \"author\": \"Claude Code (AI) <https://www.anthropic.com/claude>\",\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"https://github.com/chrischall/gogcli-mcp\"\n  },\n  \"type\": \"module\",\n  \"bin\": {\n    \"gogcli-mcp-calendar\": \"dist/index.js\"\n  },\n  \"exports\": {\n    \".\": \"./dist/index.js\"\n  },\n  \"scripts\": {\n    \"build\": \"tsc --noEmit && npm run bundle\",\n    \"bundle\": \"node ../../scripts/bundle.js src/index.ts dist/index.js\",\n    \"typecheck\": \"tsc --noEmit\",\n    \"test\": \"vitest run --coverage\",\n    \"test:watch\": \"vitest\",\n    \"test:coverage\": \"vitest run --coverage\"\n  },\n  \"dependencies\": {\n    \"@chrischall/mcp-utils\": \"^2.6.0\",\n    \"@modelcontextprotocol/server\": \"^2.1.0\",\n    \"zod\": \"^4.6.1\"\n  },\n  \"license\": \"MIT\",\n  \"keywords\": [\n    \"mcp\",\n    \"model-context-protocol\",\n    \"claude\",\n    \"ai\",\n    \"google\",\n    \"gogcli\",\n    \"calendar\",\n    \"meet\",\n    \"meetings\"\n  ]\n}\n\nFile v4.6.0:tsconfig.json\n\n{\n  \"extends\": \"../../tsconfig.base.json\",\n  \"compilerOptions\": {\n    \"outDir\": \"./dist\",\n    \"rootDir\": \"../\"\n  },\n  \"include\": [\"src/**/*\", \"../gogcli-mcp/src/**/*\"],\n  \"exclude\": [\"node_modules\", \"dist\"]\n}\n\nFile v4.6.0:mint.yaml\n\nversion: 1\nname: Google Calendar (gogcli)\nslug: gogcli-mcp-calendar\nsummary: >-\n  Extended Google Calendar + Meet MCP server via gogcli — auth + Calendar\n  events + Meet space management\ncommand:\n  # This package publishes a single bin; naming it keeps the install\n  # unambiguous alongside its eight sibling packages.\n  bin: gogcli-mcp-calendar\nenv:\n  - name: GOG_CLIENT_ID\n    required: false\n    help: >-\n      Google OAuth client id. Read by the Node wrapper at startup\n      (bootstrap-auth.ts), which imports it into gog's keyring via a temp file\n      together with GOG_CLIENT_SECRET, GOG_REFRESH_TOKEN and GOG_ACCOUNT — set\n      all four or none. Not a secret, so unlike GOG_CLIENT_SECRET and\n      GOG_REFRESH_TOKEN it is not stripped from the spawned `gog`'s\n      environment; gog authenticates from its keyring under $HOME (see\n      state.dataDir).\n  - name: GOG_CLIENT_SECRET\n    secret: true\n    required: false\n    help: >-\n      Google OAuth client secret. Imported into gog's keyring at startup with\n      GOG_CLIENT_ID; stripped from the spawned CLI's environment by runner.ts's\n      *_SECRET rule.\n  - name: GOG_REFRESH_TOKEN\n    secret: true\n    required: false\n    help: >-\n      Google OAuth refresh token (`gog auth tokens export` prints one). Imported\n      into gog's keyring at startup with GOG_CLIENT_ID; stripped from the\n      spawned CLI's environment by runner.ts's *_TOKEN rule. Changing it\n      re-imports on the next start; an in-connector re-auth\n      (gog_auth_add_url/complete) stays in effect until it changes.\n  - name: GOG_ACCESS_TOKEN\n    secret: true\n    required: false\n    help: >-\n      Deliberately removed from the spawned CLI's environment by runner.ts, so\n      that a stale directly-passed token cannot shadow gog's stored refresh\n      credential. Leave unset.\n  - name: GOG_ACCOUNT\n    required: false\n    help: >-\n      The Google account to act as. Required for the startup auth bootstrap\n      (the refresh token is imported under this email); otherwise defaults to\n      gog's single/most recent account.\n  - name: GOG_KEYRING_BACKEND\n    required: false\n    help: >-\n      gog's credential store. Set to \"file\" on a headless host — there is no OS\n      keychain — so the keyring lives on the persistent data dir.\n  - name: GOG_KEYRING_PASSWORD\n    secret: true\n    required: false\n    help: >-\n      Encrypts gog's file keyring on the data dir. Required with\n      GOG_KEYRING_BACKEND=file. Deliberately not stripped from the spawned\n      CLI's environment — it is the one credential gog itself reads.\n  - name: GOG_READONLY\n    required: false\n    help: >-\n      Set to 1 to refuse every mutating operation. Recommended when the\n      connector is shared or you only need reads.\n  - name: GOG_PATH\n    required: false\n    help: >-\n      Path to the `gog` binary. Leave unset when the dependency below supplies\n      it; set it only to point at a binary you manage yourself.\n  - name: GOG_TIMEZONE\n    required: false\n    help: >-\n      The IANA zone gog formats its naive timestamps in. The wrapper passes\n      it to every spawned gog and reads it back (naiveSourceTimeZone) to\n      re-attach the offset, so the two always agree. Unset or invalid, both\n      use DISPLAY_TZ, then America/New_York — never the host's local zone.\n  - name: DISPLAY_TZ\n    required: false\n    help: >-\n      The IANA zone every rendered *Display field uses (displayTimeZone,\n      default America/New_York). It does not read GOG_TIMEZONE — the fallback\n      runs the other way, so this is also what GOG_TIMEZONE falls back to. An\n      invalid value degrades to the default rather than throwing.\ndependencies:\n  # Every tool shells out to the `gog` CLI; without it the server starts and\n  # then fails on the first call. This tag must track\n  # packages/gogcli-mcp/src/runner.ts's MIN_GOG_VERSION (the floor the tools\n  # assume). See CLAUDE.md \"Required gog version\" — bumping the floor means\n  # bumping these nine pins, and the pin stored on each mcp-host registration.\n  - kind: github-release\n    repo: openclaw/gogcli\n    tag: v0.43.0\n    asset: \"gogcli_*_linux_amd64.tar.gz\"\n    bin: [gog]\nstate:\n  dataDir: true\n  reason: >-\n    `gog` keeps its authorised-account state and file keyring under $HOME, and\n    the wrapper keeps its auth-bootstrap marker (~/.gogcli-mcp) there, so a\n    restart neither re-imports an unchanged secret nor discards an\n    in-connector re-auth. Without a persistent data dir every cold start has\n    only what the env secrets can re-seed.\negress:\n  allow:\n    # Google OAuth token exchange and the Google REST APIs the CLI calls.\n    - oauth2.googleapis.com\n    - www.googleapis.com\n    - googleapis.com\n\nFile v4.6.0:LICENSE\n\nMIT License\n\nCopyright (c) 2026 Chris Hall\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n\nArchive v4.5.2: 16 files, 300856 bytes\n\nFiles: CHANGELOG.md (933b), dist/index.js (1493942b), LICENSE (1067b), manifest.json (6493b), mint.yaml (4703b), package.json (1119b), README.md (1535b), skill-card.md (2027b), SKILL.md (1370b), src/index.ts (531b), src/tools/calendar-extra.ts (22209b), tests/tools/calendar-extra-gates.test.ts (12164b), tests/tools/calendar-extra.test.ts (16875b), tsconfig.json (209b), vitest.config.ts (523b), _meta.json (138b)\n\nFile v4.5.2:SKILL.md\n\n---\nname: gogcli-mcp-calendar\ndescription: Use when the user asks to manage Google Calendar events or Google Meet spaces. Triggers for scheduling, listing events, creating/updating/deleting events, responding to invitations, creating Meet spaces, ending conferences, listing meeting participants or call history.\n---\n\n# gogcli-mcp-calendar\n\nExtended Google Calendar MCP server via [gogcli](https://github.com/openclaw/gogcli) — 18 tools: auth + 7 base Calendar + 6 extra Meet tools.\n\n- **Source:** [github.com/chrischall/gogcli-mcp](https://github.com/chrischall/gogcli-mcp)\n\n## Requirements\n\n- [gogcli](https://github.com/openclaw/gogcli) installed and authenticated\n- Node.js 22 or later\n\n## Setup\n\n```json\n{\n  \"mcpServers\": {\n    \"gogcli-calendar\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"gogcli-mcp-calendar\"],\n      \"env\": {\n        \"GOG_ACCOUNT\": \"you@gmail.com\"\n      }\n    }\n  }\n}\n```\n\n## Extra Meet Tools\n\n| Tool | What it does |\n|------|-------------|\n| `gog_meet_create` | Create a Meet space |\n| `gog_meet_get` | Get a Meet space by code |\n| `gog_meet_update` | Update Meet space config |\n| `gog_meet_end` | End the active conference |\n| `gog_meet_history` | List past calls in a space |\n| `gog_meet_participants` | List call participants |\n\nPlus 5 auth tools and 7 base Calendar tools (`gog_calendar_events/get/create/update/delete/respond/run`).\n\nFile v4.5.2:README.md\n\n# gogcli-mcp-calendar\n\n> [!WARNING]\n> **AI-developed project.** This codebase was built and is actively maintained by [Claude Code](https://www.anthropic.com/claude). Review all code and tool permissions before use.\n\nExtended Google Calendar [MCP](https://modelcontextprotocol.io) server via [gogcli](https://github.com/openclaw/gogcli). Includes auth tools plus the base Calendar tools and 6 additional dedicated Google Meet tools for space management.\n\n## Requirements\n\n- [gogcli](https://github.com/openclaw/gogcli) installed and authenticated\n- Node.js 22+\n\n```bash\nbrew install gogcli\ngog auth add your@gmail.com --services calendar,meet\n```\n\n## Installation\n\n```bash\nnpm install -g gogcli-mcp-calendar\n```\n\n### Claude Desktop\n\n```json\n{\n  \"mcpServers\": {\n    \"gogcli-calendar\": {\n      \"command\": \"gogcli-mcp-calendar\",\n      \"env\": {\n        \"GOG_ACCOUNT\": \"you@gmail.com\"\n      }\n    }\n  }\n}\n```\n\n### Claude Code\n\n```bash\nclaude mcp add gogcli-calendar -- gogcli-mcp-calendar\n```\n\n## Extra Meet Tools (6)\n\nPlus 5 auth tools and 7 base Calendar tools (events, get, create, update, delete, respond, run).\n\n| Tool | Description |\n|------|-------------|\n| `gog_meet_create` | Create a Google Meet space |\n| `gog_meet_get` | Get a Meet space by meeting code |\n| `gog_meet_update` | Update Meet space configuration (access type) |\n| `gog_meet_end` | End the active conference in a Meet space |\n| `gog_meet_history` | List past calls in a Meet space |\n| `gog_meet_participants` | List participants from a Meet call |\n\n## License\n\nMIT\n\nFile v4.5.2:_meta.json\n\n{\n  \"ownerId\": \"kn700jq4sjtf2anb0rk3ft4p7n856872\",\n  \"slug\": \"gogcli-mcp-calendar\",\n  \"version\": \"4.5.2\",\n  \"publishedAt\": 1790572747985\n}\n\nFile v4.5.2:CHANGELOG.md\n\n# Changelog\n\n## [2.1.0](https://github.com/chrischall/gogcli-mcp/compare/v2.0.13...v2.1.0) (2026-05-25)\n\n\n### Features\n\n* wrap new gog cli v0.18.0 tools ([173242a](https://github.com/chrischall/gogcli-mcp/commit/173242aafaa8c2f2d7282a2fbd8faedfc65a63bd))\n\n\n### Refactor\n\n* aggressive cleanup pass (audit findings) ([e635b39](https://github.com/chrischall/gogcli-mcp/commit/e635b391cf611e9c102a422ffbce5ebe28687b80))\n* rebalance base vs sub-package tool split (120 -&gt; 84 base) ([1074953](https://github.com/chrischall/gogcli-mcp/commit/1074953833fc4766e85cc0b28cbcc08834f8dc47))\n* review-pass cleanup (enums, shared schemas, test harness) ([ea851de](https://github.com/chrischall/gogcli-mcp/commit/ea851deb30b9cfef3f07ed506a011fc363b34018))\n\n\n### Documentation\n\n* update gogcli repo URLs to openclaw/gogcli (was steipete/gogcli) ([951a181](https://github.com/chrischall/gogcli-mcp/commit/951a1818ebc269f203aee723ccbea32c13817d8b))\n\nFile v4.5.2:skill-card.md\n\n## Description:\n\nConnects an agent to Google Calendar and Google Meet to manage events, invitations, meeting spaces, and call history.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[chrischall](https://clawhub.ai/user/chrischall)\n\n### License/Terms of Use:\n\nMIT\n\n## Use Case:\n\nPeople and teams use this skill through an agent to schedule and manage Google Calendar events, respond to invitations, and manage Google Meet spaces and call information.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Calendar and Meet access may allow broader account actions than expected.\n\nMitigation: Review tool permissions before installation; use a dedicated Google account or set GOG_READONLY=1 when only read access is needed.\n\nRisk: Ending a Meet conference can disrupt participants without an enforced confirmation step.\n\nMitigation: Require explicit user approval before calling gog_meet_end.\n\nRisk: Calendar deletion, unsubscribing, and unrestricted run tools can make high-impact account changes.\n\nMitigation: Restrict these tools to trusted, approval-gated workflows; configure Zoom credentials only when needed.\n\n## Reference(s):\n\n- [ClawHub skill listing](https://clawhub.ai/chrischall/skills/gogcli-mcp-calendar)\n- [gogcli documentation](https://github.com/openclaw/gogcli)\n- [Model Context Protocol](https://modelcontextprotocol.io)\n\n## Skill Output:\n\n**Output Type(s):** [Text]\n\n**Output Format:** [MCP tool responses with calendar and meeting information]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include event details, meeting codes, participant lists, and call history.]\n\n## Skill Version(s):\n\n4.5.2 (source: server-resolved release, package.json, manifest.json)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v4.5.2:manifest.json\n\n{\n  \"$schema\": \"https://raw.githubusercontent.com/anthropics/dxt/main/dist/mcpb-manifest.schema.json\",\n  \"manifest_version\": \"0.3\",\n  \"name\": \"gogcli-mcp-calendar\",\n  \"display_name\": \"gogcli (Calendar)\",\n  \"version\": \"4.5.2\",\n  \"description\": \"Extended Google Calendar for Claude via gogcli — auth + Calendar events + Meet space management\",\n  \"author\": {\n    \"name\": \"Chris Hall\",\n    \"email\": \"chris.c.hall@gmail.com\",\n    \"url\": \"https://github.com/chrischall\"\n  },\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"https://github.com/chrischall/gogcli-mcp\"\n  },\n  \"homepage\": \"https://github.com/chrischall/gogcli-mcp\",\n  \"support\": \"https://github.com/chrischall/gogcli-mcp/issues\",\n  \"license\": \"MIT\",\n  \"keywords\": [\n    \"google\",\n    \"calendar\",\n    \"meet\",\n    \"meetings\",\n    \"gogcli\",\n    \"gog\"\n  ],\n  \"server\": {\n    \"type\": \"node\",\n    \"entry_point\": \"dist/index.js\",\n    \"mcp_config\": {\n      \"command\": \"node\",\n      \"args\": [\n        \"${__dirname}/dist/index.js\"\n      ],\n      \"env\": {\n        \"GOG_ACCOUNT\": \"${user_config.gog_account}\",\n        \"GOG_PATH\": \"${user_config.gog_path}\",\n        \"GOG_FILE_ROOTS\": \"${user_config.gog_file_roots}\"\n      }\n    }\n  },\n  \"user_config\": {\n    \"gog_account\": {\n      \"type\": \"string\",\n      \"title\": \"Google Account\",\n      \"description\": \"Default Google account email (optional — uses gogcli's configured default if omitted)\",\n      \"required\": false\n    },\n    \"gog_path\": {\n      \"type\": \"string\",\n      \"title\": \"gog Executable Path\",\n      \"description\": \"Path to the gog executable (optional — defaults to 'gog' on your PATH)\",\n      \"required\": false\n    },\n    \"gog_file_roots\": {\n      \"type\": \"string\",\n      \"title\": \"Allowed file directories\",\n      \"description\": \"Directories tools may read files from (attachments, uploads) or write files to (exports, downloads), separated by ':' (';' on Windows). Optional — defaults to ~/gogcli-mcp-files\",\n      \"required\": false\n    }\n  },\n  \"tools\": [\n    {\n      \"name\": \"gog_auth_add\",\n      \"description\": \"Authorize a Google account via browser-based OAuth\"\n    },\n    {\n      \"name\": \"gog_auth_health\",\n      \"description\": \"Live per-account token health: validity, age, and pre-expiry warnings (detects invalid_grant)\"\n    },\n    {\n      \"name\": \"gog_auth_add_url\",\n      \"description\": \"Begin remote/headless OAuth (step 1): return a sign-in URL to open in any browser\"\n    },\n    {\n      \"name\": \"gog_auth_add_complete\",\n      \"description\": \"Complete remote/headless OAuth (step 2): exchange the pasted redirect URL and store the token\"\n    },\n    {\n      \"name\": \"gog_auth_list\",\n      \"description\": \"List all Google accounts stored in gogcli\"\n    },\n    {\n      \"name\": \"gog_auth_status\",\n      \"description\": \"Show gogcli auth configuration\"\n    },\n    {\n      \"name\": \"gog_auth_services\",\n      \"description\": \"List Google services and OAuth scopes supported by gogcli\"\n    },\n    {\n      \"name\": \"gog_auth_run\",\n      \"description\": \"Run any gog auth subcommand (escape hatch)\"\n    },\n    {\n      \"name\": \"gog_calendar_events\",\n      \"description\": \"List calendar events; compact by default (view=full for descriptions and attendees), paginated and flags a truncated range\"\n    },\n    {\n      \"name\": \"gog_calendar_get\",\n      \"description\": \"Get a specific calendar event\"\n    },\n    {\n      \"name\": \"gog_calendar_create\",\n      \"description\": \"Create a calendar event (optionally attach a Zoom meeting via withZoom)\"\n    },\n    {\n      \"name\": \"gog_calendar_update\",\n      \"description\": \"Update an existing calendar event (add/replace/remove Zoom meeting via withZoom/regenerateZoom/removeZoom)\"\n    },\n    {\n      \"name\": \"gog_calendar_delete\",\n      \"description\": \"Delete a calendar event (asks the user to confirm when it has guests or recurs)\"\n    },\n    {\n      \"name\": \"gog_calendar_respond\",\n      \"description\": \"Respond to a calendar event invitation\"\n    },\n    {\n      \"name\": \"gog_calendar_run\",\n      \"description\": \"Run any gog calendar subcommand (escape hatch)\"\n    },\n    {\n      \"name\": \"gog_calendar_calendars\",\n      \"description\": \"List the calendars in your calendar list\"\n    },\n    {\n      \"name\": \"gog_calendar_search\",\n      \"description\": \"Full-text search for events with optional time filters\"\n    },\n    {\n      \"name\": \"gog_calendar_changed\",\n      \"description\": \"List most recently changed events (including cancellations) across calendars\"\n    },\n    {\n      \"name\": \"gog_calendar_freebusy\",\n      \"description\": \"Query free/busy intervals for one or more calendars\"\n    },\n    {\n      \"name\": \"gog_calendar_colors\",\n      \"description\": \"Show the available calendar and event color palette\"\n    },\n    {\n      \"name\": \"gog_calendar_acl\",\n      \"description\": \"List the access control list (sharing rules) for a calendar\"\n    },\n    {\n      \"name\": \"gog_calendar_move\",\n      \"description\": \"Move an event to another calendar (asks the user to confirm when guests are emailed)\"\n    },\n    {\n      \"name\": \"gog_calendar_out_of_office\",\n      \"description\": \"Create an Out of Office event that auto-declines invitations (asks the user to confirm unless autoDecline is none)\"\n    },\n    {\n      \"name\": \"gog_calendar_unsubscribe\",\n      \"description\": \"Remove a calendar from your calendar list\"\n    },\n    {\n      \"name\": \"gog_calendar_delete_calendar\",\n      \"description\": \"Delete an owned secondary calendar (asks the user to confirm)\"\n    },\n    {\n      \"name\": \"gog_meet_create\",\n      \"description\": \"Create a Google Meet space\"\n    },\n    {\n      \"name\": \"gog_meet_get\",\n      \"description\": \"Get a Google Meet space by meeting code\"\n    },\n    {\n      \"name\": \"gog_meet_update\",\n      \"description\": \"Update a Google Meet space configuration\"\n    },\n    {\n      \"name\": \"gog_meet_end\",\n      \"description\": \"End the active conference in a Meet space\"\n    },\n    {\n      \"name\": \"gog_meet_history\",\n      \"description\": \"List past calls in a Meet space\"\n    },\n    {\n      \"name\": \"gog_meet_participants\",\n      \"description\": \"List participants from a Meet call\"\n    },\n    {\n      \"name\": \"gog_zoom_auth_setup\",\n      \"description\": \"Store Zoom Server-to-Server OAuth credentials (needed for calendar event Zoom attachment)\"\n    },\n    {\n      \"name\": \"gog_zoom_auth_doctor\",\n      \"description\": \"Validate stored Zoom Server-to-Server OAuth credentials\"\n    }\n  ],\n  \"compatibility\": {\n    \"platforms\": [\n      \"darwin\",\n      \"linux\",\n      \"win32\"\n    ],\n    \"runtimes\": {\n      \"node\": \">=22.0.0\"\n    }\n  }\n}\n\nFile v4.5.2:package.json\n\n{\n  \"name\": \"gogcli-mcp-calendar\",\n  \"version\": \"4.5.2\",\n  \"mcpName\": \"io.github.chrischall/gogcli-mcp-calendar\",\n  \"description\": \"Extended Google Calendar + Meet MCP server via gogcli — auth + Calendar events + Meet space management\",\n  \"author\": \"Claude Code (AI) <https://www.anthropic.com/claude>\",\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"https://github.com/chrischall/gogcli-mcp\"\n  },\n  \"type\": \"module\",\n  \"bin\": {\n    \"gogcli-mcp-calendar\": \"dist/index.js\"\n  },\n  \"exports\": {\n    \".\": \"./dist/index.js\"\n  },\n  \"scripts\": {\n    \"build\": \"tsc --noEmit && npm run bundle\",\n    \"bundle\": \"node ../../scripts/bundle.js src/index.ts dist/index.js\",\n    \"typecheck\": \"tsc --noEmit\",\n    \"test\": \"vitest run --coverage\",\n    \"test:watch\": \"vitest\",\n    \"test:coverage\": \"vitest run --coverage\"\n  },\n  \"dependencies\": {\n    \"@chrischall/mcp-utils\": \"^2.6.0\",\n    \"@modelcontextprotocol/server\": \"^2.1.0\",\n    \"zod\": \"^4.6.1\"\n  },\n  \"license\": \"MIT\",\n  \"keywords\": [\n    \"mcp\",\n    \"model-context-protocol\",\n    \"claude\",\n    \"ai\",\n    \"google\",\n    \"gogcli\",\n    \"calendar\",\n    \"meet\",\n    \"meetings\"\n  ]\n}\n\nFile v4.5.2:tsconfig.json\n\n{\n  \"extends\": \"../../tsconfig.base.json\",\n  \"compilerOptions\": {\n    \"outDir\": \"./dist\",\n    \"rootDir\": \"../\"\n  },\n  \"include\": [\"src/**/*\", \"../gogcli-mcp/src/**/*\"],\n  \"exclude\": [\"node_modules\", \"dist\"]\n}\n\nFile v4.5.2:mint.yaml\n\nversion: 1\nname: Google Calendar (gogcli)\nslug: gogcli-mcp-calendar\nsummary: >-\n  Extended Google Calendar + Meet MCP server via gogcli — auth + Calendar\n  events + Meet space management\ncommand:\n  # This package publishes a single bin; naming it keeps the install\n  # unambiguous alongside its eight sibling packages.\n  bin: gogcli-mcp-calendar\nenv:\n  - name: GOG_CLIENT_ID\n    required: false\n    help: >-\n      Google OAuth client id. Read by the Node wrapper at startup\n      (bootstrap-auth.ts), which imports it into gog's keyring via a temp file\n      together with GOG_CLIENT_SECRET, GOG_REFRESH_TOKEN and GOG_ACCOUNT — set\n      all four or none. Not a secret, so unlike GOG_CLIENT_SECRET and\n      GOG_REFRESH_TOKEN it is not stripped from the spawned `gog`'s\n      environment; gog authenticates from its keyring under $HOME (see\n      state.dataDir).\n  - name: GOG_CLIENT_SECRET\n    secret: true\n    required: false\n    help: >-\n      Google OAuth client secret. Imported into gog's keyring at startup with\n      GOG_CLIENT_ID; stripped from the spawned CLI's environment by runner.ts's\n      *_SECRET rule.\n  - name: GOG_REFRESH_TOKEN\n    secret: true\n    required: false\n    help: >-\n      Google OAuth refresh token (`gog auth tokens export` prints one). Imported\n      into gog's keyring at startup with GOG_CLIENT_ID; stripped from the\n      spawned CLI's environment by runner.ts's *_TOKEN rule. Changing it\n      re-imports on the next start; an in-connector re-auth\n      (gog_auth_add_url/complete) stays in effect until it changes.\n  - name: GOG_ACCESS_TOKEN\n    secret: true\n    required: false\n    help: >-\n      Deliberately removed from the spawned CLI's environment by runner.ts, so\n      that a stale directly-passed token cannot shadow gog's stored refresh\n      credential. Leave unset.\n  - name: GOG_ACCOUNT\n    required: false\n    help: >-\n      The Google account to act as. Required for the startup auth bootstrap\n      (the refresh token is imported under this email); otherwise defaults to\n      gog's single/most recent account.\n  - name: GOG_KEYRING_BACKEND\n    required: false\n    help: >-\n      gog's credential store. Set to \"file\" on a headless host — there is no OS\n      keychain — so the keyring lives on the persistent data dir.\n  - name: GOG_KEYRING_PASSWORD\n    secret: true\n    required: false\n    help: >-\n      Encrypts gog's file keyring on the data dir. Required with\n      GOG_KEYRING_BACKEND=file. Deliberately not stripped from the spawned\n      CLI's environment — it is the one credential gog itself reads.\n  - name: GOG_READONLY\n    required: false\n    help: >-\n      Set to 1 to refuse every mutating operation. Recommended when the\n      connector is shared or you only need reads.\n  - name: GOG_PATH\n    required: false\n    help: >-\n      Path to the `gog` binary. Leave unset when the dependency below supplies\n      it; set it only to point at a binary you manage yourself.\n  - name: GOG_TIMEZONE\n    required: false\n    help: >-\n      The IANA zone gog formats its naive timestamps in. The wrapper passes\n      it to every spawned gog and reads it back (naiveSourceTimeZone) to\n      re-attach the offset, so the two always agree. Unset or invalid, both\n      use DISPLAY_TZ, then America/New_York — never the host's local zone.\n  - name: DISPLAY_TZ\n    required: false\n    help: >-\n      The IANA zone every rendered *Display field uses (displayTimeZone,\n      default America/New_York). It does not read GOG_TIMEZONE — the fallback\n      runs the other way, so this is also what GOG_TIMEZONE falls back to. An\n      invalid value degrades to the default rather than throwing.\ndependencies:\n  # Every tool shells out to the `gog` CLI; without it the server starts and\n  # then fails on the first call. This tag must track\n  # packages/gogcli-mcp/src/runner.ts's MIN_GOG_VERSION (the floor the tools\n  # assume). See CLAUDE.md \"Required gog version\" — bumping the floor means\n  # bumping these nine pins, and the pin stored on each mcp-host registration.\n  - kind: github-release\n    repo: openclaw/gogcli\n    tag: v0.41.0\n    asset: \"gogcli_*_linux_amd64.tar.gz\"\n    bin: [gog]\nstate:\n  dataDir: true\n  reason: >-\n    `gog` keeps its authorised-account state and file keyring under $HOME, and\n    the wrapper keeps its auth-bootstrap marker (~/.gogcli-mcp) there, so a\n    restart neither re-imports an unchanged secret nor discards an\n    in-connector re-auth. Without a persistent data dir every cold start has\n    only what the env secrets can re-seed.\negress:\n  allow:\n    # Google OAuth token exchange and the Google REST APIs the CLI calls.\n    - oauth2.googleapis.com\n    - www.googleapis.com\n    - googleapis.com\n\nFile v4.5.2:LICENSE\n\nMIT License\n\nCopyright (c) 2026 Chris Hall\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n\nArchive v4.5.1: 16 files, 299894 bytes\n\nFiles: CHANGELOG.md (933b), dist/index.js (1488867b), LICENSE (1067b), manifest.json (6493b), mint.yaml (4703b), package.json (1119b), README.md (1535b), skill-card.md (2110b), SKILL.md (1370b), src/index.ts (531b), src/tools/calendar-extra.ts (22209b), tests/tools/calendar-extra-gates.test.ts (12164b), tests/tools/calendar-extra.test.ts (16875b), tsconfig.json (209b), vitest.config.ts (523b), _meta.json (138b)\n\nFile v4.5.1:SKILL.md\n\n---\nname: gogcli-mcp-calendar\ndescription: Use when the user asks to manage Google Calendar events or Google Meet spaces. Triggers for scheduling, listing events, creating/updating/deleting events, responding to invitations, creating Meet spaces, ending conferences, listing meeting participants or call history.\n---\n\n# gogcli-mcp-calendar\n\nExtended Google Calendar MCP server via [gogcli](https://github.com/openclaw/gogcli) — 18 tools: auth + 7 base Calendar + 6 extra Meet tools.\n\n- **Source:** [github.com/chrischall/gogcli-mcp](https://github.com/chrischall/gogcli-mcp)\n\n## Requirements\n\n- [gogcli](https://github.com/openclaw/gogcli) installed and authenticated\n- Node.js 22 or later\n\n## Setup\n\n```json\n{\n  \"mcpServers\": {\n    \"gogcli-calendar\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"gogcli-mcp-calendar\"],\n      \"env\": {\n        \"GOG_ACCOUNT\": \"you@gmail.com\"\n      }\n    }\n  }\n}\n```\n\n## Extra Meet Tools\n\n| Tool | What it does |\n|------|-------------|\n| `gog_meet_create` | Create a Meet space |\n| `gog_meet_get` | Get a Meet space by code |\n| `gog_meet_update` | Update Meet space config |\n| `gog_meet_end` | End the active conference |\n| `gog_meet_history` | List past calls in a space |\n| `gog_meet_participants` | List call participants |\n\nPlus 5 auth tools and 7 base Calendar tools (`gog_calendar_events/get/create/update/delete/respond/run`).\n\nFile v4.5.1:README.md\n\n# gogcli-mcp-calendar\n\n> [!WARNING]\n> **AI-developed project.** This codebase was built and is actively maintained by [Claude Code](https://www.anthropic.com/claude). Review all code and tool permissions before use.\n\nExtended Google Calendar [MCP](https://modelcontextprotocol.io) server via [gogcli](https://github.com/openclaw/gogcli). Includes auth tools plus the base Calendar tools and 6 additional dedicated Google Meet tools for space management.\n\n## Requirements\n\n- [gogcli](https://github.com/openclaw/gogcli) installed and authenticated\n- Node.js 22+\n\n```bash\nbrew install gogcli\ngog auth add your@gmail.com --services calendar,meet\n```\n\n## Installation\n\n```bash\nnpm install -g gogcli-mcp-calendar\n```\n\n### Claude Desktop\n\n```json\n{\n  \"mcpServers\": {\n    \"gogcli-calendar\": {\n      \"command\": \"gogcli-mcp-calendar\",\n      \"env\": {\n        \"GOG_ACCOUNT\": \"you@gmail.com\"\n      }\n    }\n  }\n}\n```\n\n### Claude Code\n\n```bash\nclaude mcp add gogcli-calendar -- gogcli-mcp-calendar\n```\n\n## Extra Meet Tools (6)\n\nPlus 5 auth tools and 7 base Calendar tools (events, get, create, update, delete, respond, run).\n\n| Tool | Description |\n|------|-------------|\n| `gog_meet_create` | Create a Google Meet space |\n| `gog_meet_get` | Get a Meet space by meeting code |\n| `gog_meet_update` | Update Meet space configuration (access type) |\n| `gog_meet_end` | End the active conference in a Meet space |\n| `gog_meet_history` | List past calls in a Meet space |\n| `gog_meet_participants` | List participants from a Meet call |\n\n## License\n\nMIT\n\nFile v4.5.1:_meta.json\n\n{\n  \"ownerId\": \"kn700jq4sjtf2anb0rk3ft4p7n856872\",\n  \"slug\": \"gogcli-mcp-calendar\",\n  \"version\": \"4.5.1\",\n  \"publishedAt\": 1790350786827\n}\n\nFile v4.5.1:CHANGELOG.md\n\n# Changelog\n\n## [2.1.0](https://github.com/chrischall/gogcli-mcp/compare/v2.0.13...v2.1.0) (2026-05-25)\n\n\n### Features\n\n* wrap new gog cli v0.18.0 tools ([173242a](https://github.com/chrischall/gogcli-mcp/commit/173242aafaa8c2f2d7282a2fbd8faedfc65a63bd))\n\n\n### Refactor\n\n* aggressive cleanup pass (audit findings) ([e635b39](https://github.com/chrischall/gogcli-mcp/commit/e635b391cf611e9c102a422ffbce5ebe28687b80))\n* rebalance base vs sub-package tool split (120 -&gt; 84 base) ([1074953](https://github.com/chrischall/gogcli-mcp/commit/1074953833fc4766e85cc0b28cbcc08834f8dc47))\n* review-pass cleanup (enums, shared schemas, test harness) ([ea851de](https://github.com/chrischall/gogcli-mcp/commit/ea851deb30b9cfef3f07ed506a011fc363b34018))\n\n\n### Documentation\n\n* update gogcli repo URLs to openclaw/gogcli (was steipete/gogcli) ([951a181](https://github.com/chrischall/gogcli-mcp/commit/951a1818ebc269f203aee723ccbea32c13817d8b))\n\nFile v4.5.1:skill-card.md\n\n## Description:\n\nHelps agents manage Google Calendar events and Google Meet spaces, including scheduling, invitations, meeting history, and participants.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[chrischall](https://clawhub.ai/user/chrischall)\n\n### License/Terms of Use:\n\nMIT\n\n## Use Case:\n\nPeople and teams use this skill through an agent to find and manage calendar events, respond to invitations, and create or manage Google Meet spaces and calls.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Calendar changes and meeting actions can affect other people or disrupt active meetings, and some actions lack a separate confirmation step.\n\nMitigation: Review the requested action and its participants before proceeding; explicitly confirm destructive changes and ending an active conference.\n\nRisk: Access to an important Google account exposes calendar data and permits high-impact actions.\n\nMitigation: Use a dedicated, least-privileged account where possible, and enable GOG_READONLY when only reading is needed.\n\nRisk: Google and Zoom credentials may be stored on the host.\n\nMitigation: Review installation and credential permissions before use, and protect the host account and stored credentials.\n\n## Reference(s):\n\n- [ClawHub skill release](https://clawhub.ai/chrischall/skills/gogcli-mcp-calendar)\n- [gogcli documentation](https://github.com/openclaw/gogcli)\n- [Model Context Protocol](https://modelcontextprotocol.io)\n\n## Skill Output:\n\n**Output Type(s):** [Text, JSON, Guidance]\n\n**Output Format:** [MCP tool responses with text or structured data]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include calendar details, meeting information, and participant data.]\n\n## Skill Version(s):\n\n4.5.1 (source: ClawHub release and package.json)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v4.5.1:manifest.json\n\n{\n  \"$schema\": \"https://raw.githubusercontent.com/anthropics/dxt/main/dist/mcpb-manifest.schema.json\",\n  \"manifest_version\": \"0.3\",\n  \"name\": \"gogcli-mcp-calendar\",\n  \"display_name\": \"gogcli (Calendar)\",\n  \"version\": \"4.5.1\",\n  \"description\": \"Extended Google Calendar for Claude via gogcli — auth + Calendar events + Meet space management\",\n  \"author\": {\n    \"name\": \"Chris Hall\",\n    \"email\": \"chris.c.hall@gmail.com\",\n    \"url\": \"https://github.com/chrischall\"\n  },\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"https://github.com/chrischall/gogcli-mcp\"\n  },\n  \"homepage\": \"https://github.com/chrischall/gogcli-mcp\",\n  \"support\": \"https://github.com/chrischall/gogcli-mcp/issues\",\n  \"license\": \"MIT\",\n  \"keywords\": [\n    \"google\",\n    \"calendar\",\n    \"meet\",\n    \"meetings\",\n    \"gogcli\",\n    \"gog\"\n  ],\n  \"server\": {\n    \"type\": \"node\",\n    \"entry_point\": \"dist/index.js\",\n    \"mcp_config\": {\n      \"command\": \"node\",\n      \"args\": [\n        \"${__dirname}/dist/index.js\"\n      ],\n      \"env\": {\n        \"GOG_ACCOUNT\": \"${user_config.gog_account}\",\n        \"GOG_PATH\": \"${user_config.gog_path}\",\n        \"GOG_FILE_ROOTS\": \"${user_config.gog_file_roots}\"\n      }\n    }\n  },\n  \"user_config\": {\n    \"gog_account\": {\n      \"type\": \"string\",\n      \"title\": \"Google Account\",\n      \"description\": \"Default Google account email (optional — uses gogcli's configured default if omitted)\",\n      \"required\": false\n    },\n    \"gog_path\": {\n      \"type\": \"string\",\n      \"title\": \"gog Executable Path\",\n      \"description\": \"Path to the gog executable (optional — defaults to 'gog' on your PATH)\",\n      \"required\": false\n    },\n    \"gog_file_roots\": {\n      \"type\": \"string\",\n      \"title\": \"Allowed file directories\",\n      \"description\": \"Directories tools may read files from (attachments, uploads) or write files to (exports, downloads), separated by ':' (';' on Windows). Optional — defaults to ~/gogcli-mcp-files\",\n      \"required\": false\n    }\n  },\n  \"tools\": [\n    {\n      \"name\": \"gog_auth_add\",\n      \"description\": \"Authorize a Google account via browser-based OAuth\"\n    },\n    {\n      \"name\": \"gog_auth_health\",\n      \"description\": \"Live per-account token health: validity, age, and pre-expiry warnings (detects invalid_grant)\"\n    },\n    {\n      \"name\": \"gog_auth_add_url\",\n      \"description\": \"Begin remote/headless OAuth (step 1): return a sign-in URL to open in any browser\"\n    },\n    {\n      \"name\": \"gog_auth_add_complete\",\n      \"description\": \"Complete remote/headless OAuth (step 2): exchange the pasted redirect URL and store the token\"\n    },\n    {\n      \"name\": \"gog_auth_list\",\n      \"description\": \"List all Google accounts stored in gogcli\"\n    },\n    {\n      \"name\": \"gog_auth_status\",\n      \"description\": \"Show gogcli auth configuration\"\n    },\n    {\n      \"name\": \"gog_auth_services\",\n      \"description\": \"List Google services and OAuth scopes supported by gogcli\"\n    },\n    {\n      \"name\": \"gog_auth_run\",\n      \"description\": \"Run any gog auth subcommand (escape hatch)\"\n    },\n    {\n      \"name\": \"gog_calendar_events\",\n      \"description\": \"List calendar events; compact by default (view=full for descriptions and attendees), paginated and flags a truncated range\"\n    },\n    {\n      \"name\": \"gog_calendar_get\",\n      \"description\": \"Get a specific calendar event\"\n    },\n    {\n      \"name\": \"gog_calendar_create\",\n      \"description\": \"Create a calendar event (optionally attach a Zoom meeting via withZoom)\"\n    },\n    {\n      \"name\": \"gog_calendar_update\",\n      \"description\": \"Update an existing calendar event (add/replace/remove Zoom meeting via withZoom/regenerateZoom/removeZoom)\"\n    },\n    {\n      \"name\": \"gog_calendar_delete\",\n      \"description\": \"Delete a calendar event (asks the user to confirm when it has guests or recurs)\"\n    },\n    {\n      \"name\": \"gog_calendar_respond\",\n      \"description\": \"Respond to a calendar event invitation\"\n    },\n    {\n      \"name\": \"gog_calendar_run\",\n      \"description\": \"Run any gog calendar subcommand (escape hatch)\"\n    },\n    {\n      \"name\": \"gog_calendar_calendars\",\n      \"description\": \"List the calendars in your calendar list\"\n    },\n    {\n      \"name\": \"gog_calendar_search\",\n      \"description\": \"Full-text search for events with optional time filters\"\n    },\n    {\n      \"name\": \"gog_calendar_changed\",\n      \"description\": \"List most recently changed events (including cancellations) across calendars\"\n    },\n    {\n      \"name\": \"gog_calendar_freebusy\",\n      \"description\": \"Query free/busy intervals for one or more calendars\"\n    },\n    {\n      \"name\": \"gog_calendar_colors\",\n      \"description\": \"Show the available calendar and event color palette\"\n    },\n    {\n      \"name\": \"gog_calendar_acl\",\n      \"description\": \"List the access control list (sharing rules) for a calendar\"\n    },\n    {\n      \"name\": \"gog_calendar_move\",\n      \"description\": \"Move an event to another calendar (asks the user to confirm when guests are emailed)\"\n    },\n    {\n      \"name\": \"gog_calendar_out_of_office\",\n      \"description\": \"Create an Out of Office event that auto-declines invitations (asks the user to confirm unless autoDecline is none)\"\n    },\n    {\n      \"name\": \"gog_calendar_unsubscribe\",\n      \"description\": \"Remove a calendar from your calendar list\"\n    },\n    {\n      \"name\": \"gog_calendar_delete_calendar\",\n      \"description\": \"Delete an owned secondary calendar (asks the user to confirm)\"\n    },\n    {\n      \"name\": \"gog_meet_create\",\n      \"description\": \"Create a Google Meet space\"\n    },\n    {\n      \"name\": \"gog_meet_get\",\n      \"description\": \"Get a Google Meet space by meeting code\"\n    },\n    {\n      \"name\": \"gog_meet_update\",\n      \"description\": \"Update a Google Meet space configuration\"\n    },\n    {\n      \"name\": \"gog_meet_end\",\n      \"description\": \"End the active conference in a Meet space\"\n    },\n    {\n      \"name\": \"gog_meet_history\",\n      \"description\": \"List past calls in a Meet space\"\n    },\n    {\n      \"name\": \"gog_meet_participants\",\n      \"description\": \"List participants from a Meet call\"\n    },\n    {\n      \"name\": \"gog_zoom_auth_setup\",\n      \"description\": \"Store Zoom Server-to-Server OAuth credentials (needed for calendar event Zoom attachment)\"\n    },\n    {\n      \"name\": \"gog_zoom_auth_doctor\",\n      \"description\": \"Validate stored Zoom Server-to-Server OAuth credentials\"\n    }\n  ],\n  \"compatibility\": {\n    \"platforms\": [\n      \"darwin\",\n      \"linux\",\n      \"win32\"\n    ],\n    \"runtimes\": {\n      \"node\": \">=22.0.0\"\n    }\n  }\n}\n\nFile v4.5.1:package.json\n\n{\n  \"name\": \"gogcli-mcp-calendar\",\n  \"version\": \"4.5.1\",\n  \"mcpName\": \"io.github.chrischall/gogcli-mcp-calendar\",\n  \"description\": \"Extended Google Calendar + Meet MCP server via gogcli — auth + Calendar events + Meet space management\",\n  \"author\": \"Claude Code (AI) <https://www.anthropic.com/claude>\",\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"https://github.com/chrischall/gogcli-mcp\"\n  },\n  \"type\": \"module\",\n  \"bin\": {\n    \"gogcli-mcp-calendar\": \"dist/index.js\"\n  },\n  \"exports\": {\n    \".\": \"./dist/index.js\"\n  },\n  \"scripts\": {\n    \"build\": \"tsc --noEmit && npm run bundle\",\n    \"bundle\": \"node ../../scripts/bundle.js src/index.ts dist/index.js\",\n    \"typecheck\": \"tsc --noEmit\",\n    \"test\": \"vitest run --coverage\",\n    \"test:watch\": \"vitest\",\n    \"test:coverage\": \"vitest run --coverage\"\n  },\n  \"dependencies\": {\n    \"@chrischall/mcp-utils\": \"^2.6.0\",\n    \"@modelcontextprotocol/server\": \"^2.0.0\",\n    \"zod\": \"^4.6.1\"\n  },\n  \"license\": \"MIT\",\n  \"keywords\": [\n    \"mcp\",\n    \"model-context-protocol\",\n    \"claude\",\n    \"ai\",\n    \"google\",\n    \"gogcli\",\n    \"calendar\",\n    \"meet\",\n    \"meetings\"\n  ]\n}\n\nFile v4.5.1:tsconfig.json\n\n{\n  \"extends\": \"../../tsconfig.base.json\",\n  \"compilerOptions\": {\n    \"outDir\": \"./dist\",\n    \"rootDir\": \"../\"\n  },\n  \"include\": [\"src/**/*\", \"../gogcli-mcp/src/**/*\"],\n  \"exclude\": [\"node_modules\", \"dist\"]\n}\n\nFile v4.5.1:mint.yaml\n\nversion: 1\nname: Google Calendar (gogcli)\nslug: gogcli-mcp-calendar\nsummary: >-\n  Extended Google Calendar + Meet MCP server via gogcli — auth + Calendar\n  events + Meet space management\ncommand:\n  # This package publishes a single bin; naming it keeps the install\n  # unambiguous alongside its eight sibling packages.\n  bin: gogcli-mcp-calendar\nenv:\n  - name: GOG_CLIENT_ID\n    required: false\n    help: >-\n      Google OAuth client id. Read by the Node wrapper at startup\n      (bootstrap-auth.ts), which imports it into gog's keyring via a temp file\n      together with GOG_CLIENT_SECRET, GOG_REFRESH_TOKEN and GOG_ACCOUNT — set\n      all four or none. Not a secret, so unlike GOG_CLIENT_SECRET and\n      GOG_REFRESH_TOKEN it is not stripped from the spawned `gog`'s\n      environment; gog authenticates from its keyring under $HOME (see\n      state.dataDir).\n  - name: GOG_CLIENT_SECRET\n    secret: true\n    required: false\n    help: >-\n      Google OAuth client secret. Imported into gog's keyring at startup with\n      GOG_CLIENT_ID; stripped from the spawned CLI's environment by runner.ts's\n      *_SECRET rule.\n  - name: GOG_REFRESH_TOKEN\n    secret: true\n    required: false\n    help: >-\n      Google OAuth refresh token (`gog auth tokens export` prints one). Imported\n      into gog's keyring at startup with GOG_CLIENT_ID; stripped from the\n      spawned CLI's environment by runner.ts's *_TOKEN rule. Changing it\n      re-imports on the next start; an in-connector re-auth\n      (gog_auth_add_url/complete) stays in effect until it changes.\n  - name: GOG_ACCESS_TOKEN\n    secret: true\n    required: false\n    help: >-\n      Deliberately removed from the spawned CLI's environment by runner.ts, so\n      that a stale directly-passed token cannot shadow gog's stored refresh\n      credential. Leave unset.\n  - name: GOG_ACCOUNT\n    required: false\n    help: >-\n      The Google account to act as. Required for the startup auth bootstrap\n      (the refresh token is imported under this email); otherwise defaults to\n      gog's single/most recent account.\n  - name: GOG_KEYRING_BACKEND\n    required: false\n    help: >-\n      gog's credential store. Set to \"file\" on a headless host — there is no OS\n      keychain — so the keyring lives on the persistent data dir.\n  - name: GOG_KEYRING_PASSWORD\n    secret: true\n    required: false\n    help: >-\n      Encrypts gog's file keyring on the data dir. Required with\n      GOG_KEYRING_BACKEND=file. Deliberately not stripped from the spawned\n      CLI's environment — it is the one credential gog itself reads.\n  - name: GOG_READONLY\n    required: false\n    help: >-\n      Set to 1 to refuse every mutating operation. Recommended when the\n      connector is shared or you only need reads.\n  - name: GOG_PATH\n    required: false\n    help: >-\n      Path to the `gog` binary. Leave unset when the dependency below supplies\n      it; set it only to point at a binary you manage yourself.\n  - name: GOG_TIMEZONE\n    required: false\n    help: >-\n      The IANA zone gog formats its naive timestamps in. The wrapper passes\n      it to every spawned gog and reads it back (naiveSourceTimeZone) to\n      re-attach the offset, so the two always agree. Unset or invalid, both\n      use DISPLAY_TZ, then America/New_York — never the host's local zone.\n  - name: DISPLAY_TZ\n    required: false\n    help: >-\n      The IANA zone every rendered *Display field uses (displayTimeZone,\n      default America/New_York). It does not read GOG_TIMEZONE — the fallback\n      runs the other way, so this is also what GOG_TIMEZONE falls back to. An\n      invalid value degrades to the default rather than throwing.\ndependencies:\n  # Every tool shells out to the `gog` CLI; without it the server starts and\n  # then fails on the first call. This tag must track\n  # packages/gogcli-mcp/src/runner.ts's MIN_GOG_VERSION (the floor the tools\n  # assume). See CLAUDE.md \"Required gog version\" — bumping the floor means\n  # bumping these nine pins, and the pin stored on each mcp-host registration.\n  - kind: github-release\n    repo: openclaw/gogcli\n    tag: v0.41.0\n    asset: \"gogcli_*_linux_amd64.tar.gz\"\n    bin: [gog]\nstate:\n  dataDir: true\n  reason: >-\n    `gog` keeps its authorised-account state and file keyring under $HOME, and\n    the wrapper keeps its auth-bootstrap marker (~/.gogcli-mcp) there, so a\n    restart neither re-imports an unchanged secret nor discards an\n    in-connector re-auth. Without a persistent data dir every cold start has\n    only what the env secrets can re-seed.\negress:\n  allow:\n    # Google OAuth token exchange and the Google REST APIs the CLI calls.\n    - oauth2.googleapis.com\n    - www.googleapis.com\n    - googleapis.com\n\nFile v4.5.1:LICENSE\n\nMIT License\n\nCopyright (c) 2026 Chris Hall\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n\nArchive v4.5.0: 15 files, 293414 bytes\n\nFiles: CHANGELOG.md (933b), dist/index.js (1479607b), LICENSE (1067b), manifest.json (6305b), mint.yaml (4703b), package.json (1119b), README.md (1535b), skill-card.md (2176b), SKILL.md (1370b), src/index.ts (531b), src/tools/calendar-extra.ts (16893b), tests/tools/calendar-extra.test.ts (16616b), tsconfig.json (209b), vitest.config.ts (523b), _meta.json (138b)\n\nFile v4.5.0:SKILL.md\n\n---\nname: gogcli-mcp-calendar\ndescription: Use when the user asks to manage Google Calendar events or Google Meet spaces. Triggers for scheduling, listing events, creating/updating/deleting events, responding to invitations, creating Meet spaces, ending conferences, listing meeting participants or call history.\n---\n\n# gogcli-mcp-calendar\n\nExtended Google Calendar MCP server via [gogcli](https://github.com/openclaw/gogcli) — 18 tools: auth + 7 base Calendar + 6 extra Meet tools.\n\n- **Source:** [github.com/chrischall/gogcli-mcp](https://github.com/chrischall/gogcli-mcp)\n\n## Requirements\n\n- [gogcli](https://github.com/openclaw/gogcli) installed and authenticated\n- Node.js 22 or later\n\n## Setup\n\n```json\n{\n  \"mcpServers\": {\n    \"gogcli-calendar\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"gogcli-mcp-calendar\"],\n      \"env\": {\n        \"GOG_ACCOUNT\": \"you@gmail.com\"\n      }\n    }\n  }\n}\n```\n\n## Extra Meet Tools\n\n| Tool | What it does |\n|------|-------------|\n| `gog_meet_create` | Create a Meet space |\n| `gog_meet_get` | Get a Meet space by code |\n| `gog_meet_update` | Update Meet space config |\n| `gog_meet_end` | End the active conference |\n| `gog_meet_history` | List past calls in a space |\n| `gog_meet_participants` | List call participants |\n\nPlus 5 auth tools and 7 base Calendar tools (`gog_calendar_events/get/create/update/delete/respond/run`).\n\nFile v4.5.0:README.md\n\n# gogcli-mcp-calendar\n\n> [!WARNING]\n> **AI-developed project.** This codebase was built and is actively maintained by [Claude Code](https://www.anthropic.com/claude). Review all code and tool permissions before use.\n\nExtended Google Calendar [MCP](https://modelcontextprotocol.io) server via [gogcli](https://github.com/openclaw/gogcli). Includes auth tools plus the base Calendar tools and 6 additional dedicated Google Meet tools for space management.\n\n## Requirements\n\n- [gogcli](https://github.com/openclaw/gogcli) installed and authenticated\n- Node.js 22+\n\n```bash\nbrew install gogcli\ngog auth add your@gmail.com --services calendar,meet\n```\n\n## Installation\n\n```bash\nnpm install -g gogcli-mcp-calendar\n```\n\n### Claude Desktop\n\n```json\n{\n  \"mcpServers\": {\n    \"gogcli-calendar\": {\n      \"command\": \"gogcli-mcp-calendar\",\n      \"env\": {\n        \"GOG_ACCOUNT\": \"you@gmail.com\"\n      }\n    }\n  }\n}\n```\n\n### Claude Code\n\n```bash\nclaude mcp add gogcli-calendar -- gogcli-mcp-calendar\n```\n\n## Extra Meet Tools (6)\n\nPlus 5 auth tools and 7 base Calendar tools (events, get, create, update, delete, respond, run).\n\n| Tool | Description |\n|------|-------------|\n| `gog_meet_create` | Create a Google Meet space |\n| `gog_meet_get` | Get a Meet space by meeting code |\n| `gog_meet_update` | Update Meet space configuration (access type) |\n| `gog_meet_end` | End th\n\nArchive v4.4.0: 15 files, 292835 bytes\n\nFiles: CHANGELOG.md (933b), dist/index.js (1476201b), LICENSE (1067b), manifest.json (6305b), mint.yaml (4703b), package.json (1119b), README.md (1535b), skill-card.md (2213b), SKILL.md (1370b), src/index.ts (531b), src/tools/calendar-extra.ts (16893b), tests/tools/calendar-extra.test.ts (16616b), tsconfig.json (209b), vitest.config.ts (523b), _meta.json (138b)\n\nArchive v4.3.0: 15 files, 285133 bytes\n\nFiles: CHANGELOG.md (933b), dist/index.js (1452083b), LICENSE (1067b), manifest.json (6305b), mint.yaml (4703b), package.json (1119b), README.md (1535b), skill-card.md (2034b), SKILL.md (1370b), src/index.ts (531b), src/tools/calendar-extra.ts (16893b), tests/tools/calendar-extra.test.ts (16616b), tsconfig.json (209b), vitest.config.ts (523b), _meta.json (138b)","readmeExcerpt":"Skill: gogcli-mcp-calendar Owner: chrischall Summary: Use when the user asks to manage Google Calendar events or Google Meet spaces. Triggers for scheduling, listing events, creating/updating/deleting events, responding to invitations, creating Meet spaces, ending conferences, listing meeting participants or call history. Tags: latest:4.7.0 Version history: v4.7.0 | 2026-10-07T13:38:31.943Z | auto - Updated dependenc","codeSnippets":[],"executableExamples":[{"language":"json","snippet":"{\n  \"mcpServers\": {\n    \"gogcli-calendar\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"gogcli-mcp-calendar\"],\n      \"env\": {\n        \"GOG_ACCOUNT\": \"you@gmail.com\"\n      }\n    }\n  }\n}"},{"language":"bash","snippet":"brew install gogcli\ngog auth add your@gmail.com --services calendar,meet"},{"language":"bash","snippet":"npm install -g gogcli-mcp-calendar"},{"language":"json","snippet":"{\n  \"mcpServers\": {\n    \"gogcli-calendar\": {\n      \"command\": \"gogcli-mcp-calendar\",\n      \"env\": {\n        \"GOG_ACCOUNT\": \"you@gmail.com\"\n      }\n    }\n  }\n}"},{"language":"bash","snippet":"claude mcp add gogcli-calendar -- gogcli-mcp-calendar"},{"language":"json","snippet":"{\n  \"mcpServers\": {\n    \"gogcli-calendar\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"gogcli-mcp-calendar\"],\n      \"env\": {\n        \"GOG_ACCOUNT\": \"you@gmail.com\"\n      }\n    }\n  }\n}"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: gogcli-mcp-calendar\ndescription: Use when the user asks to manage Google Calendar events or Google Meet spaces. Triggers for scheduling, listing events, creating/updating/deleting events, responding to invitations, creating Meet spaces, ending conferences, listing meeting participants or call history.\n---\n\n# gogcli-mcp-calendar\n\nExtended Google Calendar MCP server via [gogcli](https://github.com/openclaw/gogcli) — 18 tools: auth + 7 base Calendar + 6 extra Meet tools.\n\n- **Source:** [github.com/chrischall/gogcli-mcp](https://github.com/chrischall/gogcli-mcp)\n\n## Requirements\n\n- [gogcli](https://github.com/openclaw/gogcli) installed and authenticated\n- Node.js 22 or later\n\n## Setup\n\n```json\n{\n  \"mcpServers\": {\n    \"gogcli-calendar\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"gogcli-mcp-calendar\"],\n      \"env\": {\n        \"GOG_ACCOUNT\": \"you@gmail.com\"\n      }\n    }\n  }\n}\n```\n\n## Extra Meet Tools\n\n| Tool | What it does |\n|------|-------------|\n| `gog_meet_create` | Create a Meet space |\n| `gog_meet_get` | Get a Meet space by code |\n| `gog_meet_update` | Update Meet space config |\n| `gog_meet_end` | End the active conference |\n| `gog_meet_history` | List past calls in a space |\n| `gog_meet_participants` | List call participants |\n\nPlus 5 auth tools and 7 base Calendar tools (`gog_calendar_events/get/create/update/delete/respond/run`)."},{"path":"README.md","content":"# gogcli-mcp-calendar\n\n> [!WARNING]\n> **AI-developed project.** This codebase was built and is actively maintained by [Claude Code](https://www.anthropic.com/claude). Review all code and tool permissions before use.\n\nExtended Google Calendar [MCP](https://modelcontextprotocol.io) server via [gogcli](https://github.com/openclaw/gogcli). Includes auth tools plus the base Calendar tools and 6 additional dedicated Google Meet tools for space management.\n\n## Requirements\n\n- [gogcli](https://github.com/openclaw/gogcli) installed and authenticated\n- Node.js 22+\n\n```bash\nbrew install gogcli\ngog auth add your@gmail.com --services calendar,meet\n```\n\n## Installation\n\n```bash\nnpm install -g gogcli-mcp-calendar\n```\n\n### Claude Desktop\n\n```json\n{\n  \"mcpServers\": {\n    \"gogcli-calendar\": {\n      \"command\": \"gogcli-mcp-calendar\",\n      \"env\": {\n        \"GOG_ACCOUNT\": \"you@gmail.com\"\n      }\n    }\n  }\n}\n```\n\n### Claude Code\n\n```bash\nclaude mcp add gogcli-calendar -- gogcli-mcp-calendar\n```\n\n## Extra Meet Tools (6)\n\nPlus 5 auth tools and 7 base Calendar tools (events, get, create, update, delete, respond, run).\n\n| Tool | Description |\n|------|-------------|\n| `gog_meet_create` | Create a Google Meet space |\n| `gog_meet_get` | Get a Meet space by meeting code |\n| `gog_meet_update` | Update Meet space configuration (access type) |\n| `gog_meet_end` | End the active conference in a Meet space |\n| `gog_meet_history` | List past calls in a Meet space |\n| `gog_meet_participants` | List participants from a Meet call |\n\n## License\n\nMIT"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn700jq4sjtf2anb0rk3ft4p7n856872\",\n  \"slug\": \"gogcli-mcp-calendar\",\n  \"version\": \"4.7.0\",\n  \"publishedAt\": 1791380311943\n}"},{"path":"CHANGELOG.md","content":"# Changelog\n\n## [2.1.0](https://github.com/chrischall/gogcli-mcp/compare/v2.0.13...v2.1.0) (2026-05-25)\n\n\n### Features\n\n* wrap new gog cli v0.18.0 tools ([173242a](https://github.com/chrischall/gogcli-mcp/commit/173242aafaa8c2f2d7282a2fbd8faedfc65a63bd))\n\n\n### Refactor\n\n* aggressive cleanup pass (audit findings) ([e635b39](https://github.com/chrischall/gogcli-mcp/commit/e635b391cf611e9c102a422ffbce5ebe28687b80))\n* rebalance base vs sub-package tool split (120 -&gt; 84 base) ([1074953](https://github.com/chrischall/gogcli-mcp/commit/1074953833fc4766e85cc0b28cbcc08834f8dc47))\n* review-pass cleanup (enums, shared schemas, test harness) ([ea851de](https://github.com/chrischall/gogcli-mcp/commit/ea851deb30b9cfef3f07ed506a011fc363b34018))\n\n\n### Documentation\n\n* update gogcli repo URLs to openclaw/gogcli (was steipete/gogcli) ([951a181](https://github.com/chrischall/gogcli-mcp/commit/951a1818ebc269f203aee723ccbea32c13817d8b))"},{"path":"skill-card.md","content":"## Description:\n\nConnects an agent to Google Calendar and Meet to manage events, invitations, meeting spaces, and call history.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[chrischall](https://clawhub.ai/user/chrischall)\n\n### License/Terms of Use:\n\nMIT\n\n## Use Case:\n\nPeople and teams use this skill to view and manage Google Calendar events and invitations, and to create or manage Google Meet spaces through an authorized account.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Ending a live Google Meet conference does not require a separate confirmation prompt.\n\nMitigation: Require explicit user approval before invoking gog_meet_end, and do not expose this action to untrusted agents.\n\nRisk: Zoom credential tools can store credentials and contact Zoom, beyond the primary Google Calendar and Meet use case.\n\nMitigation: Enable Zoom credential tools and Zoom network access only if needed; review their permissions and credential handling first.\n\nRisk: An agent with account access can change calendar events and meeting settings.\n\nMitigation: Connect only a trusted agent to the intended Google account; set GOG_READONLY=1 when changes are unnecessary.\n\n## Reference(s):\n\n- [ClawHub skill listing](https://clawhub.ai/chrischall/skills/gogcli-mcp-calendar)\n- [gogcli documentation](https://github.com/openclaw/gogcli)\n- [Model Context Protocol](https://modelcontextprotocol.io)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Guidance]\n\n**Output Format:** [Text and structured tool results]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include event details, meeting information, and action results.]\n\n## Skill Version(s):\n\n4.7.0 (source: server-resolved release, package.json)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment."}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":null,"editorialQuality":{"score":100,"threshold":65,"status":"thin","wordCount":1211,"uniquenessScore":44,"reasons":["uniqueness-below-45"]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-09T10:12:44.064Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-09T10:12:44.064Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-09T18:37:46.432Z","emptyReason":null},"items":[{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-10T18:48:31.762Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}