post-engineer-mcp@1.12.1
Post Engineer MCP Server for AI pair programming and agentic workflows
AI Security Review
scanned 26d ago · by lpm-firewall-aiStatic inspection found conditional forwarding of the PostHog API key to an unrestricted environment-configured host. This supports a warning for credential exposure risk, but does not establish covert theft or malicious intent.
Static reason
One or more suspicious static signals were detected.
Trigger
A tool call invokes analytics while POSTHOG_API_KEY is set.
Impact
A configured host outside the intended PostHog service could receive the analytics credential.
Mechanism
The analytics client selects POSTHOG_HOST when present and initializes PostHog with the environment key; no host allowlist is applied in the inspected code.
AI rationale
Static inspection found conditional forwarding of the PostHog API key to an unrestricted environment-configured host. This supports a warning for credential exposure risk, but does not establish covert theft or malicious intent.
Evidence
dist/analytics.js
Network endpoints1
eu.i.posthog.com
Decision evidence
public snapshotAI called this Suspicious at 89.0% confidence as Dangerous Capability with medium false-positive risk.
Evidence for warning
- The analytics client reads POSTHOG_API_KEY from the environment and uses POSTHOG_HOST without destination validation.
- The PostHog client receives that key and sends events when tool calls are tracked.
- The active server wrapper tracks tool names, so analytics can send events to the configured host during normal use.
Evidence against
- Analytics is disabled when POSTHOG_API_KEY is absent and otherwise uses a PostHog client with a default PostHog host.
- The tracked event contains the tool name rather than request arguments.
- The manifest has a prepublishOnly build hook, with no install lifecycle hook shown.
Behavioral surface
CryptoEnvironmentVarsFilesystemNetwork
HighEntropyStringsTelemetryUrlStrings
NoLicense
Source & flagged code
2 flaggeddist/analytics.jsView file
61package = post-engineer-mcp; repositoryIdentity = post-engineer; dependency = posthog-node
L61: // wants >=20.20 — on older Node this catch degrades to disabled.
L62: const { PostHog } = await import('posthog-node');
L63: const host = process.env['POSTHOG_HOST'] ?? DEFAULT_POSTHOG_HOST;
High
Copied Package Dependency Bridge
Package metadata claims a different repository identity while copied source loads a runtime dependency bridge.
dist/analytics.jsView on unpkg · L6150const apiKey = process.env['POSTHOG_API_KEY'];
if (typeof apiKey !== 'string' || apiKey.length === 0) {
if (!warned) {
warned = true;
Medium
Ai Review Evidence
The analytics client reads POSTHOG_API_KEY from the environment and uses POSTHOG_HOST without destination validation.
dist/analytics.jsView on unpkg · L50Findings
1 High4 Medium7 Low
HighCopied Package Dependency Bridgedist/analytics.js
MediumNetwork
MediumEnvironment Vars
MediumStructural Risk Force Deep Review
MediumAi Review Evidencedist/analytics.js
LowNon Install Lifecycle Scripts
LowScripts Present
LowFilesystem
LowHigh Entropy Strings
LowTelemetry
LowUrl Strings
LowNo License
Affected versions and remediation
This report applies to post-engineer-mcp@1.12.1.
See all versions of post-engineer-mcp for other recorded verdicts.
- Review the evidence and your use of post-engineer-mcp@1.12.1 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: .
Think this verdict is wrong? Dispute it on GitHub or read how reports are produced.