@awesomate/hosting-mcp 0.39.0 → 0.40.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
@@ -41138,6 +41138,7 @@ var TITLES = {
41138
41138
  awesomate_wp_post: "Manage WordPress posts",
41139
41139
  awesomate_wp_media_import: "Import media to WordPress",
41140
41140
  awesomate_wp_settings: "Change WordPress settings",
41141
+ awesomate_elementor_mcp_connect: "Connect Elementor MCP",
41141
41142
  awesomate_app_create: "Create app",
41142
41143
  awesomate_app_get: "Get app details",
41143
41144
  awesomate_app_scaffold: "Get app scaffold guide",
@@ -41774,6 +41775,23 @@ server.registerTool(
41774
41775
  }
41775
41776
  }
41776
41777
  );
41778
+ server.registerTool(
41779
+ "awesomate_elementor_mcp_connect",
41780
+ {
41781
+ annotations: annotate("awesomate_elementor_mcp_connect", DESTRUCTIVE),
41782
+ description: "Connect this Claude Code to Elementor's OWN MCP server on one of the user's WordPress sites, so pages can be built as native, editable Elementor structure instead of raw HTML. Use it when a site uses Elementor (hello-elementor theme or the elementor plugin) and the user wants pages built or edited. One call does what the Elementor > Elementor MCP page does: installs or updates Elementor to 4.3+, turns on the Editor V4 (Atomic) experiments, enables MCP access, and mints a WordPress application password for the user's own administrator. The response carries `claudeCodeCommand` (a `claude mcp add --transport http \u2026` line) and `mcpServersConfig` (the mcp-remote JSON shape): run the command for the user, or write the config, then tell them to restart Claude Code; the Elementor tools then appear as a separate MCP server. The application password is shown ONCE and Awesomate does not keep it: never paste it into chat or a file other than the MCP config, and tell the user it is revocable under Users > Profile > Application Passwords. Support Plus+ (403 upgrade_required on Essentials: an Essentials owner does the same in wp-admin under Elementor > Elementor MCP). The Elementor MCP builds Editor V4 Atomic pages only, and Pro elements need an Elementor Pro plan on the site. Snapshot first with awesomate_snapshot_site if this is the session's first change to a live site.",
41783
+ inputSchema: {
41784
+ domain: external_exports.string().min(3).max(253).describe("The site domain, e.g. mybusiness.awesomate.site")
41785
+ }
41786
+ },
41787
+ async ({ domain }) => {
41788
+ try {
41789
+ return textResult(await hubPost(requireConfig(), `/api/client-hosting/sites/${encodeURIComponent(domain.toLowerCase())}/elementor-mcp`, {}));
41790
+ } catch (err) {
41791
+ return errorResult(err);
41792
+ }
41793
+ }
41794
+ );
41777
41795
  server.registerTool(
41778
41796
  "awesomate_uninstall_site",
41779
41797
  {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@awesomate/hosting-mcp",
3
- "version": "0.39.0",
3
+ "version": "0.40.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",
@@ -104,8 +104,41 @@ not a failed build. Confirm over plain HTTP, say the certificate is still
104
104
  issuing, and poll until HTTPS answers. Never delete and recreate the site or
105
105
  start debugging DNS on the strength of it.
106
106
 
107
- New sites come up on the host's default theme (`hello-elementor`). A fresh
108
- install is not evidence that a custom theme shipped.
107
+ New sites on Support Plus, Pro and Embedded come up with free Elementor and
108
+ the Hello Elementor theme (plus Jetpack, Yoast, Site Kit, Contact Form 7,
109
+ WP Super Cache and Limit Login Attempts); an Essentials account installs
110
+ WordPress from the hub's Install WordPress card, which adds the same
111
+ Elementor and theme. A fresh install is not evidence that a custom theme
112
+ shipped.
113
+
114
+ ## Elementor sites: connect Elementor's own MCP
115
+
116
+ Elementor 4.3+ ships its own MCP server, served from the site itself. When a
117
+ site uses Elementor (the `hello-elementor` theme or the `elementor` plugin
118
+ is active) and the user wants pages built or changed, connect it BEFORE
119
+ hand-writing page HTML: pages then land as native, editable Elementor
120
+ structure the owner can keep working on in the Elementor editor.
121
+
122
+ 1. Snapshot the site if this is the session's first change to it.
123
+ 2. Call `awesomate_elementor_mcp_connect` with the domain (Support Plus+).
124
+ It installs or updates Elementor, turns on the Editor V4 experiments,
125
+ enables MCP access and mints a WordPress application password for the
126
+ user's own administrator.
127
+ 3. Run the returned `claudeCodeCommand` for the user (it is a
128
+ `claude mcp add --transport http …` line), or write `mcpServersConfig`
129
+ into the project's `.mcp.json` if they prefer. Then ask them to restart
130
+ Claude Code; the Elementor tools appear as their own MCP server.
131
+ 4. Say plainly where the key lives and how to revoke it: Users > Profile >
132
+ Application Passwords in wp-admin, or Elementor > Elementor MCP > Turn
133
+ off MCP access for the whole thing. Never repeat the password in chat.
134
+
135
+ What to expect once connected: it builds **Editor V4 (Atomic) pages and
136
+ layouts only**. Classic Elementor pages (most migrated sites) stay editable
137
+ in the Elementor editor but not through the MCP. Forms, popups, loops,
138
+ headers and footers need an Elementor Pro plan on that site; the hub does
139
+ not supply one. On Essentials the tool returns 403 `upgrade_required`; the
140
+ owner can do the identical thing in wp-admin under Elementor > Elementor
141
+ MCP, so say that rather than stopping.
109
142
 
110
143
  ## 0a. Tool map — reach for it when
111
144
 
@@ -130,6 +163,7 @@ install is not evidence that a custom theme shipped.
130
163
  | `awesomate_site_staging_create` / `_promote` / `_discard` | Private full copy on awesomate.dev to review changes; publish or throw away (§5a) |
131
164
  | `awesomate_run_wp_cli` | The 10 allowlisted WP-CLI verbs only (see below) — plugin/theme list, activate, install-by-slug, update; `cache flush`; `option get`; `post`/`media`/`menu`/`comment`/`user list` |
132
165
  | `awesomate_wp_settings` | Site title, tagline, timezone, date/time format, posts-per-page, search-engine visibility — THE path for any multi-word value, and it flushes the cache (Support Plus+) |
166
+ | `awesomate_elementor_mcp_connect` | A site uses Elementor and pages need building or editing: connects this Claude Code to Elementor's own MCP server on that site (see **Elementor sites** above). Mints an application password; Support Plus+ |
133
167
  | `awesomate_wp_post` | Create/update/read a WP post or page — drafts by default (writes are Support Plus+) |
134
168
  | `awesomate_wp_media_import` | Pull an image/file into the WP media library from an https URL (Support Plus+) |
135
169
  | `awesomate_uninstall_site` | Remove a WordPress install (destructive — confirm explicitly) |
@@ -205,7 +239,7 @@ Support Plus/Pro unlocks (§4), and link the hub billing page.
205
239
  On Essentials, a PAT is read-and-advise: `awesomate_site_create`,
206
240
  `awesomate_domain_add` and every WordPress write (`awesomate_wp_post`,
207
241
  `awesomate_wp_media_import`, `awesomate_wp_settings`,
208
- `awesomate_run_wp_cli`) return **403 `upgrade_required`** — the server
242
+ `awesomate_run_wp_cli`, `awesomate_elementor_mcp_connect`) return **403 `upgrade_required`** — the server
209
243
  enforces it, so no phrasing gets past it. That site and that domain are
210
244
  real; they are created and changed **in the hub UI at
211
245
  hub.awesomate.ai/sites**, by the user, with deliberate clicks. Say exactly