@awesomate/hosting-mcp 0.58.0 → 0.59.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -41286,7 +41286,7 @@ server.registerTool(
41286
41286
  "awesomate_n8n_deploy",
41287
41287
  {
41288
41288
  annotations: annotate("awesomate_n8n_deploy", DESTRUCTIVE),
41289
- description: "Workflow lifecycle writes on the client's n8n, all consent-gated and audited server-side. Actions: 'validate' (structural + n8n-mcp check of workflowJson \u2014 ALWAYS validate before create_draft), 'create_draft' (creates an INACTIVE '[CLI] ' workflow tagged awm:client-cli; returns its webhook URLs), 'activate'/'deactivate' (activation strips the [CLI] prefix; production webhooks respond only while active; agency-managed workflows are refused), 'promote' (swaps a TESTED draft into the live workflow IN PLACE \u2014 live id + webhookIds preserved so external callers keep working; pass workflowId=the LIVE id and draftId=the tested draft; the draft is archived '[promoted <date>]'; response includes operationId for rollback), 'rollback' (restore a promote's pre-swap state \u2014 pass operationId), 'update_draft' (replace an INACTIVE self-built draft's full JSON in place \u2014 pass workflowId + workflowJson; live workflows are refused, use the promote path), 'delete_draft' (inactive self-built drafts only). Get explicit user approval before activate, promote, rollback, and delete_draft. 429 quota_exceeded = daily plan limit; 403 consent_required \u2192 send user to settingsUrl; 409 n8n_credential_invalid = the user's OWN n8n rejected the stored API key (NOT a hub outage \u2014 reads and validate keep working because they never touch their instance): tell them to create a new API key in their n8n under Settings \u2192 n8n API, paste it into their Awesomate account at hub.awesomate.ai/n8n/settings, then retry.",
41289
+ description: "Workflow lifecycle writes on the client's n8n, all consent-gated and audited server-side. Actions: 'validate' (structural + n8n-mcp check of workflowJson; ALWAYS validate before create_draft), 'create_draft' (creates an INACTIVE '[CLI] ' workflow tagged awm:client-cli; returns its webhook URLs), 'activate'/'deactivate' (activation strips the [CLI] prefix; production webhooks respond only while active; one Awesomate built may be switched on or off, and the reply says built_by_us so you can tell the client what it does first, but every other write to it is refused with agency_managed; switching on a workflow installed from the library with an empty or missing credential answers 409 setup_incomplete with the list, so walk the client through filling it first), 'promote' (swaps a TESTED draft into the live workflow IN PLACE: live id + webhookIds preserved so external callers keep working; pass workflowId=the LIVE id and draftId=the tested draft; the draft is archived '[promoted <date>]'; response includes operationId for rollback), 'rollback' (restore a promote's pre-swap state; pass operationId), 'update_draft' (replace an INACTIVE self-built draft's full JSON in place; pass workflowId + workflowJson; live workflows are refused, use the promote path), 'delete_draft' (inactive self-built drafts only). Get explicit user approval before activate, promote, rollback, and delete_draft. 429 quota_exceeded = daily plan limit; 403 consent_required \u2192 send user to settingsUrl; 409 n8n_credential_invalid = the user's OWN n8n rejected the stored API key (NOT a hub outage: reads and validate keep working because they never touch their instance): tell them to create a new API key in their n8n under Settings \u2192 n8n API, paste it into their Awesomate account at hub.awesomate.ai/n8n/settings, then retry.",
41290
41290
  inputSchema: {
41291
41291
  action: external_exports.enum(["validate", "create_draft", "update_draft", "activate", "deactivate", "promote", "rollback", "delete_draft"]),
41292
41292
  workflowJson: external_exports.record(external_exports.unknown()).optional().describe("For validate: the full workflow JSON. For create_draft: must contain name, nodes, connections (settings optional)."),
@@ -41413,7 +41413,7 @@ server.registerTool(
41413
41413
  "awesomate_n8n_library",
41414
41414
  {
41415
41415
  annotations: annotate("awesomate_n8n_library", MUTATING),
41416
- description: "The Awesomate template library for THIS account: ready-made n8n automations and AI agents that Awesomate curates, including bundles linked to the account's referrer (e.g. Business Blueprint members see Dale Beaumont's bundles). Actions: 'list' (every bundle the account may see, each with installed, plan_ok and credentials_missing; every plan), 'detail' (slug: the templates in the bundle, what each does, the credential types it needs and whether the account already has each; every plan), 'install_plan' (slug: runs the pre-install checks WITHOUT writing and returns ready | paused | blocked; paused carries a help card per missing credential with where to get it, the exact page on their n8n to create it and our help article; Support Plus+), 'install' (slug: installs; refused unless the plan is ready, or every missing OPTIONAL credential is named in proceed_without and every ambiguous one has a choice in credential_choices; Support Plus+), 'redeem' (token: installs what a redeem token unlocks; Support Plus+). Then: 'installs' (what is on the instance, grouped by bundle), 'activate' (slug; switches the bundle's workflows on behind the same credential gate the hub uses: a workflow with an empty or missing credential answers setup_incomplete with the exact list; pass active:false to switch off), 'test' (slug; runs each template's test recipe and returns passed | failed | untested with the execution id; real side effects DO run, warn the client), 'rollback' (slug; removes what YOUR most recent install of this bundle created, never anything reused). Workflows land INACTIVE on install; activate is a separate, confirmed step. A 403 whose missingScopes contains n8n:deploy means the plan is Essentials: show the catalog, say installing needs Support Plus, and stop. Never create a credential for the client; send them to create_url and re-run install_plan afterwards.",
41416
+ description: "The Awesomate template library for THIS account: ready-made n8n automations and AI agents that Awesomate curates, including bundles linked to the account's referrer (e.g. Business Blueprint members see Dale Beaumont's bundles). Actions: 'list' (every bundle the account may see, each with installed, plan_ok and credentials_missing; every plan), 'detail' (slug: the templates in the bundle, what each does, the credential types it needs and whether the account already has each; every plan), 'install_plan' (slug: runs the pre-install checks WITHOUT writing and returns ready | paused | blocked; paused carries a help card per missing credential with where to get it, the exact page on their n8n to create it and our help article; Support Plus+), 'install' (slug: installs; refused unless the plan is ready, or every missing OPTIONAL credential is named in proceed_without and every ambiguous one has a choice in credential_choices; Support Plus+), 'redeem' (token: installs what a redeem token unlocks; Support Plus+). Then: 'installs' (what is on the instance, grouped by bundle), 'activate' (slug; switches the bundle's workflows on behind the same credential gate the hub uses: a workflow with an empty or missing credential answers setup_incomplete with the exact list; pass active:false to switch off; this includes workflows Awesomate installed, marked built_by_us), 'test' (slug; runs each template's test recipe and returns passed | failed | untested with the execution id; real side effects DO run, warn the client), 'rollback' (slug; removes what YOUR most recent install of this bundle created, never anything reused). Workflows land INACTIVE on install; activate is a separate, confirmed step. A 403 whose missingScopes contains n8n:deploy means the plan is Essentials: show the catalog, say installing needs Support Plus, and stop. Never create a credential for the client; send them to create_url and re-run install_plan afterwards.",
41417
41417
  inputSchema: {
41418
41418
  action: external_exports.enum(["list", "detail", "install_plan", "install", "redeem", "installs", "activate", "test", "rollback"]),
41419
41419
  slug: external_exports.string().optional().describe("Bundle slug from list (detail, install_plan, install)"),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@awesomate/hosting-mcp",
3
- "version": "0.58.0",
3
+ "version": "0.59.0",
4
4
  "description": "Awesomate MCP server — lets Claude manage your Awesomate WordPress hosting, plan, limits, n8n automations, and build Node/static apps + databases",
5
5
  "license": "UNLICENSED",
6
6
  "type": "module",
@@ -1,5 +1,11 @@
1
1
  {
2
2
  "versions": [
3
+ {
4
+ "version": "0.59.0",
5
+ "highlights": [
6
+ "Claude can switch an automation Awesomate built for you off and on again when you ask, and says what it does first. Changing, deleting or rolling one back still goes through our support team"
7
+ ]
8
+ },
3
9
  {
4
10
  "version": "0.58.0",
5
11
  "highlights": [
@@ -256,7 +256,8 @@ terms with the exact fix. Trust `errorSummary` only on `confident: true`
256
256
  (§0a). While you're there, check whether the workflow has an error plan at
257
257
  all — [error-handling.md](references/error-handling.md). Self-built workflows: fix via update_draft or the
258
258
  upgrade loop. Agency-managed (`agency_managed` error): read and explain
259
- freely; changes go through Awesomate support.
259
+ freely, and switch it off or on if the user asks (say what it does first);
260
+ any other change goes through Awesomate support.
260
261
 
261
262
  ## 6. "What could I automate?"
262
263
 
@@ -87,10 +87,12 @@ rebuilt (a rebuilt instance shows 0 workflows and invalidates every old key).
87
87
 
88
88
  ## When to STOP and hand off
89
89
 
90
- - **`agency_managed` error** — the workflow is managed by Awesomate. Reads
90
+ - **`agency_managed` error**: the workflow is managed by Awesomate. Reads
91
91
  are fine: list it, read executions, run `debug`, and explain the failure to
92
- the user freely. Do NOT attempt any change (`deploy`, `test`, datatable
93
- writes) — changes to agency-managed workflows go through Awesomate support.
92
+ the user freely. Switching it off or on is allowed when the user asks (the
93
+ reply carries `built_by_us`; tell them what stops while it's off). Do NOT
94
+ attempt any other change (`update_draft`, `promote`, `rollback`, `test`,
95
+ datatable writes): those go through Awesomate support.
94
96
  Summarize your diagnosis so the user can paste it into their ticket.
95
97
  - `403 consent_required` the user declines to enable — diagnose from the
96
98
  execution summary only; say plainly what deeper access would show.
@@ -23,7 +23,7 @@ workflow, a draft mid-iteration, or a workflow the user built in the n8n UI.
23
23
  | Iterating on an INACTIVE draft (not yet promoted/activated) | `update_draft` in place — no new workflow ids |
24
24
  | Changing a LIVE self-built workflow | Duplicate → draft loop → promote (steps below) |
25
25
  | Changing a workflow built in the n8n UI (no `awm:client-cli` tag) | Duplicate into a CLI draft; coordinated URL cutover |
26
- | Agency-managed workflow (`agency_managed` 403) | Read/explain only; changes go through Awesomate support |
26
+ | Agency-managed workflow (`agency_managed` 403) | Read/explain; may be switched off or on when the user asks; other changes go through Awesomate support |
27
27
 
28
28
  ## Iterating on a draft: `update_draft`
29
29
 
@@ -94,5 +94,5 @@ Promote refuses these. Instead:
94
94
  |---|---|---|
95
95
  | 409 `workflow_active` | `update_draft` on a live workflow | Promote path, never deactivate-to-edit |
96
96
  | 403 `not_self_built` | No `awm:client-cli` tag | UI-built duplication path |
97
- | 403 `agency_managed` | Awesomate-deployed workflow | Explain only; route to support |
97
+ | 403 `agency_managed` | Awesomate-deployed workflow | Explain; offer to switch it off or on if that is what they want; route changes to support |
98
98
  | 429 `quota_exceeded` | Daily plan cap | Tell the user; never retry-loop |