AI Security Review
scanned 7d ago · by lpm-firewall-aiNo confirmed malicious attack surface. Runtime network access is package-aligned for a ColdIQ MCP server and requires user configuration/API key.
Static reason
High-risk behavior combination matched malicious policy.
Trigger
User runs the coldiq-mcp bin or an MCP client invokes registered tools.
Impact
Expected B2B data/search/enrichment operations; no install-time persistence, exfiltration, or foreign agent-control mutation found.
Mechanism
MCP tool server forwarding user-requested actions to ColdIQ API and optional ColdIQ skills URLs
Rationale
Static inspection shows an MCP server for ColdIQ tools with package-aligned API calls and user-invoked skill loading, not lifecycle hijacking or covert data theft. The scanner's critical test finding is explained by test-only fetch mocking, not production behavior.
Evidence
package.jsonsrc/index.tssrc/client.tssrc/skills.tssrc/executor.tssrc/verb-client.tssrc/tools/load-skill.tssrc/tools/list-skills.tstests/skills.test.tsREADME.md
Network endpoints2
api.coldiq.comraw.githubusercontent.com/Cold-IQ/coldiq-marketplace-skills/main/.well-known/agent-skills/index.json
Decision evidence
public snapshotAI called this Clean at 93.0% confidence as Benign with low false-positive risk.
Evidence for block
Evidence against
- package.json has no install/postinstall/preinstall hooks; only prepublishOnly build script
- src/index.ts only starts an MCP stdio server and registers ColdIQ tools
- src/client.ts sends requests to configured ColdIQ API with COLDIQ_API_KEY; no credential harvesting beyond required auth header
- src/skills.ts fetches a ColdIQ skills index/body only when list_skill/load_skill tools are invoked
- rg found no source writes to .mcp.json, Claude/Codex/Cursor settings, shell startup files, or VCS hooks
- tests/skills.test.ts mutates global fetch only inside Vitest mocks, explaining scanner tampering noise
Behavioral surface
EnvironmentVarsFilesystemNetwork
HighEntropyStringsUrlStrings
NoLicense
Source & flagged code
1 flagged · loading sourcetests/skills.test.ts#virtual:normalized:round1View file
44afterEach(() => {
L45: globalThis.fetch = originalFetch
L46: vi.restoreAllMocks()
...
L49: it('listSkills returns name + description from the index', async () => {
L50: globalThis.fetch = mockFetch({
L51: 'https://raw.githubusercontent.com/Cold-IQ/coldiq-marketplace-skills/main/.well-known/agent-skills/index.json': {
L52: body: JSON.stringify(INDEX),
L53: },
Critical
Builtin Api Tampering Exfiltration
Source mutates builtin networking, serialization, module-loading, or filesystem APIs while forwarding data to an external endpoint.
tests/skills.test.ts#virtual:normalized:round1View on unpkg · L44Findings
1 Critical2 Medium6 Low
CriticalBuiltin Api Tampering Exfiltrationtests/skills.test.ts#virtual:normalized:round1
MediumNetwork
MediumEnvironment Vars
LowNon Install Lifecycle Scripts
LowScripts Present
LowFilesystem
LowHigh Entropy Strings
LowUrl Strings
LowNo License