Why this verdict
- inconclusive: gap dynamic_metadata at src/index.ts
- inconclusive: gap no_dataflow_for_dynamic_code at run_tests.sh
Security findings 0
No individual findings recorded
The inconclusive verdict rests on the open questions and coverage gaps below; 1 candidate finding was refuted on review.
Open questions 1
What the analysis could not settle from the code alone.
The embedded SWRPI series is presented as official BFS data but looks smoothly interpolated, and cannot be verified here. Is it genuine or fabricated? This is a data-integrity question, not an exfiltration or credential concern.
Manipulation
Refuted findings 1
Candidates the review stage examined and rejected, kept for transparency.
Supply chain
mediumRefutedlow confidenceInstall docs tell the user or agent to add an MCP server entry to ~/.cursor/mcp.json that runs the unpinned npm package via `npx -y mcp-swiss`, so each launch fetches and executes whatever version is currently published.
"args": ["-y", "mcp-swiss"]
Why it was refuted
This is a standard install doc for the artifact's own MCP server package, run via npx from the official npm registry. That matches the pinned/official-registry install carve-out. The package is the declared server itself (mcp-swiss), so there is no concealed or contradicting behavior, and the ~/.cursor/mcp.json reference is just the normal MCP client config path.
Coverage gaps 2
Parts of the artifact the static analysis could not fully examine.
dynamic_metadata line 196: tools list returned by ListToolsRequestSchema handler is computed
src/index.ts
no_dataflow_for_dynamic_code line 22: invoked code is not structurally extracted
run_tests.sh