This record as markdown: /tools/spranab-truenas-mcp/pool-scrub.md
What pool_scrub does on Truenas
AI agents invoke pool_scrub to trigger actions in Truenas. What it does depends on the arguments the agent supplies, and its effects often reach beyond the immediate call: builds kicked off, notifications sent, workflows started.
Why pool_scrub is rated High
This tool executes administrative operations on storage pools (start/stop/pause scrub), which are external operations whose effects depend on which pool is targeted and which action is chosen. While not destructive (scrubbing does not delete data), it is Execute because it triggers system processes with non-trivial side effects.
From the tool's definition Tool name 'pool_scrub' with description 'Start, stop, or pause a pool scrub' indicates execution of storage maintenance operations that trigger external system-level actions on ZFS pools.
Attacks that exploit this kind of access
The rule that runs pool_scrub safely
PolicyLayer is an MCP gateway: it sits between your AI agents and Truenas, and checks every tool call against a rule you set before the call runs. Nothing changes on the server itself. For pool_scrub, this is the rule to start with:
pool_scrub stays usable, but rate-capped: a runaway agent can't fire it dozens of times a minute. Everything else on the server is denied unless you say otherwise.
The button opens the PolicyLayer dashboard: create your workspace, connect Truenas, apply this rule, and every pool_scrub call is checked against it from then on.
Questions about pool_scrub
Start, stop, or pause a pool scrub. It is categorised as a Execute tool in the Truenas MCP Server, which means it can trigger actions or run processes. Use rate limits and argument validation.
Register the Truenas MCP server in PolicyLayer and add a rule for pool_scrub: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Truenas. Nothing to install.
pool_scrub is a Execute tool with high risk. Execute tools should be rate-limited and have argument validation enabled.
Yes. Add a rate_limit block to the pool_scrub rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.
Set action: deny in the PolicyLayer policy for pool_scrub. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.
pool_scrub is provided by the Truenas MCP server (spranab/truenas-mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
More on Truenas, and thousands of servers like it.
Across the catalogue