AI Agents
Tools Reference
All MCP tools exposed by SmoothDeploy, grouped by resource
Every action listed here has mcpTool: true in its definition. The tool name is the action name with . replaced by _ (hyphens are kept as-is). Permissions follow your organization role — see Roles and Permissions.
Actions that are intentionally absent: api-keys.create, webhooks.create, webhooks.rotate-secret (return secrets on creation), and all members.*, invitations.*, organizations.*, profile.* actions (manage people or require direct user consent).
| Tool | Description | Required permission |
|---|
tests_list | List tests (and directories) of the active project and branch, with pagination and filters | tests:read |
tests_get | Get one test with its children, top-level steps and parent directory | tests:read |
tests_create | Create a test or directory | tests:create |
tests_update | Update a test: name, metadata, config, steps, tags, parent | tests:update |
tests_delete | Delete a test, or a directory with all of its descendants when recursive | tests:delete |
tests_delete-preview | Count the tests and directories a delete of the given roots would remove | tests:read |
tests_run | Start a remote run of one test or directory | tests:run |
tests_run-many | Start remote runs for tests (a list of ids, a directory id, or all tests with a tag) | tests:run |
tests_bulk-delete | Delete many tests at once | tests:delete |
tests_bulk-update-status | Set the status of many tests on the active branch | tests:update |
tests_bulk-update-tags | Replace the tag set of many tests | tests:update |
tests_move | Move tests (and directories) into a new parent directory | tests:update |
tests_duplicate | Duplicate a test or directory tree | tests:create |
tests_import | Import tests from a zip archive (base64-encoded) | tests:create |
tests_export | Export tests (by ids, tags, or directory) as a zip returned base64-encoded | tests:read |
tests_get-code | Generate Playwright code for a test | tests:read |
tests_get-files | Get the uploaded input files of a test base64-encoded | tests:read |
| Tool | Description | Required permission |
|---|
steps_list | List a test's steps (nested groups included), for the working revision or a given revision | tests:read |
steps_get | Get one step (by revisionStepId) of a test's working revision, with its children when it is a group | tests:read |
steps_create | Add steps to a test. Inserts at the top level, or inside a group step when parentRevisionStepId is set. Returns the steps of the level that was edited | tests:update |
steps_update | Change one step of a test. Omitted fields stay as they are. Returns the steps of the step's level | tests:update |
steps_delete | Remove steps from a test. A removed group takes its children with it. Returns the steps of the level that was edited | tests:update |
steps_update-children | Replace the children of a group step (create, update, reorder, remove); optional base64 files for upload steps | tests:update |
steps_group | Wrap steps of a test's working revision into a new group step | tests:update |
steps_move | Move steps into a group or to the root when targetGroupId is null | tests:update |
steps_share | Mark a step of a test as shared or unshared | tests:update |
steps_promote-screenshot | Promote a run screenshot to the baseline of a step | tests:update |
| Tool | Description | Required permission |
|---|
shared-steps_list | List shared steps paginated with optional search and ui/api type filter | tests:read |
shared-steps_get | Get a shared step with its latest revision | tests:read |
shared-steps_get-children | List the children of a shared group step | tests:read |
shared-steps_get-usage | List the tests that use a shared step | tests:read |
shared-steps_update | Update a shared step (name, action, metadata, condition); optional base64 files for upload steps | tests:update |
shared-steps_delete | Delete a shared step that no test uses | tests:update |
| Tool | Description | Required permission |
|---|
test-revisions_list | List the saved revisions of a test on the active branch | tests:read |
test-revisions_get | Get one revision of a test with its full step tree | tests:read |
test-revisions_create | Save the working revision of a test as a named revision | tests:update |
| Tool | Description | Required permission |
|---|
test-runs_list | List test runs of the active project with filters and pagination | testRuns:read |
test-runs_get | Get one test run of the active project | testRuns:read |
test-runs_get-results | Parsed Playwright JSON results (test-results.json) of a finished test run | testRuns:read |
test-runs_get-stats | Aggregate pass/fail statistics of test runs in the active project | testRuns:read |
test-runs_get-artifacts | Signed artifact URLs of a test run | testRuns:read |
test-runs_get-screenshots | Step screenshot index and signed URLs of a test run | testRuns:read |
test-runs_get-report | HTML email report of a completed or failed test run | testRuns:read |
test-runs_get-latest | Most recent test run of the active project, optionally for a test or schedule | testRuns:read |
test-runs_list-tests | List the tests executed by a test run | testRuns:read |
test-runs_rerun | Run the tests of a test run again with the same config. Pass testIds to rerun only the failed ones | testRuns:read + tests:run |
test-runs_cancel | Cancel a pending, queued, or running test run | testRuns:read + tests:cancel |
| Tool | Description | Required permission |
|---|
schedules_list | List schedules of the active project | schedules:read |
schedules_get | Get one schedule of the active project | schedules:read |
schedules_create | Create a schedule and its EventBridge schedule | schedules:create |
schedules_update | Update a recurring schedule | schedules:update |
schedules_delete | Delete a schedule and its EventBridge schedule | schedules:delete |
schedules_enable | Enable a schedule | schedules:resume |
schedules_disable | Disable a schedule | schedules:pause |
schedules_trigger | Run a schedule now | schedules:run |
Note: secret values are never returned. secrets_get and secrets_list return name, description, and version only.
| Tool | Description | Required permission |
|---|
secrets_list | List the organization's secrets (names and metadata, never values) | secrets:read |
secrets_get | Get one secret's metadata by id (never the value) | secrets:read |
secrets_create | Create an organization secret (value stored in AWS Secrets Manager) | secrets:create |
secrets_update | Update an organization secret's value and/or description | secrets:update |
secrets_delete | Delete an organization secret | secrets:delete |
| Tool | Description | Required permission |
|---|
webhooks_list | List the organization's webhooks (secrets are never included) | webhooks:read |
webhooks_get | Get one webhook by id (secret is never included) | webhooks:read |
webhooks_update | Update a webhook's url, events, enabled flag, or custom data | webhooks:update |
webhooks_delete | Delete a webhook | webhooks:delete |
webhooks_list-deliveries | List delivery attempts for a webhook | webhooks:read |
webhooks_get-delivery | Get one webhook delivery including its payload | webhooks:read |
webhooks_get-sample-payload | Sample webhook payload for an event type | webhooks:read |
webhooks_retry-delivery | Retry a webhook delivery | webhooks:update |
| Tool | Description | Required permission |
|---|
branches_list | List branches of the active project | branches:read |
branches_get | Get one branch of the active project | branches:read |
branches_create | Create a branch in the active project, optionally copying another branch | branches:create |
branches_update | Rename a branch or make it the default branch | branches:update |
branches_delete | Delete a non-default branch and its unpinned revisions | branches:delete |
| Tool | Description | Required permission |
|---|
projects_list | List SmoothDeploy projects for the authenticated org | projects:read |
projects_get | Get one SmoothDeploy project by id for the authenticated org | projects:read |
projects_create | Create a project and its default main branch | projects:create |
projects_update | Update a project's name, metadata, or status | projects:update |
projects_delete | Delete a project and all its tests and steps | projects:delete |
| Tool | Description | Required permission |
|---|
tags_list | List tags of the organization | tags:read |
tags_list-with-test-count | List tags of the organization with the number of tests carrying each | tags:read |
tags_list-for-test | List the tags attached to one test | tags:read |
tags_get | Get one tag by id | tags:read |
tags_create | Create a tag | tags:create |
tags_update | Update a tag | tags:update |
tags_delete | Delete a tag and the EventBridge schedules that reference it | tags:delete |
| Tool | Description | Required permission |
|---|
config-presets_list | List config presets of the organization | configPresets:read |
config-presets_get | Get one config preset by id | configPresets:read |
config-presets_get-default | Get the default config preset of the organization (null when none) | configPresets:read |
config-presets_create | Create a config preset | configPresets:create |
config-presets_update | Update a config preset | configPresets:update |
config-presets_delete | Delete a config preset | configPresets:delete |
config-presets_set-default | Make a config preset the organization default | configPresets:update |
config-presets_unset-default | Unset the default flag of a config preset | configPresets:update |
| Tool | Description | Required permission |
|---|
email-inboxes_list | List the organization's email inboxes | emailInbox:read |
email-inboxes_get-limits | Email inbox limits (max inboxes, retention) | emailInbox:read |
email-inboxes_create | Create a permanent email inbox | emailInbox:create |
email-inboxes_delete | Delete an email inbox (by id or address) | emailInbox:delete |
email-messages_list | List messages in an email inbox (by id or address) | emailInbox:read |
email-messages_get | Get one message from an email inbox | emailInbox:read |
| Tool | Description | Required permission |
|---|
audit-log_list | List the organization's audit log, newest first | auditLog:read |
| Tool | Description | Required permission |
|---|
api-keys_list | List the organization's API keys (prefix and metadata, never the key itself) | apiKeys:read |
api-keys_update-allowed-ips | Replace an API key's IP allow-list (empty list removes the restriction) | apiKeys:update |
api-keys_delete | Revoke (delete) an API key | apiKeys:delete |