Skip to content

Rule Reference

SEC588lintai-ai-securitystablejsonwarn

MCP config: npm exec auto-approve

MCP configuration auto-approves `Bash(npm exec ...)` through `autoApprove`

Provider
lintai-ai-security
Surface
json
Scope
per_file
Tier
stable
Severity
warn
Confidence
high
Detection
structural
Remediation
message_only

Activation Model

Preset Membership

This rule is part of the builtin activation graph through these preset memberships.

Lifecycle

Stable Lifecycle Contract

State

stable_gated

Graduation rationale

Matches exact `Bash(npm exec ...)` auto-approval in MCP client config.

Deterministic signal basis

JsonSignals exact array-item prefix detection for `autoApprove` entries starting with `Bash(npm exec ` on parsed MCP configuration.

Malicious corpus
mcp-autoapprove-mutable-runner-family
Benign corpus
mcp-autoapprove-mutable-runner-family-specific-safe
structured evidence required remediation reviewed
Canonical note

Structural stable rule intended as a high-precision check with deterministic evidence.

Nearby Signals

Related Rules

SEC588 / MCP-AUTOAPPROVE-NPM-EXEC

SEC588 flags MCP configuration when autoApprove includes a Bash(npm exec ...) tool token.

Why It Matters

npm exec enables mutable package execution from the npm ecosystem. Auto-approving it removes review from dynamic package execution.

Trigger Shape

  • the file is a detected MCP configuration surface
  • autoApprove is a string array
  • the array contains an item starting with Bash(npm exec

How To Fix

Remove shared npm exec auto-approval and keep mutable package execution under explicit user review.