MCP server · trust report

io.github.firebase/firebase-mcp

2 checks that ran failed — credential hygiene and permission scope — so this release can’t be trusted as-is.

Publisher
io.github.firebase
Repository
github.com/firebase/firebase-tools
Install
npm:firebase-tools
Versions
1
Inspected
4 of 6 checks · 65%
Scored
2026-07-20 · rubric 1.0.0

What we checked

Six static checks, weighted by risk. Every result reflects only what could be observed in the published package and repository — never intent.

6 checks0 clean4 flagged2 not inspected
  • Injection surface

    unscannable25% of grade

    Tool descriptions/manifest scanned for instruction-injection patterns (imperatives at the model, hidden text, 'ignore previous', data-exfil URLs).

    No tool descriptions, server instructions, prompts, or resources were fetched; nothing to scan for injection.

  • Supply chain

    warn25% of grade

    Package provenance: namespace verification, repo linkage, maintainer count, account age, postinstall scripts, typosquat distance.

    dependency "tar" is edit-distance 2 from popular package "yarn" (typosquat candidate); dependency "tmp" is edit-distance 2 from popular package "pm2" (typosquat candidate); dependency "mime" is edit-distance 2 from popular package "vite" (typosquat candidate); dependency "open" is edit-distance 2 from popular package "boxen" (typosquat candidate); dependency "yaml" is edit-distance 2 from popular package "yarn" (typosquat candidate); dependency "gaxios" is edit-distance 1 from top-20 package "axios" (typosquat candidate); dependency "@apphosting/build" is edit-distance 2 from top-20 package "uuid" (typosquat candidate)

  • Credential hygiene

    fail15% of grade

    How the server takes secrets (env vs plaintext config vs hardcoded); secrets appearing in tool schemas.

    lib/api.js: contains a hardcoded Google API key (AIza…iQ (len 39)). lib/fetchWebSetup.js: assigns a literal to apiKey (fake…ey (len 12)) — non-provider secret literal; prefer environment intake. lib/emulator/auth/handlers.js: assigns a literal to token (${en…)} (len 45)) — non-provider secret literal; prefer environment intake. Reads secrets from the environment (e.g. lib/emulator/adminSdkConfig.js) — the recommended intake shape.

  • Permission scope

    fail15% of grade

    Declared tools vs. breadth (filesystem, network, exec); flags shell-exec and unbounded filesystem access.

    HIGH: lib/init/features/aitools/cursor.js: references a sensitive credential path (/mcp.json) — the tool-poisoning exfiltration target. HIGH: shell/exec capability AND network egress together — download-and-execute risk (lib/emulator/commandUtils.js: imports child_process and calls exec/spawn; lib/apiv2.js: outbound HTTP/socket call). HIGH: shell/exec capability AND destructive filesystem writes together (lib/emulator/commandUtils.js: imports child_process and calls exec/spawn; lib/init/features/account.js: path traversal ('../') combined with file access). discloses shell/exec capability: lib/emulator/commandUtils.js: imports child_process and calls exec/spawn discloses shell/exec capability: lib/init/features/dataconnect/create_app.js: imports child_process discloses shell/exec capability: lib/emulator/dataconnectEmulator.js: imports child_process and calls exec/spawn discloses shell/exec capability: lib/emulator/downloadableEmulators.js: imports child_process and calls exec/spawn discloses shell/exec capability: standalone/firepit.js: imports child_process and calls exec/spawn discloses shell/exec capability: lib/frameworks/angular/index.js: imports child_process discloses shell/exec capability: lib/frameworks/express/index.js: imports child_process discloses shell/exec capability: lib/frameworks/index.js: imports child_process discloses shell/exec capability: lib/frameworks/next/index.js: imports child_process discloses shell/exec capability: lib/frameworks/nuxt/index.js: imports child_process discloses shell/exec capability: lib/frameworks/vite/index.js: imports child_process discloses dynamic code execution: lib/emulator/functionsEmulatorRuntime.js: uses new Function(…) discloses broad/destructive filesystem access: lib/init/features/account.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/adminSdkConfig.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/init/features/aitools.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/database/api.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/firestore/api.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/hosting/api.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/apiv2.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/apphosting/app.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/appdistribution-distribute.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/appdistribution-groups-create.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/appdistribution-groups-delete.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/appdistribution-groups-list.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/appdistribution-testcases-export.js: destructive/writing fs.* call (write/unlink/rm/chmod/rename) discloses broad/destructive filesystem access: lib/commands/appdistribution-testcases-export.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/appdistribution-testcases-import.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/appdistribution-testers-add.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/appdistribution-testers-list.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/appdistribution-testers-remove.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/apphosting-backends-create.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/apphosting-backends-delete.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/apphosting-backends-get.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/apphosting-backends-list.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/apphosting-builds-create.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/apphosting-builds-get.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/apphosting-repos-create.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/apphosting-rollouts-create.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/apphosting-rollouts-list.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/apphosting-secrets-access.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/apphosting-secrets-describe.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/apphosting-secrets-grantaccess.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/apphosting-secrets-set.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/gcp/apphosting.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/init/features/apphosting.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/functions/cache/applyHash.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/apps-android-sha-create.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/apps-android-sha-delete.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/apps-android-sha-list.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/apps-create.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/apps-init.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/apps-list.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/apps-sdkconfig.js: destructive/writing fs.* call (write/unlink/rm/chmod/rename) discloses broad/destructive filesystem access: lib/commands/apps-sdkconfig.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/management/apps.js: destructive/writing fs.* call (write/unlink/rm/chmod/rename) discloses broad/destructive filesystem access: lib/management/apps.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/apptesting-execute.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/gcp/apptesting.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/archiveDirectory.js: destructive/writing fs.* call (write/unlink/rm/chmod/rename) discloses broad/destructive filesystem access: lib/gcp/artifactregistry.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/functions/artifacts.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/extensions/askUserForEventsConfig.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/extensions/askUserForParam.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/auth-export.js: destructive/writing fs.* call (write/unlink/rm/chmod/rename) discloses broad/destructive filesystem access: lib/commands/auth-export.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/auth-import.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/functions/services/auth.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/gcp/auth.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/util/apptesting/availability.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/util/availability.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/util/crashlytics/availability.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/apphosting/backend.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/functions/backend.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/firestore/backupUtils.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/dataconnect/build.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/functions/build.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/crashlytics/buildToolsJarHelper.js: destructive/writing fs.* call (write/unlink/rm/chmod/rename) discloses broad/destructive filesystem access: lib/crashlytics/buildToolsJarHelper.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/functions/cel.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/firestore/checkDatabaseType.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/dataconnect/checkIam.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/functions/checkIam.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/checkMinRequiredVersion.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/extensions/checkProjectBilling.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/bin/cli.js: destructive/writing fs.* call (write/unlink/rm/chmod/rename) discloses broad/destructive filesystem access: lib/bin/cli.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/appdistribution/client.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/dataconnect/client.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/gcp/cloudbilling.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/gcp/cloudbuild.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/auth/cloudFunctions.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/storage/cloudFunctions.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/gcp/cloudfunctions.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/gcp/cloudfunctionsv2.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/gcp/cloudlogging.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/gcp/cloudmonitoring.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/hosting/cloudRunProxy.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/gcp/cloudscheduler.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/gcp/cloudsql/cloudsqladmin.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/gcp/cloudtasks.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/commandUtils.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/extensions/runtimes/common.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/tools/dataconnect/compile.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/util/dataconnect/compile.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/gcp/computeEngine.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/apphosting/config.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/config.js: destructive/writing fs.* call (write/unlink/rm/chmod/rename) discloses broad/destructive filesystem access: lib/emulator/apphosting/config.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/storage/rules/config.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/hosting/config.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/configstore.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/gcp/cloudsql/connect.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/prompts/crashlytics/connect.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/frameworks/constants.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/prompts/core/consult.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/functions/containerCleaner.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/controller.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/hosting/convertConfig.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/tools/firestore/converter.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/util/dataconnect/converter.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/crashlytics-mappingfile-generateid.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/crashlytics-mappingfile-upload.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/crashlytics-symbols-upload.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/tools/core/create_android_sha.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/init/features/dataconnect/create_app.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/tools/core/create_app.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/tools/core/create_project.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/init/features/aitools/cursor.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/database-get.js: destructive/writing fs.* call (write/unlink/rm/chmod/rename) discloses broad/destructive filesystem access: lib/commands/database-get.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/database-import.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/database-instances-create.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/database-instances-list.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/database-profile.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/database-push.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/database-remove.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/database-rules-canary.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/database-rules-get.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/database-rules-list.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/database-rules-release.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/database-rules-stage.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/database-set.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/database-settings-get.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/database-settings-set.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/database-update.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/functions/services/database.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/init/features/database.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/management/database.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/databaseEmulator.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/dataconnect-execute.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/dataconnect-sdk-generate.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/dataconnect-services-list.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/dataconnect-sql-diff.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/dataconnect-sql-grant.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/dataconnect-sql-migrate.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/dataconnect-sql-setup.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/dataconnect-sql-shell.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/functions/services/dataconnect.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/dataconnectEmulator.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/dataconnectToolkitController.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/dataconnect/dataplaneClient.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/defaultCredentials.js: destructive/writing fs.* call (write/unlink/rm/chmod/rename) discloses broad/destructive filesystem access: lib/mcp/tools/firestore/delete_document.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/firestore/delete.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/remoteconfig/deleteExperiment.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/remoteconfig/deleteRollout.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/deploy.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/apphosting/deploy.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/dataconnect/deploy.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/extensions/deploy.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/firestore/deploy.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/functions/deploy.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/hosting/deploy.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/storage/deploy.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/prompts/core/deploy.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/extensions/deploymentSummary.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/functions/deprecationWarnings.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/gcp/devConnect.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/apphosting/developmentServer.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/extensions/diagnose.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/apphosting/secrets/dialogs.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/extensions/displayExtensionInfo.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/appdistribution/distribution.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/dns.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/frameworks/compose/driver/docker.js: destructive/writing fs.* call (write/unlink/rm/chmod/rename) discloses broad/destructive filesystem access: lib/gcp/docker.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/resources/docs.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/download.js: destructive/writing fs.* call (write/unlink/rm/chmod/rename) discloses broad/destructive filesystem access: lib/emulator/download.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/downloadableEmulators.js: destructive/writing fs.* call (write/unlink/rm/chmod/rename) discloses broad/destructive filesystem access: lib/emulator/downloadableEmulators.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/downloadUtils.js: destructive/writing fs.* call (write/unlink/rm/chmod/rename) discloses broad/destructive filesystem access: lib/mcp/util/dataconnect/emulator.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/emulatorLogger.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/emulators-exec.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/emulators-export.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/emulators-start.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/init/features/emulators.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/firestore/encodeFirestoreValue.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/functions/ensure.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/dataconnect/ensureApis.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/apptesting/ensureProjectConfigured.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/env.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/functions/env.js: destructive/writing fs.* call (write/unlink/rm/chmod/rename) discloses broad/destructive filesystem access: lib/functions/env.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/management/provisioning/errorHandler.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/extensions/errors.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/errors.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/gcp/eventarc.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/eventarcEmulator.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/eventarcEmulatorUtils.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/crashlytics/events.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/tools/crashlytics/events.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/tools/dataconnect/execute.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/functions/release/executor.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/experiments-describe.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/experiments-disable.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/experiments-enable.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/experiments-list.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/hosting/expireUtils.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/extensions/export.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/ExpressBasedEmulator.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/ext-configure.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/ext-dev-deprecate.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/ext-dev-init.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/ext-dev-list.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/ext-dev-register.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/ext-dev-undeprecate.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/ext-dev-upload.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/ext-dev-usage.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/ext-export.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/ext-info.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/ext-install.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/ext-list.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/ext-sdk-install.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/ext-uninstall.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/ext-update.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/ext.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/extensions/extensionsApi.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/extensionsEmulator.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/extensions/extensionsHelper.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/functions/release/fabricator.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/gcp/cloudsql/fbToolsAuthClient.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/gemini/fdcExperience.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/tools/apphosting/fetch_logs.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/fetchMOTD.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/storage/files.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/frameworks/compose/discover/filesystem.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/crashlytics/filters.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/dataconnect/filters.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/bin/firebase.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/storage/apis/firebase.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/functions/services/firebaseAlerts.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/firebaseConfigValidate.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/gcp/firedata.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: standalone/firepit.js: destructive/writing fs.* call (write/unlink/rm/chmod/rename) discloses broad/destructive filesystem access: lib/commands/firestore-backups-delete.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/firestore-backups-get.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/firestore-backups-list.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/firestore-backups-schedules-create.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/firestore-backups-schedules-delete.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/firestore-backups-schedules-list.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/firestore-backups-schedules-update.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/firestore-bulkdelete.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/firestore-databases-clone.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/firestore-databases-create.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/firestore-databases-delete.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/firestore-databases-get.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/firestore-databases-list.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/firestore-databases-restore.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/firestore-databases-update.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/firestore-delete.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/firestore-indexes-list.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/firestore-locations.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/firestore-operations-cancel.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/firestore-operations-describe.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/firestore-operations-list.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/firestore-utils.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/functions/services/firestore.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/gcp/firestore.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/firestoreEmulator.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/frameworks/compose/discover/frameworkMatcher.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/dataconnect/freeTrial.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/firestore/fsConfig.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/functions-artifacts-setpolicy.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/functions-config-clone.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/functions-config-export.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/functions-config-get.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/functions-config-set.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/functions-config-unset.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/functions-delete.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/functions-deletegcfartifacts.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/functions-list.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/functions-log.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/functions-secrets-access.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/functions-secrets-describe.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/functions-secrets-destroy.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/functions-secrets-get.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/functions-secrets-prune.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/functions-secrets-set.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/functions-shell.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/remoteconfig/functions.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/serve/functions.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/functions/functionsDeployHelper.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/functionsEmulator.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/functionsEmulatorShared.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/functionsEmulatorShell.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/functions/functionslog.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/hosting/functionsProxy.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/functionsRuntimeWorker.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/storage/apis/gcloud.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/init/features/aitools/gemini.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/tools/dataconnect/generate_operation.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/tools/dataconnect/generate_schema.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/tools/realtime_database/get_data.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/tools/firestore/get_documents.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/tools/storage/get_download_url.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/tools/core/get_environment.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/tools/functions/get_logs.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/tools/core/get_project.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/tools/core/get_sdk_config.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/tools/core/get_security_rules.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/tools/remoteconfig/get_template.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/tools/auth/get_users.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/remoteconfig/get.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/remoteconfig/getExperiment.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/remoteconfig/getRollout.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/init/features/hosting/github.js: destructive/writing fs.* call (write/unlink/rm/chmod/rename) discloses broad/destructive filesystem access: lib/init/features/hosting/github.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/apphosting/githubConnections.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/functions/cache/hash.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/hosting/hashcache.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/help.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/frameworks/compose/driver/hooks.js: destructive/writing fs.* call (write/unlink/rm/chmod/rename) discloses broad/destructive filesystem access: lib/commands/hosting-channel-create.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/hosting-channel-delete.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/hosting-channel-deploy.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/hosting-channel-list.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/hosting-channel-open.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/hosting-clone.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/hosting-disable.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/hosting-sites-create.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/hosting-sites-delete.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/hosting-sites-get.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/hosting-sites-list.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/serve/hosting.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/hostingEmulator.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/hub.js: destructive/writing fs.* call (write/unlink/rm/chmod/rename) discloses broad/destructive filesystem access: lib/emulator/hub.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/hubClient.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/hubExport.js: destructive/writing fs.* call (write/unlink/rm/chmod/rename) discloses broad/destructive filesystem access: lib/emulator/hubExport.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/gcp/iam.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/gcp/identityPlatform.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/hosting/implicitInit.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/database/import.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/apphosting/secrets/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/functions/release/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/functions/runtimes/discovery/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/functions/runtimes/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/functions/runtimes/node/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/functions/runtimes/python/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/functions/runtimes/supported/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/functions/services/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/deploy/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/apphosting/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/auth/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/storage/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/frameworks/angular/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/frameworks/astro/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/frameworks/compose/discover/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/frameworks/express/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/frameworks/flutter/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/frameworks/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/frameworks/lit/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/frameworks/next/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/frameworks/nuxt/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/frameworks/nuxt2/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/frameworks/preact/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/frameworks/react/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/frameworks/svelte/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/frameworks/sveltekit/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/frameworks/vite/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/init/features/ailogic/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/init/features/apptesting/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/init/features/dataconnect/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/init/features/extensions/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/init/features/firestore/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/init/features/functions/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/init/features/genkit/index.js: destructive/writing fs.* call (write/unlink/rm/chmod/rename) discloses broad/destructive filesystem access: lib/init/features/genkit/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/init/features/hosting/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/init/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/prompts/apptesting/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/prompts/dataconnect/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/resources/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/tools/apptesting/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/serve/index.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/init/features/firestore/indexes.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/resources/guides/init_ai.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/resources/guides/init_auth.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/resources/guides/init_backend.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/resources/guides/init_data_connect.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/resources/guides/init_firestore_rules.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/resources/guides/init_firestore.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/resources/guides/init_hosting.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/resources/guides/init_rtdb.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/commands/init.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/prompts/core/init.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/mcp/tools/core/init.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/emulator/initEmulators.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/hosting/initMiddleware.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/gcp/cloudsql/interactive.js: path traversal ('../') combined with file access discloses broad/destructive filesystem access: lib/hosting/interactive.js: path traversal ('../') combined with file access Capability DISCLOSURE, not a verdict: static analysis sees the primitive is present and reachable, not whether its use is attacker-controlled.

  • Version behavior

    unscannable10% of grade

    Diff of tool definitions between versions; new permissions or changed descriptions in a patch release (the postmark-mcp class).

    no prior version to diff (first sight of io.github.firebase/[email protected]); version-drift / rug-pull cannot be evaluated. Cold-start risk is covered by point-in-time checks (injection_surface, supply_chain, credential_hygiene), not here.

  • Transport config

    warn10% of grade

    Remote servers: TLS and auth mode (none/token/OAuth). Local servers: whether the manifest indicates it phones home.

    manifest/source references analytics behavior — disclosure

Version history

Each release plotted by grade against the safe line at B. A version that sinks below the line has lost its trusted standing — the shape of a rug-pull.

VersionPublishedGradeScoreInspectedChange
v0.3.0 · current2025-12-04 D52.54/6 · 65%