https://github.com/A1-x-Tech/mcp-google-apps-script
mcp-google-apps-script
Caution
Score 71 / 100 · 69 files read · 0 critical, 0 high, 3 medium, 11 low findings
Report a9657b450390b1b7 · first scanned 2026-10-28 · scanned 3× · keyed to the exact package contents, so this link always shows this version
Listed in the Agent Census directory data
Subscores
100 is clean. Deductions come only from the cited findings below.
Findings
mediumCode contacts static.modelcontextprotocol.io, which the documentation never mentions
(package) · line 1 · rule M3
static.modelcontextprotocol.io
mediumRuns a command automatically at install time (prepare)
package.json · line 1 · rule M4
prepare: npm run build
mediumWrites files under the user home directory
src/telemetry.ts · line 14 · rule M5
Sync, readFileSync, writeFileSync } from "node:fs"; import { homedir } from "node:os"; import { join } from "node:path"; import ty
low2 binary file(s) were not parsed (static text analysis only)
(package) · line 1 · rule L3
2 binary files
lowReads named environment variables (normal for API keys; listed in the permission summary)
src/client.ts · line 629 · rule L1
> { const base = (process.env.GOOGLE_APPS_SCRIPT_API_BASE || DEFAULT_BASE).replace(/\/+$/, ""); const res = await fetch(`${bas
lowReads named environment variables (normal for API keys; listed in the permission summary)
src/config.test.ts · line 21 · rule L1
keys.map((k) => [k, process.env[k]])); for (const k of keys) delete process.env[k]; for (const [k, v] of Object.entries(vars))
lowReads named environment variables (normal for API keys; listed in the permission summary)
src/config.ts · line 73 · rule L1
const clientId = process.env.GOOGLE_APPS_SCRIPT_CLIENT_ID; const clientSecret = process.env.GOOGLE_APPS_SCRIPT_CLIENT_SECRET;
lowReads named environment variables (normal for API keys; listed in the permission summary)
src/index.ts · line 80 · rule L1
config: { apiBase: process.env.GOOGLE_APPS_SCRIPT_API_BASE || DEFAULT_BASE }, problem: err, }; } } async function ma
lowReads named environment variables (normal for API keys; listed in the permission summary)
src/smoke.ts · line 31 · rule L1
process.argv[2] ?? process.env.GOOGLE_APPS_SCRIPT_SMOKE_SCRIPT_ID; if (scriptId) { const project = (await client.getProject
lowReads named environment variables (normal for API keys; listed in the permission summary)
src/telemetry.test.ts · line 97 · rule L1
one. const prev = process.env.XDG_CONFIG_HOME; process.env.XDG_CONFIG_HOME = mkdtempSync(join(tmpdir(), "beacon-test-")); tr
lowReads named environment variables (normal for API keys; listed in the permission summary)
src/telemetry.ts · line 23 · rule L1
NodeJS.ProcessEnv = process.env): boolean { const value = (env.ASKADS_TELEMETRY ?? "").trim().toLowerCase(); return !["0", "fa
lowReads named environment variables (normal for API keys; listed in the permission summary)
src/tools/auth.test.ts · line 52 · rule L1
) savedEnv.set(key, process.env[key]); for (const key of ENV_KEYS) delete process.env[key]; configDir = mkdtempSync(join(tmpdi
lowReads named environment variables (normal for API keys; listed in the permission summary)
src/tools/setup.test.ts · line 45 · rule L1
=> { const prev = process.env.GOOGLE_APPS_SCRIPT_REFRESH_TOKEN; process.env.GOOGLE_APPS_SCRIPT_REFRESH_TOKEN = "super-secret-r
lowReads named environment variables (normal for API keys; listed in the permission summary)
test/dist-smoke.test.js · line 130 · rule L1
env: { ...process.env, GOOGLE_APPS_SCRIPT_ACCESS_TOKEN: "test-token", XDG_CONFIG_HOME: isolatedConfigDir(t),
Permission surface
- Network endpoints
- api.github.comcode.claude.comcode.visualstudio.comconsole.cloud.google.comcursor.comdevelopers.google.comevil.exampleexample.invalidexample.testgithub.comglama.aiimg.shields.iokeepachangelog.comlearn.chatgpt.comlobehub.commyaccount.google.comoauth2.googleapis.comopencollective.comregistry.npmjs.orgscript.google.comscript.googleapis.comsemver.orgstatic.modelcontextprotocol.iosupport.claude.comt.meusage.gistrec.cloudwww.googleapis.comwww.npmjs.com
- Environment read
- GOOGLE_APPS_SCRIPT_ACCESS_TOKENGOOGLE_APPS_SCRIPT_API_BASEGOOGLE_APPS_SCRIPT_CLIENT_IDGOOGLE_APPS_SCRIPT_CLIENT_SECRETGOOGLE_APPS_SCRIPT_MAX_RETRIESGOOGLE_APPS_SCRIPT_REFRESH_TOKENGOOGLE_APPS_SCRIPT_SMOKE_SCRIPT_IDGOOGLE_APPS_SCRIPT_TIMEOUT_MSXDG_CONFIG_HOME
- Shell execution
- no
- Install hooks
- prepare: npm run build
- Credential material
- Reads named environment variables (normal for API keys; listed in the permission summary)
Provenance
- Source
- GitHub
- Repository
- A1-x-Tech/mcp-google-apps-script
- Owner
- A1-x-Tech
- Stars
- 0
- Forks
- 0
- Repo created
- 2026-08-30
- Last push
- 2026-10-04
- License
- MIT
Badge for the author
The badge links back to this report and updates if the package is re-scanned at a new version.
Watch this package
Interest list only. We store the address and this report link, nothing else. No mail is sent in v1.
Share this report: https://preflight.orbitaldeskllc.com/r/a9657b450390b1b7