@respira/wordpress-mcp-server 2.0.4 → 2.0.5

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.
Files changed (3) hide show
  1. package/README.md +155 -95
  2. package/dist/server.js +1 -1
  3. package/package.json +15 -4
package/README.md CHANGED
@@ -4,11 +4,11 @@
4
4
  </a>
5
5
  </p>
6
6
 
7
- <h1 align="center">🚀 Respira WordPress MCP Server</h1>
7
+ <h1 align="center">Respira WordPress MCP Server</h1>
8
8
 
9
9
  <p align="center">
10
- <strong>Vibe code your WordPress site with AI.</strong><br>
11
- Connect Cursor, Claude Code, Windsurf, and other AI coding assistants directly to WordPress.
10
+ <strong>The only WordPress MCP with page builder support.</strong><br>
11
+ Edit Divi, Elementor, Bricks + 7 more builders with AI. Duplicate-before-edit safety. SEO analysis. 60+ tools.
12
12
  </p>
13
13
 
14
14
  <p align="center">
@@ -27,17 +27,47 @@
27
27
 
28
28
  ---
29
29
 
30
- ## What is Respira?
30
+ ## Why Respira?
31
31
 
32
- Respira lets you **edit WordPress sites using AI coding assistants** like Cursor, Claude Code, and Windsurf. No SSH access needed. Works with any hosting provider.
32
+ Most WordPress MCP servers only work with Gutenberg. **Respira is the only MCP that supports real page builders** the tools that power 50%+ of WordPress sites.
33
33
 
34
- **Supported Page Builders:**
35
- - Divi • Elementor • Gutenberg • Beaver Builder • Bricks
36
- - Oxygen WPBakery Visual Composer Brizy • Thrive
34
+ ### Feature Comparison
35
+
36
+ | Feature | Respira | mcp-wordpress | wordpress-mcp |
37
+ |---------|---------|---------------|---------------|
38
+ | **Divi Builder** (200+ modules) | ✅ | ❌ | ❌ |
39
+ | **Elementor** (widgets, templates) | ✅ | ❌ | ❌ |
40
+ | **Bricks Builder** | ✅ | ❌ | ❌ |
41
+ | **Oxygen Builder** | ✅ | ❌ | ❌ |
42
+ | **WPBakery / Visual Composer** | ✅ | ❌ | ❌ |
43
+ | **Beaver Builder** | ✅ | ❌ | ❌ |
44
+ | **Thrive Architect** | ✅ | ❌ | ❌ |
45
+ | **Brizy** | ✅ | ❌ | ❌ |
46
+ | Gutenberg (Block Editor) | ✅ | ✅ | ✅ |
47
+ | Duplicate-before-edit safety | ✅ | ❌ | ❌ |
48
+ | SEO analysis tools | ✅ | ❌ | ❌ |
49
+ | Performance / Core Web Vitals | ✅ | ❌ | ❌ |
50
+ | AI Engine Optimization (AEO) | ✅ | ❌ | ❌ |
51
+ | Menu management (full CRUD) | ✅ | ❌ | Limited |
52
+ | Media upload & management | ✅ | ✅ | ✅ |
53
+ | WPML multilingual support | ✅ | ❌ | ❌ |
54
+ | Multi-site switching | ✅ | ❌ | ❌ |
55
+ | Plugin management | ✅ | ❌ | ❌ |
56
+ | **Total tools** | **60+** | ~15 | ~20 |
57
+
58
+ ### What Makes Respira Different
59
+
60
+ 1. **Page Builder Intelligence** — AI understands Divi sections, Elementor widgets, Bricks elements. Not just raw HTML.
61
+
62
+ 2. **Duplicate-Before-Edit Safety** — Respira creates a duplicate before editing any live page. Review changes in WordPress admin before they go live. Your production site is never touched until you approve.
63
+
64
+ 3. **SEO & Performance Analysis** — Built-in tools for comprehensive SEO audits, Core Web Vitals, and AI Engine Optimization (AEO) for ChatGPT/Perplexity visibility.
65
+
66
+ 4. **Module-Level Precision** — Update a specific Divi module or Elementor widget by its admin label or path, without touching the rest of the page.
37
67
 
