Skip to main content
aspex scan reads every MCP client config on the machine, connects to each server (stdio and HTTP/SSE), enumerates tools, resources and prompts, and produces a scored report. Servers are inspected in parallel, so a scan takes about as long as the slowest server.

Reading the output

Per-server findings come first, then the compositions across servers. Each attack path shows the two capabilities, the evidence for both, the path hop by hop, and a fix. This is real output; every server in it is an official, well-behaved package.

The six attack paths

A capability on its own is never a path. One critical path caps the overall score at 39; one high path at 69. Why, and the full severity rules →

Flags

See Policy, baselines and prioritization for how --fail-on, --baseline and .aspex.yaml fit together.

Subcommands

The ones you will reach for most. Each is described in scan subcommands.

hooks

Commands your agent runs automatically, judged

doctor

2-second offline pre-flight

inspect <target>

One server by command string or URL

attack-paths

Capabilities with evidence, and compositions

shadow · phantom

Name collisions; tool lists that change between calls

fix env

Move plaintext credentials to Keychain

Rules

140+ rules across prompt injection, code execution, credential access, exfiltration, persistence, surveillance, supply chain and more. Findings map to OWASP LLM Top 10 2025, MITRE ATLAS and CWE. All rules →
Run aspex scan before adding any new MCP server. aspex mcp lets your agent do this itself: pass a proposed .mcp.json to aspex_security_impact and see the new attack paths before the edit lands.