# MCP tools ## Auth / session | Tool | Description | |---|---| | `list_keys` | List available key IDs from `KEYS_DIR` | | `login` | Log in with a key against an environment; stores resulting session | | `list_sessions` | Paginated list of saved sessions | | `delete_session` | Delete a session by ID | ## Environments | Tool | Description | |---|---| | `list_environments` | Paginated list of environments | | `get_environment` | Get one environment by ID | | `create_environment` | Create an environment (`name` + `urls` map) | | `update_environment` | Update name / urls | | `delete_environment` | Delete by ID | `urls` is a free-form map. Recognised keys: `id_url` (auth server), `cabinet_url` (cabinet redirect target), `admin_url`. ## Browser (ad-hoc, stateless) | Tool | Description | |---|---| | `open_url` | Navigate to a URL and return page content / reader-mode text | | `exec_code` | Run Playwright JS in a session's browser context | ## Scenarios | Tool | Description | |---|---| | `list_scenarios` | Paginated list | | `get_scenario` | Fetch scenario with all steps | | `create_scenario` | Create a new scenario by name | | `update_scenario` | Rename | | `delete_scenario` | Delete (cascades to steps and runs) | | `create_scenario_step` | Add a step | | `get_scenario_step` | Fetch one step | | `update_scenario_step` | Update step fields | | `delete_scenario_step` | Remove a step | | `list_scenario_runs` | Paginated run history (with optional status filter) | | `run_scenario` | Trigger an immediate run | | `get_scenario_run` | Get a run with all step runs and their outputs | | `wait_for_scenario_run` | Block until run reaches `pass`/`fail`, return full run | | `export_scenario` | Export scenario as a portable JSON payload | | `import_scenario` | Import a scenario from an export payload |