Skip to main content
Glama

microsandbox

by microsandbox
README.md2.43 kB
# Microsandbox Python SDK A Python SDK for interacting with Microsandbox environments. ## Installation ```bash # Install from PyPI pip install microsandbox # Or install from source git clone https://github.com/microsandbox/microsandbox.git cd microsandbox/sdk/python pip install -e . ``` ## Usage ### Running Code ```python import asyncio from microsandbox import PythonSandbox async def main(): # Using the context manager (automatically starts and stops the sandbox) async with PythonSandbox.create() as sandbox: # Run code in the sandbox await sandbox.run("name = 'Python'") execution = await sandbox.run("print(f'Hello {name}!')") # Get the output output = await execution.output() print(output) # prints Hello Python! # Run the async main function asyncio.run(main()) ``` ### Executing Shell Commands ```python import asyncio from microsandbox import PythonSandbox async def main(): async with PythonSandbox.create() as sandbox: # Execute a command with arguments execution = await sandbox.command.run("echo", ["Hello", "World"]) # Get the command output print(await execution.output()) # prints "Hello World" # Check the exit code and success status print(f"Exit code: {execution.exit_code}") print(f"Success: {execution.success}") # Handle command errors error_cmd = await sandbox.command.run("ls", ["/nonexistent"]) print(await error_cmd.error()) # prints error message # Specify a timeout (in seconds) try: await sandbox.command.run("sleep", ["10"], timeout=2) except RuntimeError as e: print(f"Command timed out: {e}") asyncio.run(main()) ``` ## Requirements - Python 3.8+ - Running Microsandbox server (default: http://127.0.0.1:5555) - API key (if authentication is enabled on the server) ## Environment Variables - `MSB_API_KEY`: Optional API key for authentication with the Microsandbox server - `MSB_SERVER_URL`: URL for the Microsandbox server (default: http://127.0.0.1:5555) ## Examples Check out the [examples directory](./examples) for sample scripts that demonstrate how to: - Create and use sandboxes - Run code in sandbox environments - Execute shell commands in the sandbox - Handle execution output and error handling ## License [Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0)

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/microsandbox/microsandbox'

If you have feedback or need assistance with the MCP directory API, please join our Discord server