An MCP (Model Context Protocol) server exposes tools to an agent. A malicious or careless server definition can poison the agent through tool descriptions, shell out, or run without authentication. The scan command inspects MCP server definition JSON for these patterns, using the same static scanner that checks source code.

Running it

Point scan at an MCP definition, a directory, or a registry file. The scanner recognizes both a single server object and the mcpServers registry shape that MCP clients ship.

The rules

The tool-poisoning rule (BTSC-012) is two-tier: a directive phrase such as “ignore previous instructions” is flagged on its own, while ordinary documentation words like “you should” are flagged only when the same description also names a secret path or an external endpoint. Well-documented servers do not light up.

Reading the output

Each finding carries a real file and line, so the SARIF export resolves to source in the GitHub Security tab:
scan exits non-zero when it finds critical or high issues, so it works as a CI gate.