@modelcontextprotocol/inspector
Supply chain provenance
Status for the latest visible version.
Maintainers
Accepted risks
Findings the reviewer chose to accept rather than block on.
| Source | Rule | Reason | Accepted by | When |
|---|---|---|---|---|
| semgrep | semgrep:shady-links-raw-ip | AI (semgrep): 127.0.0.1 localhost startup log, not exfil. | ai | |
| phantom-deps | phantom-dep:zod | AI (phantom-deps): Config-referenced dep in monorepo; stable FP. | ai | |
| phantom-deps | phantom-dep:ts-node | AI (phantom-deps): Config-referenced dev tool; stable FP. | ai | |
| phantom-deps | phantom-dep:concurrently | AI (phantom-deps): Used in scripts, not imported; stable FP. | ai | |
| semgrep | semgrep:env-spread | AI (semgrep): Passes env into locally spawned server child; standard launcher behavior, no exfil destination. | ai | |
| phantom-deps | phantom-dep:@modelcontextprotocol/inspector-client | AI (phantom-deps): Own-org workspace sibling; stable FP. | ai | |
| phantom-deps | phantom-dep:@modelcontextprotocol/inspector-server | AI (phantom-deps): Own-org workspace sibling; stable FP. | ai | |
| phantom-deps | phantom-dep:@modelcontextprotocol/inspector-cli | AI (phantom-deps): Own-org workspace sibling; stable FP. | ai |
Versions (showing 15 of 15)
| Version | Deps | Published |
|---|---|---|
| 1.0.0 | 11 / 11 | |
| 0.22.0 | 11 / 11 | |
| 0.21.2 | 11 / 11 | |
| 0.21.1 | 11 / 11 | |
| 0.21.0 | 11 / 11 | |
| 0.20.0 | 11 / 11 | |
| 0.19.0 | 11 / 11 | |
| 0.18.0 | 11 / 11 | |
| 0.17.5 | 11 / 11 | |
| 0.17.2 | 11 / 11 | |
| 0.17.1 | 11 / 10 | |
| 0.17.0 | 11 / 10 | |
| 0.16.8 | 11 / 10 | |
| 0.16.7 | 10 / 10 | |
| 0.16.6 | 10 / 10 |
v1.0.0
5 findingsSpreading entire process.env into an object — may capture all secrets Source: https://github.com/modelcontextprotocol/inspector/blob/ac3c1a122a5e072a200c99869fc0cd8bfa660ece/client/bin/start.js#L46 44 | const spawnOptions = { 45 | cwd: resolve(__dirname, "../..", "server"), > 46 | env: { 47 | ...process.env, 48 | SERVER_PORT,
Spreading entire process.env into an object — may capture all secrets Source: https://github.com/modelcontextprotocol/inspector/blob/ac3c1a122a5e072a200c99869fc0cd8bfa660ece/client/bin/start.js#L115 113 | ], 114 | { > 115 | env: { 116 | ...process.env, 117 | SERVER_PORT,
Spreading entire process.env into an object — may capture all secrets Source: https://github.com/modelcontextprotocol/inspector/blob/ac3c1a122a5e072a200c99869fc0cd8bfa660ece/client/bin/start.js#L149 147 | const spawnOptions = { 148 | cwd: resolve(__dirname, ".."), > 149 | env: { ...process.env, CLIENT_PORT }, 150 | signal: abort.signal, 151 | echoOutput: true,
Spreading entire process.env into an object — may capture all secrets Source: https://github.com/modelcontextprotocol/inspector/blob/ac3c1a122a5e072a200c99869fc0cd8bfa660ece/client/bin/start.js#L216 214 | 215 | await spawnPromise("node", [inspectorClientPath], { > 216 | env: { 217 | ...process.env, 218 | CLIENT_PORT,
Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.