Testing from the Tool Editor
The Tool Editor includes a built-in Test Panel for running your tool against a live sandbox.Enter Test Input
In the Test Panel (bottom section of the editor), type or paste a JSON object that matches the tool’s input schema. For example:
Run the Tool
Click the Run button or press
Cmd/Ctrl + Enter. The tool will execute in a sandbox with the ToolSet’s configured language, packages, and environment variables.Testing from the editor uses the current draft code, not the published version. This lets you iterate quickly before publishing.
Test Execution Flow
When you click Run, the following happens behind the scenes:- The console sends the draft code and input JSON to the API’s
/testendpoint. - The API spins up a sandbox instance using the ToolSet’s configured provider (E2B or Daytona).
- Packages defined in the ToolSet are installed in the sandbox.
- Environment variables are injected into the sandbox process.
- The code is executed with the provided input.
- The sandbox captures the return value, stdout, stderr, and any errors.
- Results are sent back to the console and displayed in the Test Panel.
Run History
Every tool execution — whether triggered from the editor, the REST API, or an MCP call — produces a Run record. The Run History page provides a centralized view of all executions within your organization.Browsing Runs
Navigate to Runs in the organization sidebar to see the execution history. The runs list displays:| Column | Description |
|---|---|
| Tool | The slug of the tool that was executed |
| Status | Current state: success, failed, running, or pending |
| Duration | Execution time in milliseconds |
| Date | When the run was created |
Status Indicators
Each run has a status that reflects where it is in the execution lifecycle:Pending
The run has been created but the sandbox has not started execution yet.
Running
The tool is currently executing inside the sandbox.
Success
The tool completed successfully and returned an output.
Failed
The tool encountered an error during execution.
Run Detail Page
Click any run in the list to open its detail page. The detail view shows: Summary Card A four-column summary at the top showing Duration, Created, Started, and Completed timestamps. Tabbed Data View- Input — The JSON input that was sent to the tool.
- Output / Error — On success, the JSON output returned by the tool. On failure, the error name and message.
- Logs — Captured
stdoutandstderrfrom the sandbox process. This tab only appears when logs are present.
Caller vs. Provider View
Runs have two perspectives:- Caller view — When your organization executed a tool (whether your own or another organization’s public tool), you see full details: input, output, error, and logs.
- Provider view — When another organization executed one of your public tools, you can see the run’s status and metadata but not the input, output, or logs. This protects the caller’s data privacy.
Execution via API
Beyond the console, tools can be executed programmatically:REST API
POST /v1/orgs/:orgId/toolsets/:slug/tools/:toolSlug/run — Execute a published tool version via the API. Requires an API key with execute scope.MCP Endpoint
POST /v1/orgs/:orgId/toolsets/:slug/mcp — Call tools through the Model Context Protocol. AI agents can discover and invoke tools via the standard MCP JSON-RPC interface.Public Execution
POST /v1/public/:orgSlug/:toolsetSlug/run/:toolSlug — Execute a public tool using any organization’s API key.SDK
Use the
@jinba-toolbox/sdk to execute tools from your TypeScript application with a simple function call.Execution Lifecycle
The complete lifecycle of a tool run:Sandbox Creation
A sandbox instance is created using the configured provider (E2B or Daytona) with the ToolSet’s language, packages, and environment variables.
Running
The tool’s code is executed inside the sandbox with the validated input. The status changes to
running.Best Practices
- Test with varied inputs — Cover edge cases (empty strings, large numbers, missing optional fields) in the Test Panel before publishing.
- Check logs for debugging — When a tool fails, the
stderrlogs often contain stack traces and error details that pinpoint the issue. - Monitor run history — Regularly review the Runs page to spot patterns in failures or unexpected durations.
- Use the Copilot after failures — After a failed test run, the AI Copilot has access to the error output and can suggest fixes.
Jinba Toolbox