Most security tools run after the fact: you write the code, you commit it, and a scanner tells you weeks later what you broke. IOnclad's AI Co-Pilot flips that. It plugs into the AI assistant you already use through MCP, so the assistant can scan code the moment it is drafted, before it ever hits your disk. It is opt-in, off by default, and your code never leaves your machine. The Co-Pilot is part of IOnclad Pro.
MCP (Model Context Protocol) is the standard way an AI assistant talks to outside tools. IOnclad ships an MCP server, so any MCP client (Claude Desktop, Claude Code, Cursor, Cline, and others) can call IOnclad's scanner directly during a coding session. The assistant gets a small set of tools it can reach for at the right moment.
The point of all this is timing. The same rule packs IOnclad runs in the desktop app run inside your editor loop, so the unsafe pattern gets flagged at the keystroke, not at the postmortem.
A finding caught while the AI is still drafting costs a sentence to fix. The same finding caught after launch costs an incident. Here is where the Co-Pilot earns its keep:
When the assistant is about to write code, it can pass that code to check_snippet. No file is written, the analysis is in-memory, and IOnclad runs the same scanner set against it that a full project scan uses. So the AI sees "this draft has a problem" and rewrites it before the bad version ever lands in your repo. That is the whole game: stop the mistake at the source instead of hunting it down later.
Before writing anything security-sensitive (a Stripe webhook, a file upload, JWT auth, an OpenAI call) the assistant can ask safety_guidance for the cluster of rules that apply and a correct-by-construction template. The AI writes the safe shape on the first pass instead of needing a cleanup round. It also surfaces the launch obligations that feature creates, so they are scaffolded early.
When IOnclad does flag something, the assistant can call explain_finding to pull the exact code window and the rule rationale, propose a concrete fix, and then call rescan_file after you apply it to confirm the finding actually cleared. IOnclad never edits your files. The AI proposes, you apply, IOnclad verifies.
Wiring a scanner into an AI assistant raises an obvious question: what leaves your machine, and what does the model get to see? IOnclad draws that line hard, and it is worth being precise about it.
The Co-Pilot is off by default. It does nothing until you flip the toggle in IOnclad Settings. There is a master kill switch: when it is off, every MCP tool refuses to process anything, in either direction. And the tools that change state (suppressing a finding, writing a fix plan) need their own separate opt-in, so you can grant read-only help without granting write access.
Concretely, the flow inside your editor reads like this:
# You ask your assistant to add a Stripe webhook handler. # Before writing, it asks IOnclad what to watch for: safety_guidance(intent: "stripe webhook") // returns the rule cluster + a safe template # It drafts the handler, then checks the draft in memory: check_snippet(language: "typescript", code: "<the draft>") // FW70: webhook signature not verified ← caught before disk # It rewrites with signature verification, you apply it, # then it confirms the fix landed: rescan_file(file: "src/webhooks/stripe.ts") // Clean. No findings. Fix verified.
The Co-Pilot is built around the assumption that an AI model is reading every response, so the scanner guards the boundary on purpose:
IOnclad finds known patterns and common misconfigurations. It is a fast second set of eyes inside your editor, not a guarantee or a full pentest.
Scan your code and full git history in under a minute. Free verdict, no signup, nothing leaves your machine.