⚠️ This snapshot is over 30 days old — treat the grade as stale until the next refresh. Re-scan locally to verify.
Trust Card · Static snapshot
supabase-community__supabase-mcp U
Ungraded — insufficient static coverage · 3 findings (1 critical) · scope excessive · Not ranked: insufficient static coverage.
Scanned 2026-10-19 · engine v0.1.3 (8 regex rules, OWASP-mapped) · upstream supabase-community/supabase-mcp @ bd2d33f (2026-10-16)
Score breakdown
No numeric score or breakdown: insufficient static coverage. Findings remain actionable; absence of findings is not evidence of safety.
Insufficient static coverage: Unsupported source present; Symlinks or special files were not examined. Findings remain actionable; absence of findings is not evidence of safety.
Coverage: limited
Static-heuristic scope: 133 analyzed / 159 discovered files; 8 unsupported source files; 28 excluded; 0 read errors; 0 truncations. This is not a semantic coverage percentage or proof of safety.
- Unsupported source present
- Symlinks or special files were not examined
- Coverage describes the files read and regex rules applied, not semantic, runtime, or dependency coverage.
- Supported code is JavaScript, TypeScript, and Python; JSON/YAML receive only the credential rule.
- Skill instructions and other prose are not code-analyzed; declared controls are not verified enforcement.
- Ignored directories, declarations, and non-implementation assets are outside rule scope.
File coverage, applied rules and scan limits
{
"mode": "static-heuristic",
"status": "limited",
"reasons": [
"Unsupported source present",
"Symlinks or special files were not examined"
],
"limitations": [
"Coverage describes the files read and regex rules applied, not semantic, runtime, or dependency coverage.",
"Supported code is JavaScript, TypeScript, and Python; JSON/YAML receive only the credential rule.",
"Skill instructions and other prose are not code-analyzed; declared controls are not verified enforcement.",
"Ignored directories, declarations, and non-implementation assets are outside rule scope."
],
"discoveredFiles": 159,
"analyzedFiles": [
{
"path": ".github/dependabot.yml",
"scope": "data",
"bytes": 223,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/workflows/biome.yml",
"scope": "data",
"bytes": 447,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/workflows/check-management-api-types.yml",
"scope": "data",
"bytes": 922,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/workflows/publish-preview.yml",
"scope": "data",
"bytes": 1472,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/workflows/release.yml",
"scope": "data",
"bytes": 9339,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/workflows/sync-management-api-types.yml",
"scope": "data",
"bytes": 1840,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".github/workflows/tests.yml",
"scope": "data",
"bytes": 1588,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".release-please-manifest.json",
"scope": "data",
"bytes": 124,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": ".vscode/settings.json",
"scope": "data",
"bytes": 141,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "biome.json",
"scope": "data",
"bytes": 870,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "package.json",
"scope": "data",
"bytes": 704,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/mcp-server-postgrest/package.json",
"scope": "data",
"bytes": 1356,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/mcp-server-postgrest/src/index.ts",
"scope": "code",
"bytes": 29,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-postgrest/src/server.test.ts",
"scope": "code",
"bytes": 15190,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-postgrest/src/server.ts",
"scope": "code",
"bytes": 3424,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-postgrest/src/stdio.ts",
"scope": "code",
"bytes": 889,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-postgrest/src/util.ts",
"scope": "code",
"bytes": 322,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-postgrest/tsconfig.json",
"scope": "data",
"bytes": 96,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/mcp-server-postgrest/tsup.config.ts",
"scope": "code",
"bytes": 249,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/package.json",
"scope": "data",
"bytes": 2747,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/mcp-server-supabase/scripts/generate-management-api-types.mjs",
"scope": "code",
"bytes": 911,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/scripts/registry/update-version.ts",
"scope": "code",
"bytes": 1213,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/server.json",
"scope": "data",
"bytes": 2959,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/mcp-server-supabase/src/advisories/advisories.test.ts",
"scope": "code",
"bytes": 5064,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/advisories/index.ts",
"scope": "code",
"bytes": 139,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/advisories/rls-disabled.ts",
"scope": "code",
"bytes": 2300,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/advisories/schema.ts",
"scope": "code",
"bytes": 1278,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/cli.ts",
"scope": "code",
"bytes": 3237,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/content-api/graphql.test.ts",
"scope": "code",
"bytes": 2199,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/content-api/graphql.ts",
"scope": "code",
"bytes": 5592,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/content-api/index.ts",
"scope": "code",
"bytes": 1074,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/edge-function.test.ts",
"scope": "code",
"bytes": 1036,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/edge-function.ts",
"scope": "code",
"bytes": 1685,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/index.test.ts",
"scope": "code",
"bytes": 1701,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/index.ts",
"scope": "code",
"bytes": 811,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/logs.test.ts",
"scope": "code",
"bytes": 1536,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/logs.ts",
"scope": "code",
"bytes": 3071,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/management-api/index.ts",
"scope": "code",
"bytes": 2978,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/management-api/types.ts",
"scope": "code",
"bytes": 453334,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/management-api-v2/index.test.ts",
"scope": "code",
"bytes": 1364,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/management-api-v2/index.ts",
"scope": "code",
"bytes": 1898,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/management-api-v2/types.ts",
"scope": "code",
"bytes": 477846,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/observation-confirmation.test.ts",
"scope": "code",
"bytes": 7471,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/observation-operations.test.ts",
"scope": "code",
"bytes": 1167,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/observation-sql.test.ts",
"scope": "code",
"bytes": 14774,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/observation.ts",
"scope": "code",
"bytes": 1879,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/password.test.ts",
"scope": "code",
"bytes": 1807,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/password.ts",
"scope": "code",
"bytes": 1279,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/pg-meta/index.ts",
"scope": "code",
"bytes": 1568,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/pg-meta/types.ts",
"scope": "code",
"bytes": 2397,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/platform/api-platform.ts",
"scope": "code",
"bytes": 26635,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/platform/index.ts",
"scope": "code",
"bytes": 28,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/platform/types.ts",
"scope": "code",
"bytes": 11282,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/pricing.ts",
"scope": "code",
"bytes": 1278,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/regions.ts",
"scope": "code",
"bytes": 317,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/server.account.test.ts",
"scope": "code",
"bytes": 26253,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/server.branching.test.ts",
"scope": "code",
"bytes": 36051,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/server.database.test.ts",
"scope": "code",
"bytes": 43872,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/server.debugging.test.ts",
"scope": "code",
"bytes": 16215,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/server.development.test.ts",
"scope": "code",
"bytes": 2312,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/server.functions.test.ts",
"scope": "code",
"bytes": 41955,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/server.notebooks.test.ts",
"scope": "code",
"bytes": 4893,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/server.storage.test.ts",
"scope": "code",
"bytes": 3595,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/server.test.ts",
"scope": "code",
"bytes": 22463,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/server.ts",
"scope": "code",
"bytes": 13086,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/tools/account-tools.ts",
"scope": "code",
"bytes": 14475,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/tools/branching-tools.ts",
"scope": "code",
"bytes": 11460,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/tools/confirmation-observation.test.ts",
"scope": "code",
"bytes": 4436,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/tools/confirmation.test.ts",
"scope": "code",
"bytes": 4225,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/tools/confirmation.ts",
"scope": "code",
"bytes": 12260,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/tools/database-operation-tools.ts",
"scope": "code",
"bytes": 20240,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/tools/debugging-tools.test.ts",
"scope": "code",
"bytes": 7311,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/tools/debugging-tools.ts",
"scope": "code",
"bytes": 13618,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/tools/destructive-sql.test.ts",
"scope": "code",
"bytes": 5339,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/tools/destructive-sql.ts",
"scope": "code",
"bytes": 4809,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/tools/development-tools.ts",
"scope": "code",
"bytes": 3492,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/tools/docs-tools.ts",
"scope": "code",
"bytes": 1589,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/tools/edge-function-tools.ts",
"scope": "code",
"bytes": 4523,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/tools/notebook-tools.ts",
"scope": "code",
"bytes": 2749,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/tools/secret-tools.ts",
"scope": "code",
"bytes": 7883,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/tools/storage-tools.ts",
"scope": "code",
"bytes": 3230,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/tools/tool-schemas.test.ts",
"scope": "code",
"bytes": 8927,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/tools/tool-schemas.ts",
"scope": "code",
"bytes": 9168,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/tools/util.test.ts",
"scope": "code",
"bytes": 4106,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/tools/util.ts",
"scope": "code",
"bytes": 3377,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/transports/http.test.ts",
"scope": "code",
"bytes": 5467,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/transports/http.ts",
"scope": "code",
"bytes": 489,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/transports/local-http-entry.test.ts",
"scope": "code",
"bytes": 31619,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/transports/local-http-entry.ts",
"scope": "code",
"bytes": 8079,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/transports/util.test.ts",
"scope": "code",
"bytes": 1335,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/transports/util.ts",
"scope": "code",
"bytes": 350,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/types.test.ts",
"scope": "code",
"bytes": 1072,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/types.ts",
"scope": "code",
"bytes": 922,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/util.test.ts",
"scope": "code",
"bytes": 2775,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/src/util.ts",
"scope": "code",
"bytes": 2860,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/test/e2e/functions.e2e.ts",
"scope": "code",
"bytes": 3976,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/test/e2e/projects.e2e.ts",
"scope": "code",
"bytes": 3252,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/test/e2e/prompt-injection.e2e.ts",
"scope": "code",
"bytes": 3883,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/test/e2e/setup.ts",
"scope": "code",
"bytes": 506,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/test/e2e/utils.ts",
"scope": "code",
"bytes": 2145,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/test/extensions.ts",
"scope": "code",
"bytes": 1611,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/test/mocks.ts",
"scope": "code",
"bytes": 43687,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/test/observation-test-helpers.ts",
"scope": "code",
"bytes": 7523,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/test/plugins/text-loader.ts",
"scope": "code",
"bytes": 400,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/test/server-harness.ts",
"scope": "code",
"bytes": 9368,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/test/stdio.integration.ts",
"scope": "code",
"bytes": 11471,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/tsconfig.json",
"scope": "data",
"bytes": 92,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/mcp-server-supabase/tsup.config.ts",
"scope": "code",
"bytes": 378,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/vitest.config.ts",
"scope": "code",
"bytes": 485,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/vitest.setup.ts",
"scope": "code",
"bytes": 203,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-server-supabase/vitest.workspace.ts",
"scope": "code",
"bytes": 538,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-utils/package.json",
"scope": "data",
"bytes": 1151,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/mcp-utils/src/index.ts",
"scope": "code",
"bytes": 270,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-utils/src/observation-test-helpers.ts",
"scope": "code",
"bytes": 2387,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-utils/src/observation.ts",
"scope": "code",
"bytes": 3012,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-utils/src/server-observation.test.ts",
"scope": "code",
"bytes": 13571,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-utils/src/server.test.ts",
"scope": "code",
"bytes": 10191,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-utils/src/server.ts",
"scope": "code",
"bytes": 19526,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-utils/src/stream-transport.ts",
"scope": "code",
"bytes": 2077,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-utils/src/types.ts",
"scope": "code",
"bytes": 493,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-utils/src/util.test.ts",
"scope": "code",
"bytes": 2018,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-utils/src/util.ts",
"scope": "code",
"bytes": 1972,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "packages/mcp-utils/tsconfig.json",
"scope": "data",
"bytes": 99,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "packages/mcp-utils/tsup.config.ts",
"scope": "code",
"bytes": 233,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "pnpm-lock.yaml",
"scope": "data",
"bytes": 113667,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "pnpm-workspace.yaml",
"scope": "data",
"bytes": 357,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "release-please-config.json",
"scope": "data",
"bytes": 1095,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "scripts/dev-http.mjs",
"scope": "code",
"bytes": 908,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "scripts/fixtures/packed-platform-consumer/cjs-check.cjs",
"scope": "code",
"bytes": 549,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "scripts/fixtures/packed-platform-consumer/modern-call.mjs",
"scope": "code",
"bytes": 7767,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "scripts/fixtures/packed-platform-consumer/tsconfig.json",
"scope": "data",
"bytes": 291,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-002"
]
},
{
"path": "scripts/fixtures/packed-platform-consumer/types-check.ts",
"scope": "code",
"bytes": 5757,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
},
{
"path": "scripts/test-packed-platform-consumer.mjs",
"scope": "code",
"bytes": 7633,
"nonEmpty": true,
"ruleIds": [
"AT-SEC-001",
"AT-SEC-002",
"AT-SEC-003",
"AT-SEC-004",
"AT-SEC-005",
"AT-SEC-006",
"AT-SEC-007",
"AT-COMP-001"
]
}
],
"unsupportedSourceFiles": [
".github/CODEOWNERS",
"packages/mcp-server-supabase/scripts/registry/login.sh",
"packages/mcp-server-supabase/src/pg-meta/columns.sql",
"packages/mcp-server-supabase/src/pg-meta/extensions.sql",
"packages/mcp-server-supabase/src/pg-meta/tables.sql",
"supabase/migrations/20241220232417_todos.sql",
"supabase/migrations/20250109000000_add_todo_policies.sql",
"supabase/seed.sql"
],
"excludedFiles": [
{
"path": ".git",
"reason": "ignored-directory"
},
{
"path": "CLAUDE.md",
"reason": "non-regular-file"
},
{
"path": ".github/CODEOWNERS",
"reason": "unsupported-implementation"
},
{
"path": ".github/PULL_REQUEST_TEMPLATE.md",
"reason": "outside-rule-scope"
},
{
"path": ".gitignore",
"reason": "outside-rule-scope"
},
{
"path": "AGENTS.md",
"reason": "outside-rule-scope"
},
{
"path": "CONTRIBUTING.md",
"reason": "outside-rule-scope"
},
{
"path": "LICENSE",
"reason": "outside-rule-scope"
},
{
"path": "README.md",
"reason": "outside-rule-scope"
},
{
"path": "docs/production.md",
"reason": "outside-rule-scope"
},
{
"path": "mise.lock",
"reason": "outside-rule-scope"
},
{
"path": "mise.toml",
"reason": "outside-rule-scope"
},
{
"path": "packages/mcp-server-postgrest/CHANGELOG.md",
"reason": "outside-rule-scope"
},
{
"path": "packages/mcp-server-postgrest/README.md",
"reason": "outside-rule-scope"
},
{
"path": "packages/mcp-server-supabase/.gitignore",
"reason": "outside-rule-scope"
},
{
"path": "packages/mcp-server-supabase/CHANGELOG.md",
"reason": "outside-rule-scope"
},
{
"path": "packages/mcp-server-supabase/scripts/registry/login.sh",
"reason": "unsupported-implementation"
},
{
"path": "packages/mcp-server-supabase/src/pg-meta/columns.sql",
"reason": "unsupported-implementation"
},
{
"path": "packages/mcp-server-supabase/src/pg-meta/extensions.sql",
"reason": "unsupported-implementation"
},
{
"path": "packages/mcp-server-supabase/src/pg-meta/tables.sql",
"reason": "unsupported-implementation"
},
{
"path": "packages/mcp-server-supabase/src/types/sql.d.ts",
"reason": "type-declaration"
},
{
"path": "packages/mcp-server-supabase/test/extensions.d.ts",
"reason": "type-declaration"
},
{
"path": "packages/mcp-utils/CHANGELOG.md",
"reason": "outside-rule-scope"
},
{
"path": "packages/mcp-utils/README.md",
"reason": "outside-rule-scope"
},
{
"path": "supabase/config.toml",
"reason": "outside-rule-scope"
},
{
"path": "supabase/migrations/20241220232417_todos.sql",
"reason": "unsupported-implementation"
},
{
"path": "supabase/migrations/20250109000000_add_todo_policies.sql",
"reason": "unsupported-implementation"
},
{
"path": "supabase/seed.sql",
"reason": "unsupported-implementation"
}
],
"readErrors": [],
"truncation": [],
"limits": {
"maxFiles": 4000,
"maxDepth": 12,
"maxFileBytes": 1048576
}
}Fix first (3 critical/high)
| Severity | Rule | Finding | Remediation |
|---|---|---|---|
| CRITICAL | AT-SEC-003 (ASI02) | Unbounded Dynamic Shell Executionscripts/dev-http.mjs:10Evidence: const child = spawn(cmd, args, { cwd, stdio: 'inherit' }); | Strictly restrict shell execution to an immutable allowlist of binary commands with explicit argument arrays, or execute inside microVM sandboxes. |
| HIGH | AT-SEC-006 (LLM06) | Unfiltered SSRF / Arbitrary Network Egresspackages/mcp-server-postgrest/src/server.ts:90Evidence: const response = await fetch(url, { | Define an explicit egress domain allowlist and block private IP ranges (127.0.0.1, 10.0.0.0/8, 169.254.169.254). |
| HIGH | AT-SEC-006 (LLM06) | Unfiltered SSRF / Arbitrary Network Egresspackages/mcp-server-supabase/src/content-api/graphql.ts:164Evidence: const response = await fetch(url, { | Define an explicit egress domain allowlist and block private IP ranges (127.0.0.1, 10.0.0.0/8, 169.254.169.254). |
Permissions
Scope: excessive · Shell: enabled · Network egress: yes · File deletion: enabled · Human approval: none
Provenance
License: none detected · Lockfile: yes · Security policy: no · Signals: unverified origin
Independently scanned by the OpenTrustBench registry (not self-reported by the project). Static analysis only — no code executed, findings need human triage, counts may include test/example code. Static snapshot; re-scan before relying on it: npx @opentrustbench/cli scan https://github.com/supabase-community/supabase-mcp. Scores move with every upstream commit; pages refresh weekly. How scoring works.