Loading npm security reports…
mcp-agents-memory@0.9.25: Clean npm security report (Allow) | LPM Firewall
Allowed — no malicious behavior detected
No malicious behavior detected. 41 low-signal pattern(s) reviewed.
AI Security Reviewscanned 1mo ago · by lpm-firewall-ai The scanner's critical claims are not supported by the inspected execution paths: dynamic compilation and embedded WebAssembly are bundled library behavior, and setup does not persist a credential redirection. Session capture and optional service authentication align with the implemented memory functionality.
Static reason
High-risk behavior combination matched malicious policy.
Trigger
Users launch the MCP server or explicitly request migration; Typesafe classification additionally requires JEV_ENABLED=true.
Impact
These operations support the package's memory functionality; inspected source does not establish remote payload execution, credential theft, or agent control hijacking.
Mechanism
Session text enters memory storage, migrations update the configured database, and optional classification authenticates to the credential's intended service.
AI rationale
The scanner's critical claims are not supported by the inspected execution paths: dynamic compilation and embedded WebAssembly are bundled library behavior, and setup does not persist a credential redirection. Session capture and optional service authentication align with the implemented memory functionality.
Network endpoints1
api.typesafe.ai /v1/systemone
Decision evidencepublic snapshot AI called this Clean at 93.0% confidence as Benign with low false-positive risk.
Evidence for AI clean decision
package.json has no registry install hooks or runtime self-dependency; prepare does nothing. The flagged migration adds librarian tracking columns through transactional database queries; its child process references belong to bundled SSH support. The indicated Claude projects location supplies session transcripts to memory storage, without changing agent configuration. Dynamic function construction compiles locally generated AJV validators; the asset loader uses embedded WebAssembly bytes. Typesafe classification requires JEV_ENABLED=true and sends a Typesafe credential to https://api.typesafe.ai/v1/systemone. The explicit setup command prints instructions and exits without writing configuration or redirecting credentials. Behavioral surface
Source ChildProcess Crypto EnvironmentVars Eval Filesystem Network
Supply chain HighEntropyStrings UrlStrings
Source & flagged code33 flagged build/migrations/023_librarian_gate.js View file 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Critical Secret
Package contains a critical-looking secret pattern.
build/migrations/023_librarian_gate.js View on unpkg · L9195 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/023_librarian_gate.js
build/migrations/023_librarian_gate.js View on unpkg · L9195 12898 var { readFile } = __require("fs");
L12899: var { execFile, spawn } = __require("child_process");
L12900: var { isParsedKey, parseKey } = require_keyParser();
High Child Process
Package source references child process execution.
build/migrations/023_librarian_gate.js View on unpkg · L12898
Findings30 Critical 3 High 3 Medium 5 Low
Critical Critical Secret build/migrations/023_librarian_gate.js
Critical Remote Asset Decode Execute build/index.js
Critical Remote Response Code Execution build/index.js
Critical Trigger Reachable Dangerous Capability build/index.js
Critical Secret Pattern build/migrations/023_librarian_gate.js
Critical Secret Pattern build/migrations/025_project_tag_alias_suggestions.js
Critical Secret Pattern build/migrations/014_drop_legacy_facts_constraints.js
Critical Secret Pattern build/migrations/008_schema_realignment.js
Critical Secret Pattern build/migrations/015_agent_provenance.js
Critical Secret Pattern build/migrations/028_raw_message.js
Critical
Affected versions and remediation This report applies to mcp-agents-memory@0.9.25 .
See all versions of mcp-agents-memory for other recorded verdicts.
Review the evidence and your use of mcp-agents-memory@0.9.25 before allowing it. Restrict the permissions described in this report. Choose an independently verified alternative or release. This report does not establish that other versions are safe. Evidence last updated: 2026-10-03 23:47:35.388Z (UTC) .
Think this verdict is wrong? Dispute it on GitHub or read how reports are produced .
93% Clean
AI assessment confidence
Package metadata npm Author TripleA Lab
Maintainers isaacyoon
Version 0.9.25
Latest on npm 0.9.33
Published Oct 3, 2026
License MIT
Dependencies 0
Integrity verified
Package size 4.61 MB
Files 33
Keywords mcp ai memory agents postgresql pgvector claude gemini
Manifest No manifest risk signals triggered.
scanned 27 file(s), 25.1 MB of source, external domains: api.openai.com, api.typesafe.ai, api.x.ai, auth.openai.com, docs.expo.dev, dotenvx.com, generativelanguage.googleapis.com, github.com, help.openai.com, json-schema.org, raw.githubusercontent.com, www.postgresql.org
18116 try {
L18117: return new Function("return 2n ** 32n")();
L18118: } catch {
High Eval
Package source references dynamic code evaluation.
build/migrations/023_librarian_gate.js View on unpkg · L18116 3 import { fileURLToPath as ___fileURLToPath } from 'node:url';
L4: import { dirname as ___dirname } from 'node:path';
L5: var require = ___createRequire(import.meta.url);
...
L357: "use strict";
L358: var bufferFrom = Buffer.from || Buffer;
L359: module.exports = function parseBytea(input) {
...
L777: if (!isUTC) {
L778: result.setTime(result.getTime() + result.getTimezoneOffset() * 6e4);
L779: }
...
L984: try {
L985: user = process.platform === "win32" ? process.env.USERNAME : process.env.USER;
L986: } catch {
Critical Remote Asset Decode Execute
Source fetches a remote non-code asset, decodes its contents, and dynamically executes the decoded payload.
build/index.js View on unpkg · L3 3 import { fileURLToPath as ___fileURLToPath } from 'node:url';
L4: import { dirname as ___dirname } from 'node:path';
L5: var require = ___createRequire(import.meta.url);
...
L357: "use strict";
L358: var bufferFrom = Buffer.from || Buffer;
L359: module.exports = function parseBytea(input) {
...
L777: if (!isUTC) {
L778: result.setTime(result.getTime() + result.getTimezoneOffset() * 6e4);
L779: }
...
L984: try {
L985: user = process.platform === "win32" ? process.env.USERNAME : process.env.USER;
L986: } catch {
Critical Remote Response Code Execution
Source passes code obtained from a remote response into a dynamic execution sink.
build/index.js View on unpkg · L3 • Trigger-reachable chain: scripts.start -> build/index.js
Reachable file contains a blocking source-risk pattern.
Critical Trigger Reachable Dangerous Capability
A package entrypoint or install-time lifecycle script reaches a source file with blocking dangerous behavior.
build/index.js View on unpkg • Manifest-reachable source captures an API credential, sends it to a fixed unofficial gateway, and persists that redirection in agent or shell configuration.
build/index.js:
writeFile(path13, data, options, callback_) {
this.writeFile(path13, data, options, callback);
name.toLowerCase() === "authorization" || name.toLowerCase() === "cookie" || name.toLowerCase() === "set-cookie" ? "***" : value
* **NOTE:** Calling this endpoint requires an [admin API key](../admin-api-keys).
* **NOTE:** This endpoint requires an [admin API key](../admin-api-keys).
* **NOTE:** This endpoint requires an [admin API key](../admin-api-keys).
* **NOTE:** This endpoint requires an [admin API key](../admin-api-keys).
* without leaking your main API key. You can configure a custom TTL for each
High Credential Redirect Persistence
Manifest-reachable source sends a prompted API credential to a fixed unofficial gateway and persists the redirection.
build/index.js View on unpkg build/migrations/025_project_tag_alias_suggestions.js View file 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/025_project_tag_alias_suggestions.js
build/migrations/025_project_tag_alias_suggestions.js View on unpkg · L9195 build/migrations/014_drop_legacy_facts_constraints.js View file 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/014_drop_legacy_facts_constraints.js
build/migrations/014_drop_legacy_facts_constraints.js View on unpkg · L9195 build/migrations/008_schema_realignment.js View file 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/008_schema_realignment.js
build/migrations/008_schema_realignment.js View on unpkg · L9195 build/migrations/015_agent_provenance.js View file 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/015_agent_provenance.js
build/migrations/015_agent_provenance.js View on unpkg · L9195 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/028_raw_message.js
build/migrations/028_raw_message.js View on unpkg · L9195 build/migrations/010_subject_relationships.js View file 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/010_subject_relationships.js
build/migrations/010_subject_relationships.js View on unpkg · L9195 build/migrations/017_drop_trust_weight.js View file 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/017_drop_trust_weight.js
build/migrations/017_drop_trust_weight.js View on unpkg · L9195 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/005_provenance.js
build/migrations/005_provenance.js View on unpkg · L9195 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/027_entry_type.js
build/migrations/027_entry_type.js View on unpkg · L9195 build/migrations/011_memories_metadata.js View file 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/011_memories_metadata.js
build/migrations/011_memories_metadata.js View on unpkg · L9195 build/migrations/018_transcript_queue.js View file 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/018_transcript_queue.js
build/migrations/018_transcript_queue.js View on unpkg · L9195 build/migrations/026_project_alias_promoter_gate.js View file 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/026_project_alias_promoter_gate.js
build/migrations/026_project_alias_promoter_gate.js View on unpkg · L9195 build/migrations/012_memory_sources.js View file 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/012_memory_sources.js
build/migrations/012_memory_sources.js View on unpkg · L9195 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/029_venue.js
build/migrations/029_venue.js View on unpkg · L9195 build/migrations/019_respec_fresh_v1.js View file 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/019_respec_fresh_v1.js
build/migrations/019_respec_fresh_v1.js View on unpkg · L9195 build/migrations/006_canonical_validation.js View file 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/006_canonical_validation.js
build/migrations/006_canonical_validation.js View on unpkg · L9195 build/migrations/013_refresh_models.js View file 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/013_refresh_models.js
build/migrations/013_refresh_models.js View on unpkg · L9195 build/migrations/024_canonical_project_tag_projection.js View file 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/024_canonical_project_tag_projection.js
build/migrations/024_canonical_project_tag_projection.js View on unpkg · L9195 build/migrations/021_agent_model_nullable.js View file 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/021_agent_model_nullable.js
build/migrations/021_agent_model_nullable.js View on unpkg · L9195 build/migrations/030_project_tag_new_suggestions.js View file 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/030_project_tag_new_suggestions.js
build/migrations/030_project_tag_new_suggestions.js View on unpkg · L9195 build/migrations/007_seed_real_models.js View file 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/007_seed_real_models.js
build/migrations/007_seed_real_models.js View on unpkg · L9195 build/migrations/016_agent_curator.js View file 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/016_agent_curator.js
build/migrations/016_agent_curator.js View on unpkg · L9195 build/migrations/009_skills_tables.js View file 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/009_skills_tables.js
build/migrations/009_skills_tables.js View on unpkg · L9195 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/022_device_name.js
build/migrations/022_device_name.js View on unpkg · L9195 build/migrations/020_tag_processed_and_external_uuid.js View file 9195 patternName = private_key_rsa
severity = critical
line = 9195
Critical Secret Pattern
RSA private key in build/migrations/020_tag_processed_and_external_uuid.js
build/migrations/020_tag_processed_and_external_uuid.js View on unpkg · L9195 Secret Pattern
build/migrations/010_subject_relationships.js
Critical Secret Pattern build/migrations/017_drop_trust_weight.js
Critical Secret Pattern build/migrations/005_provenance.js
Critical Secret Pattern build/migrations/027_entry_type.js
Critical Secret Pattern build/migrations/011_memories_metadata.js
Critical Secret Pattern build/migrations/018_transcript_queue.js
Critical Secret Pattern build/migrations/026_project_alias_promoter_gate.js
Critical Secret Pattern build/migrations/012_memory_sources.js
Critical Secret Pattern build/migrations/029_venue.js
Critical Secret Pattern build/migrations/019_respec_fresh_v1.js
Critical Secret Pattern build/migrations/006_canonical_validation.js
Critical Secret Pattern build/migrations/013_refresh_models.js
Critical Secret Pattern build/migrations/024_canonical_project_tag_projection.js
Critical Secret Pattern build/migrations/021_agent_model_nullable.js
Critical Secret Pattern build/migrations/030_project_tag_new_suggestions.js
Critical Secret Pattern build/migrations/007_seed_real_models.js
Critical Secret Pattern build/migrations/016_agent_curator.js
Critical Secret Pattern build/migrations/009_skills_tables.js
Critical Secret Pattern build/migrations/022_device_name.js
Critical Secret Pattern build/migrations/020_tag_processed_and_external_uuid.js
High Child Process build/migrations/023_librarian_gate.js
High Eval build/migrations/023_librarian_gate.js
High Credential Redirect Persistence build/index.js
Medium Structural Risk Force Deep Review
Low Non Install Lifecycle Scripts
package.json
Entrypoints main → build/index.js bin → mcp-agents-memory
Runtime No engine / OS / CPU constraints
Artifact 25.2 MB · 33 files 2 signature(s)
Install lifecycle prepare
Behavioral surface ChildProcess Crypto EnvironmentVars Eval Filesystem Network HighEntropyStrings UrlStrings Manifest: clean