sandbox_run_code
Run a snippet of Python/Node/Bash inline (no need to write a file first). Output captured. Default lang=python. NOTE: each call runs a FRESH process (python3 -c / node -e / bash -c) — there is NO persistent kernel, so variables do NOT survive between calls. Put dependent lines in a single call, o...
This record as markdown: /tools/cloud-easybits-easybits/sandbox-run-code.md
What sandbox_run_code does on EasyBits
AI agents invoke sandbox_run_code to trigger actions in EasyBits. 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 sandbox_run_code is rated High
Executes arbitrary code with root privileges, internet access, and external visibility; highest blast radius for agent misuse.
From the tool's definition Run Python/Node/Bash inline, root, internet access, public URL
Attacks that exploit this kind of access
The rule that runs sandbox_run_code safely
PolicyLayer is an MCP gateway: it sits between your AI agents and EasyBits, and checks every tool call against a rule you set before the call runs. Nothing changes on the server itself. For sandbox_run_code, this is the rule to start with:
sandbox_run_code 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 EasyBits, apply this rule, and every sandbox_run_code call is checked against it from then on.
Questions about sandbox_run_code
Run a snippet of Python/Node/Bash inline (no need to write a file first). Output captured. Default lang=python. NOTE: each call runs a FRESH process (python3 -c / node -e / bash -c) — there is NO persistent kernel, so variables do NOT survive between calls. Put dependent lines in a single call, or persist state to a file with sandbox_files_write. For stateful Python across cells (and matplotlib charts), use sandbox_run_cell on a. It is categorised as a Execute tool in the EasyBits MCP Server, which means it can trigger actions or run processes. Use rate limits and argument validation.
Register the EasyBits MCP server in PolicyLayer and add a rule for sandbox_run_code: 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 EasyBits. Nothing to install.
sandbox_run_code 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 sandbox_run_code 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 sandbox_run_code. 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.
sandbox_run_code is provided by the EasyBits MCP server (@easybits.cloud/mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
More on EasyBits, and thousands of servers like it.
Across the catalogue