- expose scenario file upload, listing, and content retrieval over MCP\n- expose run artifact listing and content retrieval with end-to-end coverage
3.3 KiB
3.3 KiB
MCP tools
The MCP endpoint is exposed at /mcp (Streamable HTTP transport).
The server currently registers the following tools.
Sessions
| Tool | Description |
|---|---|
list_sessions |
List stored sessions (paginated) |
delete_session |
Delete a session by UUID |
Environments
| Tool | Description |
|---|---|
list_environments |
List environments (paginated) |
get_environment |
Get one environment by UUID |
create_environment |
Create environment (name, urls) |
update_environment |
Update environment (id, optional name/urls) |
delete_environment |
Delete environment by UUID |
urls is a free-form key/value map. Common keys: id_url, cabinet_url, admin_url.
Browser (ad-hoc)
| Tool | Description |
|---|---|
open_url |
Open URL with optional sessionName, return page/title/content |
exec_code |
Execute Playwright JS — script receives a single context argument (see scenario.md). Optional environmentId (UUID) resolves environment from DB for context.getEnv(). Optional credentials ({ alias: credentialUUID }) resolves credentials from DB for context.getCredential(alias). |
Scenarios
| Tool | Description |
|---|---|
list_scenarios |
List scenarios (paginated) |
get_scenario |
Get scenario with steps |
create_scenario |
Create scenario by name |
update_scenario |
Rename scenario |
delete_scenario |
Delete scenario |
create_scenario_step |
Add step to scenario |
get_scenario_step |
Get one step |
update_scenario_step |
Update step fields |
delete_scenario_step |
Delete step |
list_scenario_runs |
List runs for a scenario |
run_scenario |
Trigger run for scenario |
get_scenario_run |
Get run with step runs and logs |
wait_for_scenario_run |
Wait until run is pass or fail |
export_scenario |
Export scenario payload |
import_scenario |
Import scenario payload |
Scenario Files
| Tool | Description |
|---|---|
upload_scenario_file |
Upload a file to a scenario; accepts optional expiresAt (ISO 8601 date string) |
list_scenario_files |
List scenario files (paginated) |
get_scenario_file_content |
Retrieve file content as base64 with metadata |
Run Artifact Files
| Tool | Description |
|---|---|
list_run_files |
List files (artifacts) created during a scenario run (paginated) |
get_run_file_content |
Retrieve run artifact content as base64 with metadata; run artifacts are read-only and inherit expiry from the run artifact subsystem |
Binary Content Handling
File tools transport binary payloads as base64-encoded strings in a contentBase64 field with an accompanying encoding: "base64" marker in the response. When retrieving file content via get_scenario_file_content or get_run_file_content, decode the base64 to recover the original bytes.
Scenario files uploaded via upload_scenario_file must have their content pre-encoded as base64. Run artifacts are created implicitly through scenario execution (via context.downloadFile() during step execution) and cannot be uploaded via MCP.
Notes
- Tool IDs and entity IDs are UUIDs.
create_scenario_stepschema still accepts legacytype/sessionNamefields for compatibility. Current scheduler executesexecCodeplus optionalvalidateCodeand does not branch by step type.