{"_id":"@mindstone/mcp-server-google-workspace","_rev":"11-f6ffa20b820a6d75690431003493f562","name":"@mindstone/mcp-server-google-workspace","dist-tags":{"latest":"0.4.2"},"versions":{"0.1.0":{"name":"@mindstone/mcp-server-google-workspace","version":"0.1.0","license":"FSL-1.1-MIT","_id":"@mindstone/mcp-server-google-workspace@0.1.0","maintainers":[{"name":"mindstone-engineering","email":"engineering@mindstone.com"}],"homepage":"https://github.com/mindstone/mcp-servers/tree/main/connectors/google-workspace","bugs":{"url":"https://github.com/mindstone/mcp-servers/issues"},"bin":{"mcp-server-google-workspace":"dist/index.js"},"dist":{"shasum":"a511ceb774a1ff268c1956177d88073c76388f0d","tarball":"https://registry.npmjs.org/@mindstone/mcp-server-google-workspace/-/mcp-server-google-workspace-0.1.0.tgz","fileCount":514,"integrity":"sha512-OfiBy1KC3i+E7k2KsRwstiAd7hhJEl0Ai4DqKo3veak5GbrqSqcwA4c+O7O2cKGtnVG6BSYzzQOIvPuVQEKXkg==","signatures":[{"sig":"MEUCIHBPwhAPOyor4U6IgdtooHGKbcboa8NQ2xoc1jR9deqSAiEA+74SjH1tyJbFwsFDxIJGyPdNNY7v0EjCAmp+CggsGMo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2216234},"type":"module","engines":{"node":">=18"},"gitHead":"8bb5c492475b32d49113e9d849d9d3cd4c955f0b","mcpName":"io.github.mindstone/mcp-server-google-workspace","scripts":{"test":"vitest run","build":"shx rm -rf dist && tsc && shx cp src/tools/definitions/*-overrides.json dist/tools/definitions/ && shx chmod +x dist/index.js && npm run tools:annotations && npm run security:internal-refs","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm test","tools:inventory":"node scripts/generate-tools-inventory.mjs","request:manifest":"node scripts/generate-request-manifest.mjs","tools:annotations":"node scripts/check-tool-annotations.mjs","request:manifest:check":"node scripts/check-request-manifest.mjs","security:internal-refs":"node scripts/check-internal-refs.mjs"},"_npmUser":{"name":"mindstone-engineering","email":"engineering@mindstone.com"},"repository":{"url":"git+https://github.com/mindstone/mcp-servers.git","type":"git","directory":"connectors/google-workspace"},"_npmVersion":"11.11.1","attribution":"Based on aaronsb/google-workspace-mcp (https://github.com/aaronsb/google-workspace-mcp)","description":"Google Workspace MCP server for Gmail, Calendar, Drive, Docs, Sheets, Slides, Contacts, Tasks, and Forms","directories":{},"_nodeVersion":"25.8.2","dependencies":{"uuid":"^11.1.0","googleapis":"^171.4.0","google-auth-library":"^10.2.0","@modelcontextprotocol/sdk":"^0.7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.10.0","devDependencies":{"msw":"^2.13.2","shx":"^0.3.4","vitest":"^4.1.3","typescript":"^5.8.2","@types/node":"^22","@types/uuid":"^10.0.0","@vitest/coverage-v8":"^4.1.3"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server-google-workspace_0.1.0_1779196229810_0.5750770889067363","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@mindstone/mcp-server-google-workspace","version":"0.1.1","license":"FSL-1.1-MIT","_id":"@mindstone/mcp-server-google-workspace@0.1.1","maintainers":[{"name":"mindstone-engineering","email":"engineering@mindstone.com"}],"homepage":"https://github.com/mindstone/mcp-servers/tree/main/connectors/google-workspace","bugs":{"url":"https://github.com/mindstone/mcp-servers/issues"},"bin":{"mcp-server-google-workspace":"dist/index.js"},"dist":{"shasum":"310dbada51f5a9547d24bcaf758bd83ec96bad4b","tarball":"https://registry.npmjs.org/@mindstone/mcp-server-google-workspace/-/mcp-server-google-workspace-0.1.1.tgz","fileCount":514,"integrity":"sha512-jEWw6sGdO0HIQ1EwnJIergovaIYZwGzED01UkhynwW/OpkqisWMQUpQk4/lIdhNagvSxtGyAm0nON+8BatbJjA==","signatures":[{"sig":"MEYCIQDdCJIIQKPGR+3mSodK9o51vfRFD7PdxgFr+gwscWJwdgIhAJkF9fgb4W+FILd9/oF79xGcUzszuE/LnbG72jFm2Rev","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2221538},"type":"module","engines":{"node":">=18"},"gitHead":"58cefcb3971e5db123ff7fdded9baa7e217dfa62","mcpName":"io.github.mindstone/mcp-server-google-workspace","scripts":{"test":"vitest run","build":"shx rm -rf dist && tsc && shx cp src/tools/definitions/*-overrides.json dist/tools/definitions/ && shx chmod +x dist/index.js && npm run tools:annotations && npm run security:internal-refs","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm test","tools:inventory":"node scripts/generate-tools-inventory.mjs","request:manifest":"node scripts/generate-request-manifest.mjs","tools:annotations":"node scripts/check-tool-annotations.mjs","request:manifest:check":"node scripts/check-request-manifest.mjs","security:internal-refs":"node scripts/check-internal-refs.mjs"},"_npmUser":{"name":"mindstone-engineering","email":"engineering@mindstone.com"},"repository":{"url":"git+https://github.com/mindstone/mcp-servers.git","type":"git","directory":"connectors/google-workspace"},"_npmVersion":"11.11.1","attribution":"Based on aaronsb/google-workspace-mcp (https://github.com/aaronsb/google-workspace-mcp)","description":"Google Workspace MCP server for Gmail, Calendar, Drive, Docs, Sheets, Slides, Contacts, Tasks, and Forms","directories":{},"_nodeVersion":"25.8.2","dependencies":{"uuid":"^11.1.0","googleapis":"^171.4.0","google-auth-library":"^10.2.0","@modelcontextprotocol/sdk":"^0.7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.10.0","devDependencies":{"msw":"^2.13.2","shx":"^0.3.4","vitest":"^4.1.3","typescript":"^5.8.2","@types/node":"^22","@types/uuid":"^10.0.0","@vitest/coverage-v8":"^4.1.3"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server-google-workspace_0.1.1_1779206700724_0.620271116150988","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@mindstone/mcp-server-google-workspace","version":"0.1.2","license":"FSL-1.1-MIT","_id":"@mindstone/mcp-server-google-workspace@0.1.2","maintainers":[{"name":"mindstone-engineering","email":"engineering@mindstone.com"}],"homepage":"https://github.com/mindstone/mcp-servers/tree/main/connectors/google-workspace","bugs":{"url":"https://github.com/mindstone/mcp-servers/issues"},"bin":{"mcp-server-google-workspace":"dist/index.js"},"dist":{"shasum":"67035cd59409778291950620096822170de7cd0f","tarball":"https://registry.npmjs.org/@mindstone/mcp-server-google-workspace/-/mcp-server-google-workspace-0.1.2.tgz","fileCount":514,"integrity":"sha512-+L55rcyXIPOzMvlkL/XUQqHyt/O4FsvIHEzxq8Oe+v8W6RfrQA2edw+Dmq4Y/JO+tsAPwdYsJIbZUBHvwm5mQQ==","signatures":[{"sig":"MEUCIQCaUtyBsr9z19YfTHbw9LCrGUAopGN4yfkjhvnyXtzKowIgWDl8gUNGOFUo6vk4PdXv/7ocyNMhcvex8o/t60eLeN8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2222266},"type":"module","engines":{"node":">=18"},"gitHead":"306877803a5607bb1735be322c0e7464f57298c6","mcpName":"io.github.mindstone/mcp-server-google-workspace","scripts":{"test":"vitest run","build":"shx rm -rf dist && tsc && shx cp src/tools/definitions/*-overrides.json dist/tools/definitions/ && shx chmod +x dist/index.js && npm run tools:annotations && npm run security:internal-refs","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm test","tools:inventory":"node scripts/generate-tools-inventory.mjs","request:manifest":"node scripts/generate-request-manifest.mjs","tools:annotations":"node scripts/check-tool-annotations.mjs","request:manifest:check":"node scripts/check-request-manifest.mjs","security:internal-refs":"node scripts/check-internal-refs.mjs"},"_npmUser":{"name":"mindstone-engineering","email":"engineering@mindstone.com"},"repository":{"url":"git+https://github.com/mindstone/mcp-servers.git","type":"git","directory":"connectors/google-workspace"},"_npmVersion":"11.11.1","attribution":"Based on aaronsb/google-workspace-mcp (https://github.com/aaronsb/google-workspace-mcp)","description":"Google Workspace MCP server for Gmail, Calendar, Drive, Docs, Sheets, Slides, Contacts, Tasks, and Forms","directories":{},"_nodeVersion":"25.8.2","dependencies":{"uuid":"^11.1.0","googleapis":"^171.4.0","google-auth-library":"^10.2.0","@modelcontextprotocol/sdk":"^0.7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.10.0","devDependencies":{"msw":"^2.13.2","shx":"^0.3.4","vitest":"^4.1.3","typescript":"^5.8.2","@types/node":"^22","@types/uuid":"^10.0.0","@vitest/coverage-v8":"^4.1.3"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server-google-workspace_0.1.2_1779395706331_0.29980483812557224","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@mindstone/mcp-server-google-workspace","version":"0.1.3","license":"FSL-1.1-MIT","_id":"@mindstone/mcp-server-google-workspace@0.1.3","maintainers":[{"name":"mindstone-engineering","email":"engineering@mindstone.com"}],"homepage":"https://github.com/mindstone/mcp-servers/tree/main/connectors/google-workspace","bugs":{"url":"https://github.com/mindstone/mcp-servers/issues"},"bin":{"mcp-server-google-workspace":"dist/index.js"},"dist":{"shasum":"44e8ff90b96de8356a8dc0160f585cb25b8a4aae","tarball":"https://registry.npmjs.org/@mindstone/mcp-server-google-workspace/-/mcp-server-google-workspace-0.1.3.tgz","fileCount":260,"integrity":"sha512-LklxA9rtDoWCrljou5bJ3YhW2oQmo1D129+jP/oFTKZ9MV6CWUhMZVqdfUTqdOpAKWKjj3OxLbI/zuMse+xUoQ==","signatures":[{"sig":"MEQCIGJnGHAJg6zAb5T4v6ErOoUg18Ld+vkKtvJoEAahg2rIAiBvZUCcIrvC+OEuYcE1O6oRCLwNNhEE+ttmCc7PbLs+Jg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@mindstone%2fmcp-server-google-workspace@0.1.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1326078},"type":"module","_from":"file:mindstone-mcp-server-google-workspace-0.1.3.tgz","engines":{"node":">=18"},"mcpName":"io.github.mindstone/mcp-server-google-workspace","scripts":{"test":"vitest run","build":"shx rm -rf dist && tsc && shx cp src/tools/definitions/*-overrides.json dist/tools/definitions/ && shx chmod +x dist/index.js && npm run tools:annotations && npm run security:internal-refs","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm test","tools:inventory":"node scripts/generate-tools-inventory.mjs","request:manifest":"node scripts/generate-request-manifest.mjs","tools:annotations":"node scripts/check-tool-annotations.mjs","request:manifest:check":"node scripts/check-request-manifest.mjs","security:internal-refs":"node scripts/check-internal-refs.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85a4b405-ad5a-4d7b-9fbc-6ffcb9fb43e3"}},"_resolved":"/home/runner/work/mcp-servers/mcp-servers/mindstone-mcp-server-google-workspace-0.1.3.tgz","_integrity":"sha512-LklxA9rtDoWCrljou5bJ3YhW2oQmo1D129+jP/oFTKZ9MV6CWUhMZVqdfUTqdOpAKWKjj3OxLbI/zuMse+xUoQ==","repository":{"url":"git+https://github.com/mindstone/mcp-servers.git","type":"git","directory":"connectors/google-workspace"},"_npmVersion":"11.13.0","attribution":"Based on aaronsb/google-workspace-mcp (https://github.com/aaronsb/google-workspace-mcp)","description":"Google Workspace MCP server for Gmail, Calendar, Drive, Docs, Sheets, Slides, Contacts, Tasks, and Forms","directories":{},"_nodeVersion":"24.16.0","dependencies":{"uuid":"^11.1.0","googleapis":"^171.4.0","google-auth-library":"^10.2.0","@modelcontextprotocol/sdk":"^0.7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.10.0","devDependencies":{"msw":"^2.13.2","shx":"^0.3.4","vitest":"^4.1.3","typescript":"^5.8.2","@types/node":"^22","@types/uuid":"^10.0.0","@vitest/coverage-v8":"^4.1.3"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server-google-workspace_0.1.3_1780066536727_0.13302611056945324","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@mindstone/mcp-server-google-workspace","version":"0.1.4","license":"FSL-1.1-MIT","_id":"@mindstone/mcp-server-google-workspace@0.1.4","maintainers":[{"name":"mindstone-engineering","email":"engineering@mindstone.com"}],"homepage":"https://github.com/mindstone/mcp-servers/tree/main/connectors/google-workspace","bugs":{"url":"https://github.com/mindstone/mcp-servers/issues"},"bin":{"mcp-server-google-workspace":"dist/index.js"},"dist":{"shasum":"d94870f0885a7ba83e8a9c1119b58a1f368adb1e","tarball":"https://registry.npmjs.org/@mindstone/mcp-server-google-workspace/-/mcp-server-google-workspace-0.1.4.tgz","fileCount":260,"integrity":"sha512-CTKU0hId/vdkoflyfhNtdww4pl6PfXwryaVZr9JXSs5v47hGwMHVsmRff9Xlqc745VTAIlGkSpESqNUpgpVy5g==","signatures":[{"sig":"MEUCIFnM11+GxdaaNXdLYZ8RoD9qTKW29f1UZhIFwGvkFeVrAiEAny3xAk71fh3N1BqAQzuacz8IVxm0fa8boGBR0On423Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@mindstone%2fmcp-server-google-workspace@0.1.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1334294},"type":"module","_from":"file:mindstone-mcp-server-google-workspace-0.1.4.tgz","engines":{"node":">=18"},"mcpName":"io.github.mindstone/mcp-server-google-workspace","scripts":{"test":"vitest run","build":"shx rm -rf dist && tsc && shx cp src/tools/definitions/*-overrides.json dist/tools/definitions/ && shx chmod +x dist/index.js && npm run tools:annotations && npm run security:internal-refs","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm test","tools:inventory":"node scripts/generate-tools-inventory.mjs","request:manifest":"node scripts/generate-request-manifest.mjs","tools:annotations":"node scripts/check-tool-annotations.mjs","request:manifest:check":"node scripts/check-request-manifest.mjs","security:internal-refs":"node scripts/check-internal-refs.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85a4b405-ad5a-4d7b-9fbc-6ffcb9fb43e3"}},"_resolved":"/home/runner/work/mcp-servers/mcp-servers/mindstone-mcp-server-google-workspace-0.1.4.tgz","_integrity":"sha512-CTKU0hId/vdkoflyfhNtdww4pl6PfXwryaVZr9JXSs5v47hGwMHVsmRff9Xlqc745VTAIlGkSpESqNUpgpVy5g==","repository":{"url":"git+https://github.com/mindstone/mcp-servers.git","type":"git","directory":"connectors/google-workspace"},"_npmVersion":"11.16.0","attribution":"Based on aaronsb/google-workspace-mcp (https://github.com/aaronsb/google-workspace-mcp)","description":"Google Workspace MCP server for Gmail, Calendar, Drive, Docs, Sheets, Slides, Contacts, Tasks, and Forms","directories":{},"_nodeVersion":"24.18.0","dependencies":{"uuid":"^11.1.0","googleapis":"^171.4.0","google-auth-library":"^10.2.0","@modelcontextprotocol/sdk":"^0.7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.10.0","devDependencies":{"msw":"^2.13.2","shx":"^0.3.4","vitest":"^4.1.3","happy-dom":"^20.8.9","typescript":"^5.8.2","@types/node":"^22","@types/uuid":"^10.0.0","@vitest/coverage-v8":"^4.1.3"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server-google-workspace_0.1.4_1782897389920_0.06350663222439423","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@mindstone/mcp-server-google-workspace","version":"0.1.5","license":"FSL-1.1-MIT","_id":"@mindstone/mcp-server-google-workspace@0.1.5","maintainers":[{"name":"mindstone-engineering","email":"engineering@mindstone.com"}],"homepage":"https://github.com/mindstone/mcp-servers/tree/main/connectors/google-workspace","bugs":{"url":"https://github.com/mindstone/mcp-servers/issues"},"bin":{"mcp-server-google-workspace":"dist/index.js"},"dist":{"shasum":"6d3c35af951561e91bd0df770ab753b9621e767f","tarball":"https://registry.npmjs.org/@mindstone/mcp-server-google-workspace/-/mcp-server-google-workspace-0.1.5.tgz","fileCount":260,"integrity":"sha512-uIGVe+TR12SXtCPOvfC2eKPTeGtbmLKWe27rWN+k55MWuPMf/2MQkWAfcPcVMzGPtAhjMzIXtVTyuGU8jm/0+Q==","signatures":[{"sig":"MEQCIDQdcgq7rvOyQHyMhf3KgEi/ar8v8+ZM3ZfeHsT3Du1EAiAXwLJj1HnFdXeJOfK8uGXClrnuQyGI7PkGg7gorHcVtw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@mindstone%2fmcp-server-google-workspace@0.1.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1338965},"type":"module","_from":"file:mindstone-mcp-server-google-workspace-0.1.5.tgz","engines":{"node":">=18"},"mcpName":"io.github.mindstone/mcp-server-google-workspace","scripts":{"test":"vitest run","build":"shx rm -rf dist && tsc && shx cp src/tools/definitions/*-overrides.json dist/tools/definitions/ && shx chmod +x dist/index.js && npm run tools:annotations && npm run security:internal-refs","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm test","tools:inventory":"node scripts/generate-tools-inventory.mjs","request:manifest":"node scripts/generate-request-manifest.mjs","tools:annotations":"node scripts/check-tool-annotations.mjs","request:manifest:check":"node scripts/check-request-manifest.mjs","security:internal-refs":"node scripts/check-internal-refs.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85a4b405-ad5a-4d7b-9fbc-6ffcb9fb43e3"}},"_resolved":"/home/runner/work/mcp-servers/mcp-servers/mindstone-mcp-server-google-workspace-0.1.5.tgz","_integrity":"sha512-uIGVe+TR12SXtCPOvfC2eKPTeGtbmLKWe27rWN+k55MWuPMf/2MQkWAfcPcVMzGPtAhjMzIXtVTyuGU8jm/0+Q==","repository":{"url":"git+https://github.com/mindstone/mcp-servers.git","type":"git","directory":"connectors/google-workspace"},"_npmVersion":"11.16.0","attribution":"Based on aaronsb/google-workspace-mcp (https://github.com/aaronsb/google-workspace-mcp)","description":"Google Workspace MCP server for Gmail, Calendar, Drive, Docs, Sheets, Slides, Contacts, Tasks, and Forms","directories":{},"_nodeVersion":"24.18.0","dependencies":{"uuid":"^11.1.0","googleapis":"^171.4.0","google-auth-library":"^10.2.0","@modelcontextprotocol/sdk":"^0.7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.10.0","devDependencies":{"msw":"^2.13.2","shx":"^0.3.4","vitest":"^4.1.3","happy-dom":"^20.8.9","typescript":"^5.8.2","@types/node":"^22","@types/uuid":"^10.0.0","@vitest/coverage-v8":"^4.1.3"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server-google-workspace_0.1.5_1783269378698_0.8632759504675596","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@mindstone/mcp-server-google-workspace","version":"0.2.0","license":"FSL-1.1-MIT","_id":"@mindstone/mcp-server-google-workspace@0.2.0","maintainers":[{"name":"mindstone-engineering","email":"engineering@mindstone.com"}],"homepage":"https://github.com/mindstone/mcp-servers/tree/main/connectors/google-workspace","bugs":{"url":"https://github.com/mindstone/mcp-servers/issues"},"bin":{"mcp-server-google-workspace":"dist/index.js"},"dist":{"shasum":"3ac4ee6a49426c00a79ccc695be71d468d29da35","tarball":"https://registry.npmjs.org/@mindstone/mcp-server-google-workspace/-/mcp-server-google-workspace-0.2.0.tgz","fileCount":258,"integrity":"sha512-2u9Vr/tUTZOI/XVzt6Hb8qA1CwdmZQF44YVrol2CbnouNkxrN4hMlmgL1Afxf69Okmf8c/YMx0w1NfYUqVdfIA==","signatures":[{"sig":"MEQCIBPydRp6p3hzACVQQ1oTWqznT5kf0Ewq2edj1c8uupdNAiAf94nyvmqct2i0AKELM6fMoF5KHSXTlNKE0KoddIG6pA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@mindstone%2fmcp-server-google-workspace@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1372953},"type":"module","_from":"file:mindstone-mcp-server-google-workspace-0.2.0.tgz","engines":{"node":">=18"},"mcpName":"io.github.mindstone/mcp-server-google-workspace","scripts":{"test":"vitest run","build":"shx rm -rf dist && tsc && shx cp src/tools/definitions/*-overrides.json dist/tools/definitions/ && shx chmod +x dist/index.js && npm run tools:annotations && npm run security:internal-refs","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","pretest":"npm run compose:template:check","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm test","tools:inventory":"node scripts/generate-tools-inventory.mjs","compose:template":"node scripts/gen-compose-html.mjs","request:manifest":"node scripts/generate-request-manifest.mjs","tools:annotations":"node scripts/check-tool-annotations.mjs","compose:template:check":"node scripts/gen-compose-html.mjs --check","request:manifest:check":"node scripts/check-request-manifest.mjs","security:internal-refs":"node scripts/check-internal-refs.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85a4b405-ad5a-4d7b-9fbc-6ffcb9fb43e3"}},"_resolved":"/home/runner/work/mcp-servers/mcp-servers/mindstone-mcp-server-google-workspace-0.2.0.tgz","_integrity":"sha512-2u9Vr/tUTZOI/XVzt6Hb8qA1CwdmZQF44YVrol2CbnouNkxrN4hMlmgL1Afxf69Okmf8c/YMx0w1NfYUqVdfIA==","repository":{"url":"git+https://github.com/mindstone/mcp-servers.git","type":"git","directory":"connectors/google-workspace"},"_npmVersion":"11.16.0","attribution":"Based on aaronsb/google-workspace-mcp (https://github.com/aaronsb/google-workspace-mcp)","description":"Google Workspace MCP server for Gmail, Calendar, Drive, Docs, Sheets, Slides, Contacts, Tasks, and Forms","directories":{},"_nodeVersion":"24.18.0","dependencies":{"uuid":"^11.1.0","googleapis":"^171.4.0","google-auth-library":"^10.2.0","@modelcontextprotocol/sdk":"^0.7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.10.0","devDependencies":{"msw":"^2.13.2","shx":"^0.3.4","vitest":"^4.1.3","happy-dom":"^20.8.9","typescript":"^5.8.2","@types/node":"^22","@types/uuid":"^10.0.0","@vitest/coverage-v8":"^4.1.3","@mindstone/mcp-app-compose":"file:../../packages/mcp-app-compose"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server-google-workspace_0.2.0_1785355776420_0.04425242297953247","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@mindstone/mcp-server-google-workspace","version":"0.3.0","license":"FSL-1.1-MIT","_id":"@mindstone/mcp-server-google-workspace@0.3.0","maintainers":[{"name":"mindstone-engineering","email":"engineering@mindstone.com"}],"homepage":"https://github.com/mindstone/mcp-servers/tree/main/connectors/google-workspace","bugs":{"url":"https://github.com/mindstone/mcp-servers/issues"},"bin":{"mcp-server-google-workspace":"dist/index.js"},"dist":{"shasum":"eaddc5ea86936b9571b5d6322be72c65e97396d8","tarball":"https://registry.npmjs.org/@mindstone/mcp-server-google-workspace/-/mcp-server-google-workspace-0.3.0.tgz","fileCount":284,"integrity":"sha512-NExnmDBkt3dWiuXjLw6/CDZji3jGFa1u12TF2k9JiucBXqEvIIjiE2+D3DjiolXRLNdKbCZOHHAKEatP2pzzXg==","signatures":[{"sig":"MEYCIQC6zMY3SrGauPzT/hGdganVFgPxlj9OTpk8Q9eF6Sm8agIhAMkvQqias99wRubYK3Hdn99x+uGialC397+hx2R5oCH3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@mindstone%2fmcp-server-google-workspace@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1494543},"type":"module","_from":"file:mindstone-mcp-server-google-workspace-0.3.0.tgz","engines":{"node":">=18"},"mcpName":"io.github.mindstone/mcp-server-google-workspace","scripts":{"test":"vitest run","build":"shx rm -rf dist && tsc && shx cp src/tools/definitions/*-overrides.json dist/tools/definitions/ && shx chmod +x dist/index.js && npm run tools:annotations && npm run security:internal-refs","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","pretest":"npm run compose:template:check","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm test","tools:inventory":"node scripts/generate-tools-inventory.mjs","compose:template":"node scripts/gen-compose-html.mjs","request:manifest":"node scripts/generate-request-manifest.mjs","tools:annotations":"node scripts/check-tool-annotations.mjs","compose:template:check":"node scripts/gen-compose-html.mjs --check","request:manifest:check":"node scripts/check-request-manifest.mjs","security:internal-refs":"node scripts/check-internal-refs.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85a4b405-ad5a-4d7b-9fbc-6ffcb9fb43e3"}},"_resolved":"/home/runner/work/mcp-servers/mcp-servers/mindstone-mcp-server-google-workspace-0.3.0.tgz","_integrity":"sha512-NExnmDBkt3dWiuXjLw6/CDZji3jGFa1u12TF2k9JiucBXqEvIIjiE2+D3DjiolXRLNdKbCZOHHAKEatP2pzzXg==","repository":{"url":"git+https://github.com/mindstone/mcp-servers.git","type":"git","directory":"connectors/google-workspace"},"_npmVersion":"11.16.0","attribution":"Based on aaronsb/google-workspace-mcp (https://github.com/aaronsb/google-workspace-mcp)","description":"Google Workspace MCP server for Gmail, Calendar, Drive, Docs, Sheets, Slides, Contacts, Tasks, and Forms","directories":{},"_nodeVersion":"24.18.0","dependencies":{"uuid":"^11.1.0","googleapis":"^171.4.0","google-auth-library":"^10.2.0","@modelcontextprotocol/sdk":"^0.7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.10.0","devDependencies":{"msw":"^2.13.2","shx":"^0.3.4","vitest":"^4.1.3","happy-dom":"^20.8.9","typescript":"^5.8.2","@types/node":"^22","@types/uuid":"^10.0.0","@vitest/coverage-v8":"^4.1.3","@mindstone/mcp-app-compose":"file:../../packages/mcp-app-compose"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server-google-workspace_0.3.0_1786003940933_0.02525650008190783","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@mindstone/mcp-server-google-workspace","version":"0.4.0","license":"FSL-1.1-MIT","_id":"@mindstone/mcp-server-google-workspace@0.4.0","maintainers":[{"name":"mindstone-engineering","email":"engineering@mindstone.com"}],"homepage":"https://github.com/mindstone/mcp-servers/tree/main/connectors/google-workspace","bugs":{"url":"https://github.com/mindstone/mcp-servers/issues"},"bin":{"mcp-server-google-workspace":"dist/index.js"},"dist":{"shasum":"00e07b0bf1baa08246e244155f992dd2ddbf70ad","tarball":"https://registry.npmjs.org/@mindstone/mcp-server-google-workspace/-/mcp-server-google-workspace-0.4.0.tgz","fileCount":284,"integrity":"sha512-4mi3hEYVC7T6YyjH4D5znaiqfripKA6bhA36VFquv+O8iPGlCtNrDiQweiOx0LqUHHZoNJHIn0irz1/lvrk0aw==","signatures":[{"sig":"MEUCIQCM1uUw4/B6qNkoBmAKpGJ+t61wQxhBsV/1Pi644pYo5AIgNlDVjmpb5O98TDzAUuRIcK+omhzbEn7PTm+PyuOkMnQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@mindstone%2fmcp-server-google-workspace@0.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1492598},"type":"module","_from":"file:mindstone-mcp-server-google-workspace-0.4.0.tgz","engines":{"node":">=18"},"mcpName":"io.github.mindstone/mcp-server-google-workspace","scripts":{"test":"vitest run","build":"shx rm -rf dist && tsc && shx cp src/tools/definitions/*-overrides.json dist/tools/definitions/ && shx chmod +x dist/index.js && npm run tools:annotations && npm run security:internal-refs","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","pretest":"npm run compose:template:check","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm test","tools:inventory":"node scripts/generate-tools-inventory.mjs","compose:template":"node scripts/gen-compose-html.mjs","request:manifest":"node scripts/generate-request-manifest.mjs","tools:annotations":"node scripts/check-tool-annotations.mjs","compose:template:check":"node scripts/gen-compose-html.mjs --check","request:manifest:check":"node scripts/check-request-manifest.mjs","security:internal-refs":"node scripts/check-internal-refs.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85a4b405-ad5a-4d7b-9fbc-6ffcb9fb43e3"}},"_resolved":"/home/runner/work/mcp-servers/mcp-servers/mindstone-mcp-server-google-workspace-0.4.0.tgz","_integrity":"sha512-4mi3hEYVC7T6YyjH4D5znaiqfripKA6bhA36VFquv+O8iPGlCtNrDiQweiOx0LqUHHZoNJHIn0irz1/lvrk0aw==","repository":{"url":"git+https://github.com/mindstone/mcp-servers.git","type":"git","directory":"connectors/google-workspace"},"_npmVersion":"11.16.0","attribution":"Based on aaronsb/google-workspace-mcp (https://github.com/aaronsb/google-workspace-mcp)","description":"Google Workspace MCP server for Gmail, Calendar, Drive, Docs, Sheets, Slides, Contacts, Tasks, and Forms","directories":{},"_nodeVersion":"24.18.0","dependencies":{"uuid":"^11.1.0","googleapis":"^171.4.0","google-auth-library":"^10.2.0","@modelcontextprotocol/sdk":"^0.7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.10.0","devDependencies":{"msw":"^2.13.2","shx":"^0.3.4","vitest":"^4.1.3","happy-dom":"^20.8.9","typescript":"^5.8.2","@types/node":"^22","@types/uuid":"^10.0.0","@vitest/coverage-v8":"^4.1.3","@mindstone/mcp-app-compose":"file:../../packages/mcp-app-compose"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server-google-workspace_0.4.0_1786195388247_0.6418270142252636","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"@mindstone/mcp-server-google-workspace","version":"0.4.1","license":"FSL-1.1-MIT","_id":"@mindstone/mcp-server-google-workspace@0.4.1","maintainers":[{"name":"mindstone-engineering","email":"engineering@mindstone.com"}],"homepage":"https://github.com/mindstone/mcp-servers/tree/main/connectors/google-workspace","bugs":{"url":"https://github.com/mindstone/mcp-servers/issues"},"bin":{"mcp-server-google-workspace":"dist/index.js"},"dist":{"shasum":"21e3ff92c53682c6a590b968521539ea1cfe0aa4","tarball":"https://registry.npmjs.org/@mindstone/mcp-server-google-workspace/-/mcp-server-google-workspace-0.4.1.tgz","fileCount":284,"integrity":"sha512-TUKKVEuxXBWA3/olcapBB1E/k6xLlk3jc2meYHPdxGGvECHEejTz6uz5GhBrQ7FrQALlt42F6uyW/ByPMiT/2w==","signatures":[{"sig":"MEUCIHzJozfIogilanB1lg8WXsPU9oDzmvGxRP/uOLdPIV/vAiEArMhpL1hHz/dFAYOf19clCrNXKZPUHnfTzFssKJWqM04=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@mindstone%2fmcp-server-google-workspace@0.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1508777},"type":"module","_from":"file:mindstone-mcp-server-google-workspace-0.4.1.tgz","engines":{"node":">=18"},"mcpName":"io.github.mindstone/mcp-server-google-workspace","scripts":{"test":"vitest run","build":"shx rm -rf dist && tsc && shx cp src/tools/definitions/*-overrides.json dist/tools/definitions/ && shx chmod +x dist/index.js && npm run tools:annotations && npm run security:internal-refs","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","pretest":"npm run compose:template:check","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm test","tools:inventory":"node scripts/generate-tools-inventory.mjs","compose:template":"node scripts/gen-compose-html.mjs","request:manifest":"node scripts/generate-request-manifest.mjs","tools:annotations":"node scripts/check-tool-annotations.mjs","compose:template:check":"node scripts/gen-compose-html.mjs --check","request:manifest:check":"node scripts/check-request-manifest.mjs","security:internal-refs":"node scripts/check-internal-refs.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85a4b405-ad5a-4d7b-9fbc-6ffcb9fb43e3"}},"_resolved":"/home/runner/work/mcp-servers/mcp-servers/mindstone-mcp-server-google-workspace-0.4.1.tgz","_integrity":"sha512-TUKKVEuxXBWA3/olcapBB1E/k6xLlk3jc2meYHPdxGGvECHEejTz6uz5GhBrQ7FrQALlt42F6uyW/ByPMiT/2w==","repository":{"url":"git+https://github.com/mindstone/mcp-servers.git","type":"git","directory":"connectors/google-workspace"},"_npmVersion":"11.17.0","attribution":"Based on aaronsb/google-workspace-mcp (https://github.com/aaronsb/google-workspace-mcp)","description":"Google Workspace MCP server for Gmail, Calendar, Drive, Docs, Sheets, Slides, Contacts, Tasks, and Forms","directories":{},"_nodeVersion":"24.19.0","dependencies":{"uuid":"^11.1.0","googleapis":"^171.4.0","google-auth-library":"^10.2.0","@modelcontextprotocol/sdk":"^0.7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.10.0","devDependencies":{"msw":"^2.13.2","shx":"^0.3.4","vitest":"^4.1.3","happy-dom":"^20.8.9","typescript":"^5.8.2","@types/node":"^22","@types/uuid":"^10.0.0","@vitest/coverage-v8":"^4.1.3","@mindstone/mcp-app-compose":"file:../../packages/mcp-app-compose"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server-google-workspace_0.4.1_1787057207448_0.4534661774350963","host":"s3://npm-registry-packages-npm-production"}},"0.4.2":{"_id":"@mindstone/mcp-server-google-workspace@0.4.2","bin":{"mcp-server-google-workspace":"dist/index.js"},"bugs":{"url":"https://github.com/mindstone/mcp-servers/issues"},"dist":{"shasum":"0b04ef47f0ab1d00f9d7d6cde30d6a90bf08c10a","tarball":"https://registry.npmjs.org/@mindstone/mcp-server-google-workspace/-/mcp-server-google-workspace-0.4.2.tgz","fileCount":284,"integrity":"sha512-y5zxysnllxGVSyMIeKq6eFBxSYBkbX6I3lyZyjIyQ9nqxim1+RJMJu7aQUmXc19wvfjSAknvY/uFftLBiPqI3Q==","signatures":[{"sig":"MEQCICXJRc8GHO7TdIx6N5EbsElJIAZ8VIKqj4HNaWuvx4K7AiBRsQErT2cGCJbaEIwYhD7O712kDu9YbOOMDAoMIBpZBg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIEW7VIxWY6bMZPLEOyy+hZdU0K9B93R4SpBFRA6kJqgZAiAPpWQnNL3hnM+89KaLjYAT8FsbBoqxouzy7n6nbL2i5g=="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@mindstone%2fmcp-server-google-workspace@0.4.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1511092},"name":"@mindstone/mcp-server-google-workspace","type":"module","_from":"file:mindstone-mcp-server-google-workspace-0.4.2.tgz","engines":{"node":">=18"},"license":"FSL-1.1-MIT","mcpName":"io.github.mindstone/mcp-server-google-workspace","scripts":{"test":"vitest run","build":"shx rm -rf dist && tsc && shx cp src/tools/definitions/*-overrides.json dist/tools/definitions/ && shx chmod +x dist/index.js && npm run tools:annotations && npm run security:internal-refs","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","pretest":"npm run compose:template:check","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm test","tools:inventory":"node scripts/generate-tools-inventory.mjs","compose:template":"node scripts/gen-compose-html.mjs","request:manifest":"node scripts/generate-request-manifest.mjs","tools:annotations":"node scripts/check-tool-annotations.mjs","compose:template:check":"node scripts/gen-compose-html.mjs --check","request:manifest:check":"node scripts/check-request-manifest.mjs","security:internal-refs":"node scripts/check-internal-refs.mjs"},"version":"0.4.2","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"85a4b405-ad5a-4d7b-9fbc-6ffcb9fb43e3"}},"homepage":"https://github.com/mindstone/mcp-servers/tree/main/connectors/google-workspace","_resolved":"/home/runner/work/mcp-servers/mcp-servers/mindstone-mcp-server-google-workspace-0.4.2.tgz","_integrity":"sha512-y5zxysnllxGVSyMIeKq6eFBxSYBkbX6I3lyZyjIyQ9nqxim1+RJMJu7aQUmXc19wvfjSAknvY/uFftLBiPqI3Q==","repository":{"url":"git+https://github.com/mindstone/mcp-servers.git","type":"git","directory":"connectors/google-workspace"},"_npmVersion":"11.19.0","attribution":"Based on aaronsb/google-workspace-mcp (https://github.com/aaronsb/google-workspace-mcp)","description":"Google Workspace MCP server for Gmail, Calendar, Drive, Docs, Sheets, Slides, Contacts, Tasks, and Forms","directories":{},"maintainers":[{"name":"mindstone-engineering","email":"engineering@mindstone.com"}],"_nodeVersion":"24.21.0","dependencies":{"uuid":"^11.1.0","googleapis":"^171.4.0","google-auth-library":"^10.2.0","@modelcontextprotocol/sdk":"^0.7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.10.0","devDependencies":{"msw":"^2.13.2","shx":"^0.3.4","vitest":"^4.1.3","happy-dom":"^20.8.9","typescript":"^5.8.2","@types/node":"^22","@types/uuid":"^10.0.0","@vitest/coverage-v8":"^4.1.3","@mindstone/mcp-app-compose":"file:../../packages/mcp-app-compose"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mcp-server-google-workspace_0.4.2_1790691134661_0.7878434991200467"}}},"time":{"created":"2026-05-19T13:10:29.750Z","modified":"2026-09-29T14:12:15.205Z","0.1.0":"2026-05-19T13:10:30.118Z","0.1.1":"2026-05-19T16:05:00.937Z","0.1.2":"2026-05-21T20:35:06.510Z","0.1.3":"2026-05-29T14:55:36.967Z","0.1.4":"2026-07-01T09:16:30.221Z","0.1.5":"2026-07-05T16:36:18.895Z","0.2.0":"2026-07-29T20:09:36.620Z","0.3.0":"2026-08-06T08:12:21.106Z","0.4.0":"2026-08-08T13:23:08.393Z","0.4.1":"2026-08-18T12:46:47.634Z","0.4.2":"2026-09-29T14:12:14.778Z"},"bugs":{"url":"https://github.com/mindstone/mcp-servers/issues"},"license":"FSL-1.1-MIT","homepage":"https://github.com/mindstone/mcp-servers/tree/main/connectors/google-workspace","repository":{"url":"git+https://github.com/mindstone/mcp-servers.git","type":"git","directory":"connectors/google-workspace"},"description":"Google Workspace MCP server for Gmail, Calendar, Drive, Docs, Sheets, Slides, Contacts, Tasks, and Forms","maintainers":[{"name":"mindstone-engineering","email":"engineering@mindstone.com"}],"readme":"# @mindstone/mcp-server-google-workspace\n\n[![License: FSL-1.1-MIT](https://img.shields.io/badge/License-FSL--1.1--MIT-blue.svg)](./LICENSE)\n\nGoogle Workspace MCP server — Gmail, Calendar, Drive, Docs, Sheets, Slides, Contacts, Chat, Meet, Tasks, Forms, Comments, and account diagnostics.\n\n*Multi-account Google Workspace MCP. Host-orchestrated OAuth (the connector neither runs a callback server nor mints OAuth URLs), atomic per-account credential writes, and a structured `auth_required` handoff so the host drives the sign-in flow rather than the server.*\n\n## Status\n\n- **Version:** [0.4.2](./CHANGELOG.md) · npm: not yet published\n- **Auth:** OAuth (host-orchestrated) ([`GOOGLE_CLIENT_SECRET`](./server.json))\n- **Tools:** [116](./src/tools/definitions/) (Gmail, Calendar, Drive, Docs, Sheets, Slides, Contacts, Chat, Meet, Tasks, Forms, Comments, Account)\n- **Surface:** cloud-api\n- **Machine-readable:** [`STATUS.json`](./STATUS.json)\n\nThis connector is based on [aaronsb/google-workspace-mcp](https://github.com/aaronsb/google-workspace-mcp) and credited under `package.json#attribution`.\n\n## Why this exists\n\nWhen we ported this in early 2026, Google had not published a first-party MCP server for the Workspace surface. The community options at the time each got parts of the job right — Aaron Brown's [aaronsb/google-workspace-mcp](https://github.com/aaronsb/google-workspace-mcp), which we used as the starting point, covered the breadth of Workspace APIs but ran its own browser-callback server during OAuth, which our host application already does. We forked it so that the MCP host can own the entire OAuth flow (the connector returns a structured `auth_required` response instead of running a callback server or computing OAuth URLs), per-account token files are written atomically with restrictive permissions and symlink rejection, and the connector goes through our own security review before each release. Google's [Workspace MCP](https://github.com/googleworkspace/mcp) has since shipped; we continue to maintain this one because it integrates with our host's credential-file layout, host-orchestrated OAuth handoff, and recovery-guidance contract. This is now a hard fork maintained independently in this repository — we do not sync changes from the upstream project.\n\n## Example interaction\n\n> \"Find the email thread Alice sent yesterday about Q3 planning and reply with 'thanks, will read tonight'.\"\n\nTools the host calls:\n1. `search_workspace_emails` — searches Gmail for `from:alice@... subject:\"Q3 planning\" newer_than:1d`.\n2. `reply_to_workspace_email` — replies on the returned thread ID with the supplied body.\n\nResponse (trimmed):\n\n```json\n{\n  \"thread\": {\n    \"id\": \"1928a...\",\n    \"subject\": \"Q3 planning\",\n    \"from\": \"alice@example.com\"\n  },\n  \"reply\": {\n    \"id\": \"1928b...\",\n    \"labelIds\": [\"SENT\"]\n  }\n}\n```\n\n## Requirements\n\n- Node.js 20+ (`engines.node` is `>=18`, but the build and tests are exercised on 20 and 22)\n- npm\n- A host application that performs the Google OAuth flow and writes `accounts.json` plus per-account token files for the connector to read.\n\n## Quick Start\n\n### Install & build\n\n```bash\ncd <path-to-repo>/connectors/google-workspace\nnpm install\nnpm run build\n```\n\n### npx (once published)\n\n```bash\nnpx -y @mindstone/mcp-server-google-workspace\n```\n\n### Local\n\n```bash\nnode dist/index.js\n```\n\n## Configuration\n\nThis server is designed to run alongside a host application that performs the Google OAuth flow on its own. The host writes credentials to disk; this server reads them.\n\n### Required environment variables\n\n| Variable | Description |\n| --- | --- |\n| `GOOGLE_CLIENT_ID` | Google OAuth client ID. |\n| `GOOGLE_CLIENT_SECRET` | Google OAuth client secret. |\n| `ACCOUNTS_PATH` | Path to `accounts.json` (host-written index of authenticated accounts). |\n| `CREDENTIALS_PATH` | Directory containing per-account Google OAuth token files. |\n\n### Optional environment variables\n\n| Variable | Default | Description |\n| --- | --- | --- |\n| `GOOGLE_WORKSPACE_REQUEST_TIMEOUT_MS` | `60000` | Outbound Google API request timeout in milliseconds (max `300000` = 5 min). |\n\n`GOOGLE_WORKSPACE_DISABLE_REFRESH=1` may be injected by a host to make the connector return `auth_required` instead of refreshing tokens. It is intentionally not a user-facing setup variable.\n\n### Authentication flow\n\n`authenticate_workspace_account` returns a structured `auth_required` response:\n\n```json\n{\n  \"status\": \"auth_required\",\n  \"user_action\": { \"id\": \"google.connect_account\" },\n  \"agent_action\": {\n    \"instruction\": \"Connect Google Workspace to continue. The user will be redirected to Google's sign-in.\"\n  },\n  \"setupToolName\": \"authenticate_workspace_account\"\n}\n```\n\nThe connector does not run a callback server and does not generate OAuth URLs. The MCP host computes the Google OAuth URL and handles the callback. Once the host has written the account's token file under `CREDENTIALS_PATH/` and an entry into `ACCOUNTS_PATH`, the next tool call succeeds.\n\n## Host configuration examples\n\n### Claude Desktop / Cursor\n\n```json\n{\n  \"mcpServers\": {\n    \"GoogleWorkspace\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@mindstone/mcp-server-google-workspace\"],\n      \"env\": {\n        \"GOOGLE_CLIENT_ID\": \"your-google-oauth-client-id\",\n        \"GOOGLE_CLIENT_SECRET\": \"your-google-oauth-client-secret\",\n        \"ACCOUNTS_PATH\": \"/absolute/path/to/accounts.json\",\n        \"CREDENTIALS_PATH\": \"/absolute/path/to/credentials\"\n      }\n    }\n  }\n}\n```\n\nUntil the host has written `${ACCOUNTS_PATH}` and the matching per-account token file under `${CREDENTIALS_PATH}/`, every tool call returns the structured `auth_required` response (see the Authentication flow above).\n\n### Local development (no npm publish needed)\n\n```json\n{\n  \"mcpServers\": {\n    \"GoogleWorkspace\": {\n      \"command\": \"node\",\n      \"args\": [\"<path-to-repo>/connectors/google-workspace/dist/index.js\"],\n      \"env\": {\n        \"GOOGLE_CLIENT_ID\": \"your-google-oauth-client-id\",\n        \"GOOGLE_CLIENT_SECRET\": \"your-google-oauth-client-secret\",\n        \"ACCOUNTS_PATH\": \"/absolute/path/to/accounts.json\",\n        \"CREDENTIALS_PATH\": \"/absolute/path/to/credentials\"\n      }\n    }\n  }\n}\n```\n\n## Tools (116)\n\nThe full list lives under [`src/tools/definitions/`](./src/tools/definitions/) and is also surfaced in [`tools-inventory.json`](./tools-inventory.json). Grouped by domain:\n\n| Domain | Tools | Notes |\n| --- | --- | --- |\n| Gmail | 23 | Email search/thread/send/compose, drafts, labels, label filters, attachments, archive/trash/read-state helpers, settings, vacation responder, and send-as aliases/signatures. |\n| Calendar | 9 | Current time, free-slot lookup, calendar/event listing, event creation, updates, responses, and deletion. |\n| Drive | 15 | List/search/upload/download/copy/move/trash/untrash files, folders, permissions, revisions, shared-drive discovery, and activity queries (what changed, when, by whom). |\n| Docs | 8 | Read, create, append, replace, find/replace, tab listing, and batch updates. |\n| Sheets | 14 | Read/write ranges, create spreadsheets, sheet management, batch operations, find/replace, and formatting. |\n| Slides | 7 | Read, create, list/get slides, batch update, thumbnails, and ID extraction. |\n| Labels | 12 | Gmail label CRUD and filter rules. |\n| Contacts | 4 | List, search, create, and update contacts. |\n| Chat | 3 | List spaces, list messages in a space, and send text messages. |\n| Meet | 3 | List conference records, list transcripts, and read transcript entries (speaker + text). |\n| Comments | 5 | List/create/reply/resolve/delete Drive comments. |\n| Account | 3 | List, authenticate, and remove workspace accounts. |\n| Tasks | 6 | List task lists, and list/create/update/complete/delete tasks. |\n| Forms | 4 | Read-only access to forms and their responses. |\n\n### Shared drives\n\nAll Drive file, permission, and comment tools work on shared-drive files (the `files.*` and `permissions.*` calls pass `supportsAllDrives`; the Comments API addresses files by ID and defines no such flag). Listing and search default to the user's own corpus plus files shared with them, so shared-drive content the user has access to but has never opened may not surface by default. To work with shared drives explicitly:\n\n- **Discover drives:** `list_shared_drives` returns the shared drives the account can access (id, name, creation time).\n- **Target one drive:** pass `options.driveId` to `list_drive_files` / `search_drive_files`. The connector forces `corpora: 'drive'` whenever `driveId` is set (the Drive API rejects any other pairing), overriding a caller-supplied `corpora`.\n- **Search everything:** pass `options.corpora: 'allDrives'` (no `driveId`) to search across My Drive and all shared drives in one query. Google recommends this only for targeted searches; prefer a specific `driveId` for browsing.\n\nKnown Drive API limitations for shared-drive files (not fixable in this connector):\n\n- Files native to a shared drive have no `owners[]` — ownership belongs to the drive itself. Use `lastModifyingUser` and `createdTime` as proxies when attributing files.\n- The Revisions API does not support shared-drive files, so `list_file_revisions` / `download_file_revision` only work for My Drive files.\n\n### Vacation responder\n\n`update_workspace_vacation_responder` merges with the existing settings (the Gmail API otherwise replaces the whole resource): omitted subject/body are kept, an existing HTML body stays HTML, and a pending scheduled end is preserved when `end_time` is omitted. To remove a scheduled end and make the auto-reply open-ended, pass `clear_end_time: true` (mutually exclusive with `end_time`). An already-past end is never carried into a re-enable.\n\n## Security notes\n\n- Token and account writes use temp-file plus rename, restrictive permissions, fsync, and symlink rejection.\n- Token refresh can be disabled by the host so a single authority owns refresh-token rotation (`GOOGLE_WORKSPACE_DISABLE_REFRESH=1`).\n- User-recoverable failures return host-neutral recovery guidance with `action_required` and `next_step` fields.\n- The bundled callback server was removed; OAuth URLs and callback handling stay with the MCP host.\n- Attachment filenames are sanitised to prevent path traversal via crafted `upload_workspace_attachment` filename arguments.\n- `<untrusted-content>` envelopes cover Contacts, Calendar, Comments, Forms, Tasks, and JSON-return paths.\n\n## Licence\n\n[FSL-1.1-MIT](./LICENSE) — Functional Source License, Version 1.1, with MIT future licence. The software converts to MIT licence on 2030-04-08.\n","readmeFilename":"README.md"}