Add or change plugin
set_pluginDestructive
Add a plugin (no plugin_id: kind and settings as list_plugins settings_help; returns snippet_html to paste and deploy, then test: true; paid plans) or change one (plugin_id: name, settings, patch, status active|paused, or recipients {add: email}, an account inbox; inboxes and a booking reply_to_email set by an AI return approve_url).
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| kind | No | Adding: which plugin | |
| name | No | A name for the owner, e.g. "Contact form" | |
| site | Yes | Site name, e.g. brave-otter-4821 | |
| test | No | With plugin_id: send one test submission (never counted or emailed); says whether it worked | |
| forms | No | Typed settings for a forms plugin (adding: implies kind forms; changing: the whole object) | |
| patch | No | Changing: merged onto the settings, e.g. {"approval":"always"}; null removes a key, arrays are replaced | |
| status | No | ||
| settings | No | Shaped as list_plugins settings_help for the kind (booking too); changing: the whole object | |
| plugin_id | No | To change an existing plugin; leave out to add one | |
| recipients | No | ||
| confirm_token | No | From the first call: re-call with it for an approve_url status, or once the user said yes |
Output Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| error | No | On failure (isError): {code, message} | |
| agent_message | No | ||
| confirm_token | No |