38
68
  ---
39
69
 
40
- ## 🎬 Quick Start (2 Minutes)
70
+ ## Quick Start (2 Minutes)
41
71
 
42
72
  ### Step 1: Install the WordPress Plugin
43
73
 
@@ -49,7 +79,7 @@ Respira lets you **edit WordPress sites using AI coding assistants** like Cursor
49
79
  ### Step 2: Configure Your AI Assistant
50
80
 
51
81
  <details>
52
- <summary><b>📱 Cursor</b></summary>
82
+ <summary><b>Cursor</b></summary>
53
83
 
54
84
  Create or edit `.cursor/mcp.json` in your project:
55
85
 
@@ -67,7 +97,7 @@ Create or edit `.cursor/mcp.json` in your project:
67
97
  </details>
68
98
 
69
99
  <details>
70
- <summary><b>🤖 Claude Code</b></summary>
100
+ <summary><b>Claude Code</b></summary>
71
101
 
72
102
  Add to your Claude Code config (`~/.claude.json` or project settings):
73
103
 
@@ -85,7 +115,7 @@ Add to your Claude Code config (`~/.claude.json` or project settings):
85
115
  </details>
86
116
 
87
117
  <details>
88
- <summary><b>🌊 Windsurf</b></summary>
118
+ <summary><b>Windsurf</b></summary>
89
119
 
90
120
  Add to your Windsurf MCP configuration:
91
121
 
@@ -103,7 +133,7 @@ Add to your Windsurf MCP configuration:
103
133
  </details>
104
134
 
105
135
  <details>
106
- <summary><b>🖥️ Claude Desktop</b></summary>
136
+ <summary><b>Claude Desktop</b></summary>
107
137
 
108
138
  Add to `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) or `%APPDATA%\Claude\claude_desktop_config.json` (Windows):
109
139
 
@@ -138,71 +168,70 @@ Create `~/.respira/config.json`:
138
168
  }
139
169
  ```
140
170
 
141
- **That's it!** Restart your AI assistant and start vibe coding! 🎉
171
+ **That's it!** Restart your AI assistant and start editing.
142
172
 
143
173
  ---
144
174
 
145
- ## 🪟 Windows Users: Troubleshooting
146
-
147
- If you see `'npx' is not recognized as an internal or external command`:
148
-
149
- ### Option 1: Use Full Path (Recommended)
150
-
151
- Find your Node.js installation path and use the full path in your config:
152
-
153
- ```json
154
- {
155
- "mcpServers": {
156
- "respira-wordpress": {
157
- "command": "C:\\Program Files\\nodejs\\npx.cmd",
158
- "args": ["-y", "@respira/wordpress-mcp-server"]
159
- }
160
- }
161
- }
162
- ```
163
-
164
- ### Option 2: Add Node.js to PATH
175
+ ## Page Builder Support
176
+
177
+ ### Divi Builder
178
+ - 200+ module types supported
179
+ - Section, row, and module-level editing
180
+ - Update by admin label: `"Find the module labeled 'Hero CTA' and change the button text"`
181
+ - Preserves all Divi styling and settings
182
+
183
+ ### Elementor
184
+ - Widget-level precision editing
185
+ - Template and section support
186
+ - CSS cache regeneration after updates
187
+ - Compatible with Elementor Pro
188
+
189
+ ### Other Builders
190
+ - **Bricks** — Elements and containers
191
+ - **Oxygen** — Components and templates
192
+ - **WPBakery** — Shortcode-based editing
193
+ - **Beaver Builder** — Modules and rows
194
+ - **Thrive Architect** Elements and templates
195
+ - **Brizy** — Blocks and elements
196
+ - **Visual Composer** — Elements and grids
165
197
 
