FlowSentry scans your n8n workflow exports for unauthenticated webhooks, hardcoded secrets, SSRF, shell injection and 14 more failure modes. 18 rules, zero dependencies, SARIF output, CI-ready.
Drop a workflow export (.json) or paste it. The scanner runs locally via JavaScript: your workflow never leaves this tab.
Real scan of 10 public n8n workflow files pulled from GitHub. Exit code 1 = your CI gate blocks the merge.
pip install flowsentry then flowsentry scan ./workflows --sarif report.sarifWe ran FlowSentry v0.1 on public n8n workflow exports shared on GitHub (shared by their authors for learning/demo purposes — nothing was exploited). Every file had at least one finding.
| Workflow (source) | Critical | Medium | Highlight |
|---|---|---|---|
| WhatsApp AI Bot | 1 | 4 | Webhook with authentication: none, replies echo full internal output |
| Library installer | 2 | 1 | Bash script interpolating {{$json.library}} into a shell command |
| n8n official test workflow #103 | 4 | 2 | echo > /tmp/{{$node["Set"].json["filename"]}} — command injection by design |
| Appointment booking agent | 1 | 9 | Public booking webhook, zero auth, 10 nodes deep into business logic |
| NL→SQL assistant | 1 | 9 | Natural-language-to-SQL behind an unauthenticated webhook |
Pure Python stdlib. No supply-chain risk from the scanner itself. One pip install and you're scanning in 10 seconds.
Exit code 1 on critical/high findings. SARIF 2.1.0 output uploads straight to GitHub Code Scanning — findings appear on your PRs.
Every rule maps to the OWASP Agentic Top 10 (2026) so your compliance story starts on day one.
Reads local JSON exports. No telemetry, no uploads, no accounts. Your workflow data never leaves your machine.
Continuous monitoring for n8n + MCP servers: drift detection, alerting, multi-instance dashboard, self-hosted option. Early bird: $19/mo locked forever for the first 50 teams.
AI agents scan workflows over HTTP and pay $0.50 per scan in USDC on Base via x402. No account, no API key, no session. Humans: use the browser scan above — it's free.
curl https://flowsentry.vercel.app/api/scan
Returns price, network and the machine-readable service manifest.
curl -X POST https://flowsentry.vercel.app/api/scan \ -H "Content-Type: application/json" \ -d '{"workflow": {"nodes": [...], "connections": {...}}}' # → 402 + PAYMENT-REQUIRED header (base64 JSON): # amount 500000 units ($0.50 USDC) · asset 0x8335…2913 (USDC) # network eip155:8453 (Base) · payTo 0xa1b8…a6a8
Any x402 client SDK handles this automatically: x402-axios, @x402/fetch, Python x402.
// Node: paid scan with the official x402 fetch wrapper import { wrapFetchWithPayment } from "@x402/fetch"; import { privateKeyToAccount } from "viem/accounts"; const account = privateKeyToAccount("0x…agent-key…"); const fetchWithPay = await wrapFetchWithPayment(fetch, account); const res = await fetchWithPay( "https://flowsentry.vercel.app/api/scan", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ workflow: myWorkflow }) }); const report = await res.json(); // report.findings_count, report.by_severity, report.findings[] // payment.settlement_tx = onchain proof of the 0.50 USDC payment
Verification is fail-closed: no valid payment, no scan. Settlement happens onchain via the public x402 facilitator.
FlowSentry is listed in the official MCP Registry: io.github.vasilicasijarvis/flowsentry — streamable HTTP at https://flowsentry-agentpay.vercel.app/mcp. Claude, Cursor or any MCP client can call it natively.
Header X-FlowSentry-Demo: 1 returns a full sample scan, free of charge — wire your agent up before spending a cent.
Every paid scan is a settled onchain USDC transfer with a tx hash your agent can audit. Discovered via the x402 protocol and the Coinbase Bazaar catalog.
What changed, broke and got exposed across public MCP/x402 servers this week. Free weekly email + JSON/RSS feeds on a0flow.com.
The raw security state of live MCP servers, published daily as responsible disclosure. Custom per-server reports from 100 USDC on hurtfultruth.com.