Automation Platform tools

37 MCP tools backed by the Automation Platform endpoints.

These 37 tools call the same endpoints as the Automation Platform section of the API Reference. Each tool runs with the permissions of the Whippy user who authorized the connection and the OAuth scopes they granted.

The Behavior column comes from the MCP tool annotations Whippy publishes. Treat these labels as hints, not guarantees: they may omit external effects (for example, a Write tool can send a message to a recipient), and clients are not required to ask for confirmation before running a tool.

Apps

ToolBehaviorEndpointWhat it does
create_workflow_app_connectionWritePOST /v1/workflow-apps/{app_id}/connectionsCreates a credential connection for a workflow app. May require authorize_workflow_connection afterward.
get_workflow_app_action_input_optionsRead-onlyPOST /v1/workflow-apps/{id}/actions/{action_key}/input-optionsFetches dynamic dropdown options for a workflow app action input field (credentials required). Use when configuring step inputs that need remote option lists.
list_workflow_app_connectionsRead-onlyGET /v1/workflow-apps/{app_id}/connectionsLists credential connections for a specific workflow app.
list_workflow_appsRead-onlyGET /v1/workflow-appsLists workflow builder apps (triggers + create actions from the published app version).
show_workflow_appRead-onlyGET /v1/workflow-apps/{id}Returns one workflow app by ID with triggers, create actions, branding, and published version. Resolve the ID with list_workflow_apps.

Connections

ToolBehaviorEndpointWhat it does
authorize_workflow_connectionRead-onlyPOST /v1/workflow-connections/{id}/authorizeReturns a short-lived Whippy URL the user must open in a browser to finish OAuth or API-key entry. This call does not complete authorization. Show the user that URL and do not ask them to paste secrets into the chat. After they finish in the browser, call test_workflow_connection.
delete_workflow_connectionDestructive (idempotent)DELETE /v1/workflow-connections/{id}Deletes a workflow credential connection.
list_workflow_connectionsRead-onlyGET /v1/workflow-connectionsLists workflow credential connections across apps for the organization.
show_workflow_connectionRead-onlyGET /v1/workflow-connections/{id}Returns one workflow connection by ID.
test_workflow_connectionDestructivePOST /v1/workflow-connections/{id}/testTests whether a workflow connection's credentials work.

Sequence Runs

ToolBehaviorEndpointWhat it does
list_sequence_runsRead-onlyGET /v1/sequences/{id}/sequence_runsLists sequence run records (execution progress for enrollments). Prefer list_sequence_contacts for a simple enrollment roster.
show_sequence_runRead-onlyGET /v1/sequences/{sequence_id}/sequence_runs/{sequence_run_id}Returns one sequence run by ID.

Sequences

ToolBehaviorEndpointWhat it does
add_contacts_to_sequenceDestructivePOST /v1/sequences/{id}/contactsEnrolls existing contacts into a sequence from a Whippy Query filter. Does not create contacts.
list_sequence_contactsRead-onlyGET /v1/sequences/{id}/contactsLists contacts enrolled in a sequence, filterable by status/step. Requires a sequence ID. For one contact across sequences, use list_contact_sequences.
list_sequencesRead-onlyGET /v1/sequencesLists multi-step sequence (drip) definitions for the organization.
remove_contacts_from_all_sequencesDestructivePOST /v1/sequences/contacts/removeRemoves the given contacts from every sequence they are enrolled in.
remove_sequence_contactsDestructivePOST /v1/sequences/{id}/contacts/removeRemoves specific contacts from one sequence. For removing from every sequence, use remove_contacts_from_all_sequences.
show_sequenceRead-onlyGET /v1/sequences/{id}Returns one sequence by ID (steps and settings). Resolve the ID with list_sequences first.
show_sequence_step_contactRead-onlyGET /v1/sequences/{sequence_id}/step_contacts/{id}Returns one contact's state on a specific sequence step.

Step Types

ToolBehaviorEndpointWhat it does
list_workflow_step_typesRead-onlyGET /v1/workflow-step-typesList selectable workflow step types (summary by default with input_field_names and has_dynamic_fields). Use detail=full with id or ids (comma-separated, max 10) for schemas. Prefer one ids batch over repeated full lookups. Requires workflows:read.

Steps

ToolBehaviorEndpointWhat it does
create_workflow_stepWritePOST /v1/workflows/{id}/stepsCreate one draft workflow step without a full-graph sync. First call list_workflow_step_types (summary) for a step_template, then detail=full&id=... for schemas if needed. Copy step_template.data: keep identity fields such as subtype, app_id, app_version_id, and credential_id at the top level of data, and put operation fields inside data.operation.perform (create that operation map when the template omits it). For example, a schedule uses data.operation.perform.cron and data.operation.perform.timezone.
create_workflow_stepsWritePOST /v1/workflows/{id}/steps/batchAppend-only batch create of draft steps in one call. Prefer for building a full graph: pass steps[] with previous_step_alias/parent_step_alias (resolved in order). Never deletes existing steps. Optional include=steps returns the full draft list. Requires workflows:update.
delete_workflow_stepDestructive (idempotent)DELETE /v1/workflows/{id}/steps/{step_id}Delete one draft workflow step and relink successors. Delete nested children first. Requires workflows:update. Returns 409 on stale draft concurrency.
list_workflow_stepsRead-onlyGET /v1/workflows/{id}/stepsLists steps on the workflow draft (or specified version). Prefer this to see aliases/IDs before update_workflow_step or test_workflow_step.
test_workflow_stepDestructivePOST /v1/workflows/{id}/steps/{step_id}/testRuns one draft workflow step with sample input and returns status, output, errors, and console logs.
update_workflow_stepDestructivePATCH /v1/workflows/{id}/steps/{step_id}Partially updates one step on the workflow draft (input mapping, credential, action config via data, plus optional name, metadata, and samples). Deep-merges data and metadata into the existing step. Keep template identity fields such as subtype, app_id, app_version_id, and credential_id at the top level of data; put operation fields inside data.operation.perform.

Workflow Runs

ToolBehaviorEndpointWhat it does
batch_retry_workflow_runsDestructivePOST /v1/workflow-runs/batch-retryRetries multiple failed workflow runs in one request.
list_workflow_runsRead-onlyGET /v1/workflow-runsLists workflow execution runs (success/failure, searchable across step I/O and errors).
show_workflow_runRead-onlyGET /v1/workflow-runs/{id}Returns one workflow run by ID including per-step execution details.

Workflows

ToolBehaviorEndpointWhat it does
create_workflowWritePOST /v1/workflowsCreates a new workflow in draft state. Next: add steps with create_workflow_steps, test_workflow_step, then publish_workflow.
list_workflow_versionsRead-onlyGET /v1/workflows/{id}/versionsLists published/historical versions of a workflow.
list_workflowsRead-onlyGET /v1/workflowsLists workflows (automations) for the organization with search, state, and pagination.
publish_workflowDestructivePOST /v1/workflows/{id}/publishPublishes the workflow draft after steps are configured and tested. Full config completeness is validated here.
show_workflowRead-onlyGET /v1/workflows/{id}Returns one workflow by ID including draft and current version step summaries. Resolve the ID with list_workflows.
show_workflow_versionRead-onlyGET /v1/workflows/{id}/versions/{version_id}Returns one workflow version by ID including its step graph.
unpublish_workflowDestructivePOST /v1/workflows/{id}/unpublishUnpublishes a live workflow so it stops running new events.
update_workflowDestructive (idempotent)PUT /v1/workflows/{id}Updates workflow-level metadata (name, etc.). Step graph changes use create/update/delete_workflow_step.

Did this page help you?