166
- 1. Press `Win + R`, type `sysdm.cpl`, press Enter
167
- 2. Click **Advanced** tab → **Environment Variables**
168
- 3. Under **System variables**, find **Path** and click **Edit**
169
- 4. Click **New** and add: `C:\Program Files\nodejs\`
170
- 5. Click **OK** on all dialogs
171
- 6. **Restart your AI assistant completely**
198
+ ---
172
199
 
173
- ### Option 3: Install Globally First
200
+ ## Safe Editing Workflow
174
201
 
175
- ```bash
176
- npm install -g @respira/wordpress-mcp-server
177
- ```
202
+ Respira never edits your live pages directly:
178
203
 
179
- Then use this config:
204
+ 1. AI requests a page update
205
+ 2. Respira **creates a duplicate** of the page
206
+ 3. AI edits the duplicate
207
+ 4. You **review changes** in WordPress admin
208
+ 5. One-click to approve and replace the original
180
209
 
181
- ```json
182
- {
183
- "mcpServers": {
184
- "respira-wordpress": {
185
- "command": "respira-wordpress-mcp"
186
- }
187
- }
188
- }
189
- ```
210
+ Go to **Respira → Approve Edits** to review pending changes.
190
211
 
191
212
  ---
192
213
 
193
- ## 🛠️ Available Tools (60+)
214
+ ## Available Tools (60+)
194
215
 
195
216
  ### Content Management
196
217
  | Tool | Description |
197
218
  |------|-------------|
198
219
  | `wordpress_list_pages` | List all pages |
199
220
  | `wordpress_read_page` | Get page content with builder data |
200
- | `wordpress_update_page` | Update page content |
201
- | `wordpress_create_page_duplicate` | Safely duplicate before editing |
221
+ | `wordpress_update_page` | Update page (auto-creates duplicate) |
222
+ | `wordpress_create_page_duplicate` | Manually create safe duplicate |
202
223
  | `wordpress_list_posts` | List all posts |
203
224
  | `wordpress_read_post` | Get post content |
204
225
  | `wordpress_update_post` | Update post content |
205
226
 
227
+ ### Page Builders
228
+ | Tool | Description |
229
+ |------|-------------|
230
+ | `wordpress_get_builder_info` | Get available modules/widgets for detected builder |
231
+ | `wordpress_extract_builder_content` | Extract structured content (sections, rows, modules) |
232
+ | `wordpress_inject_builder_content` | Inject structured builder content |
233
+ | `wordpress_update_module` | Update specific module by admin_label or path |
234
+
206
235
  ### Media Management
207
236
  | Tool | Description |
208
237
  |------|-------------|
@@ -217,36 +246,41 @@ Then use this config:
217
246
  | `wordpress_list_menus` | List all navigation menus |
218
247
  | `wordpress_get_menu` | Get menu with all items |
219
248
  | `wordpress_create_menu` | Create new menu |
220
- | `wordpress_update_menu` | Update menu |
249
+ | `wordpress_update_menu` | Update menu structure |
221
250
  | `wordpress_list_menu_locations` | List theme menu locations |
222
251
  | `wordpress_assign_menu_location` | Assign menu to location |
223
252
  | `wordpress_create_menu_item` | Add menu item |
224
253
  | `wordpress_update_menu_item` | Update menu item |
225
254
 
226
- ### Page Builders
227
- | Tool | Description |
228
- |------|-------------|
229
- | `wordpress_get_builder_info` | Get available modules/widgets |
230
- | `wordpress_extract_builder_content` | Extract structured content |
231
- | `wordpress_inject_builder_content` | Inject builder content |
232
- | `wordpress_update_module` | Update specific module |
233
-
234
255
  ### SEO & Performance
235
256
  | Tool | Description |
236
257
  |------|-------------|
237
- | `wordpress_analyze_seo` | Comprehensive SEO analysis |
238
- | `wordpress_analyze_performance` | Performance metrics |
258
+ | `wordpress_analyze_seo` | Comprehensive SEO analysis with recommendations |
259
+ | `wordpress_check_seo_issues` | Quick SEO issue checker |
260
+ | `wordpress_analyze_performance` | Performance metrics and bottlenecks |
239
261
  | `wordpress_get_core_web_vitals` | LCP, FID, CLS scores |
240
- | `wordpress_analyze_aeo` | AI search engine optimization |
262
+ | `wordpress_analyze_aeo` | AI search engine optimization (ChatGPT, Perplexity) |
263
+ | `wordpress_check_structured_data` | Schema markup validation |
264
+ | `wordpress_analyze_images` | Image optimization opportunities |
265
+ | `wordpress_analyze_readability` | Content readability scores |
241
266
 
242
- ### Users, Comments, Taxonomies
267
+ ### Users & Comments
243
268
  | Tool | Description |
244
269
  |------|-------------|
245
270
  | `wordpress_list_users` | List all users |
246
271
  | `wordpress_create_user` | Create new user |
272
+ | `wordpress_update_user` | Update user details |
247
273
  | `wordpress_list_comments` | List comments |
248
- | `wordpress_list_taxonomies` | List taxonomies |
249
- | `wordpress_list_terms` | List category/tag terms |
274
+ | `wordpress_create_comment` | Create comment |
275
+ | `wordpress_update_comment` | Update/moderate comment |
276
+
277
+ ### Taxonomies & Terms
278
+ | Tool | Description |
279
+ |------|-------------|
280
+ | `wordpress_list_taxonomies` | List all taxonomies |
281
+ | `wordpress_list_terms` | List terms in taxonomy |
282
+ | `wordpress_create_term` | Create category/tag/term |
283
+ | `wordpress_update_term` | Update term |
250
284
 
251
285
  ### Custom Post Types
252
286
  | Tool | Description |
@@ -254,6 +288,7 @@ Then use this config:
254
288
  | `wordpress_list_post_types` | List registered CPTs |
255
289
  | `wordpress_list_custom_posts` | List CPT entries |
256
290
  | `wordpress_create_custom_post` | Create CPT entry |
291
+ | `wordpress_update_custom_post` | Update CPT entry |
257
292
 
258
293
  ### Plugin Management (Experimental)
259
294
  | Tool | Description |
@@ -261,23 +296,19 @@ Then use this config:
261
296
  | `wordpress_list_plugins` | List installed plugins |
262
297
  | `wordpress_install_plugin` | Install from WordPress.org |
263
298
  | `wordpress_activate_plugin` | Activate plugin |
299
+ | `wordpress_deactivate_plugin` | Deactivate plugin |
264
300
  | `wordpress_update_plugin` | Update to latest version |
265
301
 
266
- ---
267
-
268
- ## 🔒 Safe Editing with Duplicates
269
-
270
- Respira automatically creates duplicates before editing live pages. This means:
271
-
272
- 1. **Your live site stays untouched** until you approve changes
273
- 2. **Preview changes** before they go live
274
- 3. **Easy rollback** if something goes wrong
275
-
276
- Approve changes in WordPress admin: **Respira → Approve Edits**
302
+ ### Site Context
303
+ | Tool | Description |
304
+ |------|-------------|
305
+ | `wordpress_get_site_context` | Get site info, theme, plugins, builders |
306
+ | `wordpress_get_theme_docs` | Get theme documentation |
307
+ | `wordpress_switch_site` | Switch to different site (multi-site) |
277
308
 
278
309
  ---
279
310
 
280
- ## 🌍 Multi-Site Support
311
+ ## Multi-Site Support
281
312
 
282
313
  Manage multiple WordPress sites from one config:
283
314
 
@@ -305,7 +336,7 @@ Switch sites with: `wordpress_switch_site`
305
336
 
306
337
  ---
307
338
 
308
- ## 🌐 WPML Multilingual Support
339
+ ## WPML Multilingual Support
309
340
 
310
341
  Full support for WPML multilingual sites:
311
342
  - Menu translations
@@ -315,15 +346,44 @@ Full support for WPML multilingual sites:
315
346
 
316
347
  ---
317
348
 
318
- ## 📦 Alternative Installation
349
+ ## Windows Troubleshooting
350
+
351
+ If you see `'npx' is not recognized`:
352
+
353
+ ### Option 1: Use Full Path (Recommended)
354
+
355
+ ```json
356
+ {
357
+ "mcpServers": {
358
+ "respira-wordpress": {
359
+ "command": "C:\\Program Files\\nodejs\\npx.cmd",
360
+ "args": ["-y", "@respira/wordpress-mcp-server"]
361
+ }
362
+ }
363
+ }
364
+ ```
319
365
 
320
- ### Global Installation
366
+ ### Option 2: Install Globally
321
367
 
322
368
  ```bash
