preflight

https://github.com/A1-x-Tech/mcp-google-gmail

mcp-google-gmail

Caution

Score 71 / 100 · 73 files read · 0 critical, 0 high, 3 medium, 10 low findings

Report 77e57bcb895862a3 · 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

credentials82
exfiltration92
execution92
injection100
obfuscation98
files92

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 935 · rule L1
> { const base = (process.env.GOOGLE_GMAIL_API_BASE || DEFAULT_BASE).replace(/\/+$/, ""); const res = await fetch(`${base}/gma
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_GMAIL_CLIENT_ID; const clientSecret = process.env.GOOGLE_GMAIL_CLIENT_SECRET; const ref
lowReads named environment variables (normal for API keys; listed in the permission summary)
src/index.ts · line 76 · rule L1
config: { apiBase: process.env.GOOGLE_GMAIL_API_BASE || DEFAULT_BASE }, problem: err, }; } } async function main():
lowReads named environment variables (normal for API keys; listed in the permission summary)
src/smoke.ts · line 21 · rule L1
, null, 2)); if (process.env.GOOGLE_GMAIL_SMOKE_WRITE !== "1") return; if (!profile.emailAddress) throw new Error("profile ca
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)
test/dist-smoke.test.js · line 136 · rule L1
env: { ...process.env, GOOGLE_GMAIL_ACCESS_TOKEN: "test-token", XDG_CONFIG_HOME: isolatedConfigDir(t),

Permission surface

Network endpoints
api.github.comcode.claude.comcode.visualstudio.comcursor.comdevelopers.google.comevil.exampleexample.invalidexample.testgithub.comglama.aigmail.googleapis.comimg.shields.iokeepachangelog.comlearn.chatgpt.comlobehub.commail.google.commyaccount.google.comoauth2.googleapis.comopencollective.comregistry.npmjs.orgsemver.orgstatic.modelcontextprotocol.iosupport.claude.comt.meusage.gistrec.cloudwww.googleapis.comwww.npmjs.com
Environment read
GOOGLE_GMAIL_ACCESS_TOKENGOOGLE_GMAIL_API_BASEGOOGLE_GMAIL_CLIENT_IDGOOGLE_GMAIL_CLIENT_SECRETGOOGLE_GMAIL_MAX_RETRIESGOOGLE_GMAIL_REFRESH_TOKENGOOGLE_GMAIL_SMOKE_WRITEGOOGLE_GMAIL_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-gmail
Owner
A1-x-Tech
Stars
0
Forks
0
Repo created
2026-08-30
Last push
2026-10-04
License
MIT

Badge for the author

Preflight grade

[![Preflight: Caution](https://preflight.orbitaldeskllc.com/badge/77e57bcb895862a3.svg)](https://preflight.orbitaldeskllc.com/b/77e57bcb895862a3)

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/77e57bcb895862a3