Run code in a safe sandbox
Run a Python script in a fresh, isolated machine and get its output and any files it creates (charts, cleaned spreadsheets). 1 live · 1 in the catalog.
| Provider | Price | Status |
|---|---|---|
| Run Python in a safe sandbox and get the files back (Smol Machines)Smol Machines | $0.020 / call | Live |
Success rate and speed will show once a provider has 5 real calls in the last 30 days.
Run a comparison
Pick up to 6 live providers. Each one is charged at its own price; failures are free.
Questions
Which Run code in a safe sandbox API is cheapest?
The cheapest is Smol Machines at $0.020 per call. Failed calls are not charged.
How do I call a Run code in a safe sandbox API from an AI agent?
Connect your agent once: paste the message from superpowers.tools/docs into Claude, ChatGPT or Codex. Then ask in your own words, and your agent picks this provider and runs it. You pay only when a call works, and new accounts get $5 free. Developers can call POST /v1/run with "tool": "smol.run-python" or use the MCP server.
For developersAPI call and the shared input and output format
Call it with one API key: POST /v1/run with "tool": "smol.run-python", or through the MCP server. Every provider takes the same input and returns the same output, and failed calls are not charged.
Input
{
"type": "object",
"additionalProperties": false,
"required": [
"code"
],
"properties": {
"code": {
"type": "string",
"minLength": 1,
"maxLength": 100000,
"description": "Python 3.12 code to run. Input files are in /work; write files you want back to /out"
},
"packages": {
"type": "array",
"maxItems": 12,
"items": {
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,60}(\\[[A-Za-z0-9,_-]+\\])?([<>=!~]=?[0-9A-Za-z.*]+)?$"
},
"description": "pip packages to install first, e.g. [\"pandas\",\"matplotlib\"] (turns on internet access for the run)"
},
"files": {
"type": "array",
"maxItems": 5,
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri"
},
"name": {
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,100}$"
}
}
},
"description": "Public files copied to /work/<name> before the code runs (up to 5, 10 MB each)"
},
"internet": {
"type": "boolean",
"default": false,
"description": "Let the code reach the internet (always on when packages are given)"
},
"timeout_seconds": {
"type": "integer",
"minimum": 5,
"maximum": 60,
"default": 45
}
}
}Normalized output
{
"exit_code": 0,
"stdout": "",
"stderr": "",
"files": [
{
"name": "",
"url": "",
"bytes": 0
}
],
"duration_ms": 0
}