323
369
  npm install -g @respira/wordpress-mcp-server
324
370
  ```
325
371
 
326
- ### Environment Variables
372
+ Then use:
373
+
374
+ ```json
375
+ {
376
+ "mcpServers": {
377
+ "respira-wordpress": {
378
+ "command": "respira-wordpress-mcp"
379
+ }
380
+ }
381
+ }
382
+ ```
383
+
384
+ ---
385
+
386
+ ## Environment Variables
327
387
 
328
388
  Instead of config file, use `.env`:
329
389
 
@@ -334,22 +394,22 @@ WP_API_KEY=respira_your-api-key
334
394
 
335
395
  ---
336
396
 
337
- ## 🆘 Need Help?
397
+ ## Need Help?
338
398
 
339
- - 📖 [Documentation](https://respira.press/docs)
340
- - 💬 [Support](https://respira.press/support)
341
- - 🐛 [Report Issues](https://github.com/webmyc/respira-wordpress/issues)
342
- - 📧 [Contact](mailto:support@respira.press)
399
+ - [Documentation](https://respira.press/docs)
400
+ - [Support](https://respira.press/support)
401
+ - [Report Issues](https://github.com/webmyc/respira-wordpress/issues)
402
+ - [Contact](mailto:support@respira.press)
343
403
 
344
404
  ---
345
405
 
346
- ## 📄 License
406
+ ## License
347
407
 
348
408
  MIT © [Respira](https://respira.press)
349
409
 
350
410
  ---
351
411
 
352
412
  <p align="center">
353
- <strong>Built with ❤️ for the WordPress community</strong><br>
413
+ <strong>Built for the WordPress community</strong><br>
354
414
  <a href="https://respira.press">respira.press</a>
355
415
  </p>
package/dist/server.js CHANGED
@@ -14,7 +14,7 @@ export class RespiraWordPressServer {
14
14
  constructor(siteConfigs) {
15
15
  this.server = new Server({
16
16
  name: 'respira-wordpress',
17
- version: '2.0.4',
17
+ version: '2.0.5',
18
18
  }, {
19
19
  capabilities: {
20
20
  tools: {},
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@respira/wordpress-mcp-server",
3
- "version": "2.0.4",
4
- "description": "🚀 Vibe code WordPress with AI. Connect Cursor, Claude Code & Windsurf to edit pages, posts, menus & media. Supports Divi, Elementor, Gutenberg + 7 more builders. 60+ tools. WPML ready.",
3
+ "version": "2.0.5",
4
+ "description": "The only WordPress MCP with page builder support. Edit Divi, Elementor, Bricks + 7 more builders with AI. Duplicate-before-edit safety. SEO analysis. 60+ tools.",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
7
7
  "respira-wordpress-mcp": "./dist/index.js"
@@ -33,7 +33,8 @@
33
33
  "wordpress-plugin",
34
34
  "wordpress-development",
35
35
  "wordpress-editing",
36
- "remote-editing",
36
+ "wordpress-mcp-server",
37
+ "ai-wordpress",
37
38
  "ai",
38
39
  "ai-coding",
39
40
  "ai-assistant",
@@ -44,16 +45,21 @@
44
45
  "codeium",
45
46
  "vibe-coding",
46
47
  "page-builder",
48
+ "page-builder-ai",
47
49
  "divi",
50
+ "divi-ai",
48
51
  "elementor",
52
+ "elementor-ai",
49
53
  "beaver-builder",
50
54
  "visual-composer",
51
55
  "oxygen",
52
56
  "bricks",
57
+ "bricks-ai",
53
58
  "brizy",
54
59
  "thrive",
55
60
  "wpbakery",
56
61
  "gutenberg",
62
+ "gutenberg-ai",
57
63
  "content-management",
58
64
  "page-editing",
59
65
  "module-updates",
@@ -65,7 +71,12 @@
65
71
  "multilingual",
66
72
  "menu-management",
67
73
  "seo",
68
- "core-web-vitals"
74
+ "core-web-vitals",
75
+ "safe-editing",
76
+ "duplicate-before-edit",
77
+ "seo-analysis",
78
+ "aeo",
79
+ "performance-analysis"
69
80
  ],
70
81
  "author": {
71
82
  "name": "Respira",