claude-plugin-wordpress-manager 2.1.1 → 2.2.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.
Files changed (32) hide show
  1. package/.claude-plugin/plugin.json +2 -2
  2. package/CHANGELOG.md +25 -0
  3. package/agents/wp-content-strategist.md +30 -0
  4. package/agents/wp-monitoring-agent.md +50 -0
  5. package/docs/plans/2026-02-28-wcop-strategic-assessment.md +220 -0
  6. package/hooks/hooks.json +9 -0
  7. package/package.json +6 -3
  8. package/servers/wp-rest-bridge/build/tools/index.d.ts +119 -0
  9. package/servers/wp-rest-bridge/build/tools/index.js +3 -0
  10. package/servers/wp-rest-bridge/build/tools/wc-webhooks.d.ts +129 -0
  11. package/servers/wp-rest-bridge/build/tools/wc-webhooks.js +142 -0
  12. package/servers/wp-rest-bridge/build/types.d.ts +12 -0
  13. package/skills/wordpress-router/references/decision-tree.md +7 -3
  14. package/skills/wp-content/SKILL.md +3 -0
  15. package/skills/wp-content-repurposing/SKILL.md +96 -0
  16. package/skills/wp-content-repurposing/references/content-atomization.md +117 -0
  17. package/skills/wp-content-repurposing/references/email-newsletter.md +136 -0
  18. package/skills/wp-content-repurposing/references/platform-specs.md +80 -0
  19. package/skills/wp-content-repurposing/references/social-formats.md +169 -0
  20. package/skills/wp-content-repurposing/scripts/repurposing_inspect.mjs +140 -0
  21. package/skills/wp-headless/SKILL.md +1 -0
  22. package/skills/wp-monitoring/SKILL.md +12 -2
  23. package/skills/wp-monitoring/references/fleet-monitoring.md +160 -0
  24. package/skills/wp-monitoring/scripts/monitoring_inspect.mjs +54 -1
  25. package/skills/wp-webhooks/SKILL.md +107 -0
  26. package/skills/wp-webhooks/references/integration-recipes.md +176 -0
  27. package/skills/wp-webhooks/references/payload-formats.md +134 -0
  28. package/skills/wp-webhooks/references/webhook-security.md +147 -0
  29. package/skills/wp-webhooks/references/woocommerce-webhooks.md +129 -0
  30. package/skills/wp-webhooks/references/wordpress-core-webhooks.md +162 -0
  31. package/skills/wp-webhooks/scripts/webhook_inspect.mjs +157 -0
  32. package/skills/wp-woocommerce/SKILL.md +1 -0
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "wordpress-manager",
3
- "version": "2.1.1",
4
- "description": "Unified WordPress management plugin for Claude Code. Orchestrates Hostinger MCP (infrastructure), WP REST API bridge (81 tools incl. WooCommerce + Multisite), and WordPress.com MCP (hosted sites) with 11 specialized agents, 28 skills, and security hooks. Includes site monitoring (uptime, performance baseline, security scanning, content integrity, alerting), CI/CD pipeline automation (GitHub Actions, GitLab CI, Bitbucket), WordPress Multisite network management, WooCommerce store management, local dev environment support, development, testing, security, i18n, accessibility, headless, and operations.",
3
+ "version": "2.2.0",
4
+ "description": "Unified WordPress management plugin for Claude Code. Orchestrates Hostinger MCP (infrastructure), WP REST API bridge (85 tools incl. WooCommerce + Multisite + Webhooks), and WordPress.com MCP (hosted sites) with 11 specialized agents, 30 skills, and security hooks. Includes fleet monitoring, content repurposing, webhook propagation, site monitoring (uptime, performance baseline, security scanning, content integrity, alerting), CI/CD pipeline automation (GitHub Actions, GitLab CI, Bitbucket), WordPress Multisite network management, WooCommerce store management, local dev environment support, development, testing, security, i18n, accessibility, headless, and operations.",
5
5
  "author": {
6
6
  "name": "vinmor",
7
7
  "email": "morreale.v@gmail.com"
package/CHANGELOG.md CHANGED
@@ -2,6 +2,31 @@
2
2
 
3
3
  All notable changes to the WordPress Manager plugin for Claude Code.
4
4
 
5
+ ## [2.2.0] - 2026-02-28
6
+
7
+ ### Added
8
+ - **Fleet monitoring** — cross-site health assessment for all configured WordPress sites
9
+ - New reference file: `skills/wp-monitoring/references/fleet-monitoring.md` (fleet iteration, cross-site patterns, fleet baselines, site grouping, scheduling, P0 escalation)
10
+ - Detection script updated: `detectFleetConfiguration()` checks WP_SITES_CONFIG and sites.json for multi-site fleet
11
+ - Agent updated: Procedure 7 (Fleet Monitoring) + Fleet Report Template in `wp-monitoring-agent`
12
+
13
+ - **Content repurposing skill** (`wp-content-repurposing`) — transform WordPress content into multi-channel outputs
14
+ - 4 reference files: social-formats (Twitter/LinkedIn/Instagram/Facebook templates), email-newsletter (digest/drip/subject lines), content-atomization (pillar→atoms workflow, repurposing matrix), platform-specs (character limits, image dimensions, posting frequency)
15
+ - Detection script: `repurposing_inspect.mjs` — detects social plugins, email plugins, content volume
16
+ - Agent updated: `wp-content-strategist` now includes Content Repurposing Workflow and repurposing example
17
+
18
+ - **Webhook propagation skill** (`wp-webhooks`) — WordPress outbound webhook configuration and management
19
+ - 5 reference files: woocommerce-webhooks (API, topics, MCP tools), wordpress-core-webhooks (mu-plugin, action hooks), integration-recipes (Zapier/Make/n8n/Slack/CDN), payload-formats (JSON payloads, WC examples), webhook-security (HMAC-SHA256, signatures, rate limiting)
20
+ - Detection script: `webhook_inspect.mjs` — detects WC webhooks, mu-plugin webhooks, webhook plugins, wp-config constants
21
+ - 4 new MCP tools via WP REST Bridge: `wc_list_webhooks`, `wc_create_webhook`, `wc_update_webhook`, `wc_delete_webhook`
22
+ - `WCWebhook` TypeScript interface added to types.ts
23
+ - Safety hook for `wc_delete_webhook` (PreToolUse prompt confirmation)
24
+
25
+ ### Changed
26
+ - Router decision-tree.md upgraded to v9 with fleet, webhook, and content repurposing keywords and routing
27
+ - Cross-references added: `wp-content` → wp-content-repurposing, `wp-headless` → wp-webhooks, `wp-woocommerce` → wp-webhooks
28
+ - Plugin now has 30 skills, 11 agents, and 85 MCP tools
29
+
5
30
  ## [2.1.1] - 2026-02-28
6
31
 
7
32
  ### Changed
@@ -24,6 +24,13 @@ description: |
24
24
  assistant: "I'll use the wp-content-strategist agent to set up the taxonomy structure."
25
25
  <commentary>Taxonomy design impacts content architecture and SEO.</commentary>
26
26
  </example>
27
+
28
+ <example>
29
+ Context: User wants to repurpose blog content for social media.
30
+ user: "Turn my latest blog posts into social media content"
31
+ assistant: "I'll use the wp-content-strategist agent to extract key insights from your posts and generate platform-specific social content."
32
+ <commentary>Content repurposing requires selecting source content and applying platform templates.</commentary>
33
+ </example>
27
34
  model: inherit
28
35
  tools: Read, Grep, Glob, Bash, WebFetch, WebSearch
29
36
  ---
@@ -147,6 +154,28 @@ Excerpt: [Meta description with keyword, under 160 chars]
147
154
  - ALWAYS preserve existing SEO-optimized slugs when updating content
148
155
  - ALWAYS check for duplicate slugs before creating new content
149
156
 
157
+ ## Content Repurposing Workflow
158
+
159
+ When repurposing existing WordPress content into multi-channel formats:
160
+
161
+ 1. **Select source content**: Use `list_content` to find recent/popular posts
162
+ - Filter by `orderby: "date"` for recent or by popularity metrics
163
+ - Prioritize evergreen content with broad appeal
164
+ 2. **Extract key elements** from source post:
165
+ - Headline and hook
166
+ - 3-5 key insights or data points
167
+ - Quotable passages
168
+ - Statistics or results
169
+ - Call to action
170
+ 3. **Apply platform templates** from `wp-content-repurposing` skill:
171
+ - Social formats: `references/social-formats.md`
172
+ - Email newsletter: `references/email-newsletter.md`
173
+ - Atomization: `references/content-atomization.md`
174
+ 4. **Generate formatted outputs** per target channel
175
+ 5. **Present all variants** to user for review before distribution
176
+
177
+ See the `wp-content-repurposing` skill for detailed templates and platform specifications.
178
+
150
179
  ## Multilingual Content
151
180
 
152
181
  When creating content for multilingual sites:
@@ -164,3 +193,4 @@ When creating content for multilingual sites:
164
193
 
165
194
  - **`wp-content` skill** — content lifecycle management, editorial workflows
166
195
  - **`wp-i18n` skill** — internationalization and localization procedures
196
+ - **`wp-content-repurposing` skill** — content transformation for multi-channel distribution
@@ -24,6 +24,13 @@ description: |
24
24
  assistant: "I'll use the wp-monitoring-agent to analyze performance metrics and compare with the baseline."
25
25
  <commentary>Performance trend analysis requires collecting current metrics and comparing with historical data.</commentary>
26
26
  </example>
27
+
28
+ <example>
29
+ Context: User wants to check all their WordPress sites at once.
30
+ user: "Run a health check across all my sites"
31
+ assistant: "I'll use the wp-monitoring-agent to perform a fleet-wide health assessment across all configured sites."
32
+ <commentary>Fleet monitoring requires iterating over all configured sites and aggregating findings.</commentary>
33
+ </example>
27
34
  model: inherit
28
35
  tools: Read, Grep, Glob, Bash, WebFetch, WebSearch
29
36
  ---
@@ -109,6 +116,23 @@ Run a full assessment to create a monitoring baseline:
109
116
  4. Check robots.txt via WebFetch: verify no unexpected rules
110
117
  5. Report content changes, spam levels, and SEO health
111
118
 
119
+ ### Procedure 7: Fleet Monitoring
120
+
121
+ Run health assessments across all configured sites and generate a fleet-wide comparison:
122
+
123
+ 1. **Enumerate sites**: Use `list_sites` to get all configured sites
124
+ 2. **Iterate**: For each site:
125
+ a. `switch_site` to target the site
126
+ b. Run Procedures 3-6 (uptime, performance, security, content)
127
+ c. Record per-site metrics and findings
128
+ 3. **Aggregate**: Combine per-site results into a fleet comparison table
129
+ 4. **Cross-site pattern detection**:
130
+ - Same plugin vulnerability across multiple sites
131
+ - Correlated performance degradation (shared hosting, CDN issue)
132
+ - Identical outdated WordPress core versions
133
+ - Common configuration drift from baselines
134
+ 5. **Generate fleet report** (see Fleet Report template below)
135
+
112
136
  ## Report Generation
113
137
 
114
138
  After completing relevant procedures, generate a report following the templates in `references/reporting-templates.md`:
@@ -155,6 +179,31 @@ After completing relevant procedures, generate a report following the templates
155
179
  3. [Third priority]
156
180
  ```
157
181
 
182
+ ### Fleet Report Template
183
+
184
+ ```
185
+ ## Fleet Health Report
186
+ **Date:** [date] | **Sites:** [count] | **Scope:** [full / quick]
187
+
188
+ ### Fleet Overview
189
+ | Site | Uptime | Performance | Security | Content | Overall |
190
+ |------|--------|-------------|----------|---------|---------|
191
+ | [site-1] | [✅/⚠️/❌] | [✅/⚠️/❌] | [✅/⚠️/❌] | [✅/⚠️/❌] | [✅/⚠️/❌] |
192
+ | [site-2] | [✅/⚠️/❌] | [✅/⚠️/❌] | [✅/⚠️/❌] | [✅/⚠️/❌] | [✅/⚠️/❌] |
193
+
194
+ ### Fleet Summary
195
+ - **Healthy sites:** X/N
196
+ - **Degraded sites:** X/N (list)
197
+ - **Critical sites:** X/N (list)
198
+
199
+ ### Cross-Site Patterns
200
+ [findings or "No cross-site patterns detected"]
201
+
202
+ ### Fleet Recommendations (Priority Order)
203
+ 1. [Fleet-wide action]
204
+ 2. [Site-specific action]
205
+ ```
206
+
158
207
  ## Safety Rules
159
208
 
160
209
  - **NEVER modify any site data** — this agent is strictly read-only
@@ -175,6 +224,7 @@ For issues found during monitoring:
175
224
  | Content or SEO issues | `wp-content-strategist` agent |
176
225
  | Plugin/deployment issues | `wp-deployment-engineer` agent |
177
226
  | Infrastructure/hosting issues | `wp-site-manager` agent |
227
+ | Fleet-wide infrastructure issue | `wp-site-manager` agent (multi-site coordination) |
178
228
 
179
229
  ## Related Skills
180
230
 
@@ -0,0 +1,220 @@
1
+ # WordPress Manager — Assessment Strategico WCOP
2
+
3
+ > **WordPress Content Orchestration Platform (WCOP)**
4
+ > Valutazione del plugin v2.1.1 come piattaforma di orchestrazione per content management distribuito a supporto di strategie SEO, engagement e social amplification.
5
+
6
+ **Data:** 2026-02-28
7
+ **Versione plugin:** 2.1.1
8
+ **Scope:** Alto livello strategico — nessuna implementazione
9
+
10
+ ---
11
+
12
+ ## 1. Modello di Riferimento: WCOP a 5 Layer
13
+
14
+ Il plugin v2.1.1 va valutato non come "gestore di siti WordPress" ma come **piattaforma di orchestrazione contenuti** strutturata su 5 livelli:
15
+
16
+ ```
17
+ Layer 5 ─ Automation CI/CD pipeline, webhook, trigger
18
+ Layer 4 ─ Observability Monitoring, baseline, alerting
19
+ Layer 3 ─ Distribution Headless, syndication, social, email
20
+ Layer 2 ─ Quality Assur. Testing, security, accessibility, PHPStan
21
+ Layer 1 ─ Content Factory Multisite, WooCommerce, REST API, block dev
22
+ ```
23
+
24
+ ### Punteggi per Layer
25
+
26
+ | Layer | Copertura | Score | Note |
27
+ |-------|-----------|-------|------|
28
+ | 1 — Content Factory | Eccellente | **9/10** | 81 tool MCP, 28 skill, multisite, WooCommerce, headless skill |
29
+ | 2 — Quality Assurance | Forte | **8/10** | E2E + PHPStan + security audit + a11y + hardening |
30
+ | 3 — Distribution | **Debole** | **4/10** | Solo headless skill teorico, nessun connettore outbound reale |
31
+ | 4 — Observability | Parziale | **5/10** | Monitoring single-site, manca fleet monitoring cross-site |
32
+ | 5 — Automation | Parziale | **4/10** | CI/CD per codice, non per contenuto; manca webhook propagation |
33
+
34
+ **Score complessivo: 6/10** — Il plugin e forte **centripetalmente** (portare contenuto DENTRO WordPress) ma debole **centrifugalmente** (distribuire contenuto FUORI DA WordPress).
35
+
36
+ ---
37
+
38
+ ## 2. Hub Content Architecture
39
+
40
+ Il plugin ha la base per un modello **Hub-and-Spoke**:
41
+
42
+ - **Hub**: WordPress Multisite (10 tool MCP) come sorgente canonica
43
+ - **Spoke**: Frontend headless via `wp-headless` skill (REST/WPGraphQL -> Next.js/Nuxt/Astro)
44
+ - **Commerce layer**: WooCommerce (30 tool MCP) come transazione integrata
45
+
46
+ **Punto di forza**: L'orchestrazione `wp-site-manager` -> delegazione a 10 agent specializzati e un pattern raro nel panorama plugin CLI. La catena audit->hardening (`wp-security-auditor` -> `wp-security-hardener`) e la delegazione monitor->specialist (`wp-monitoring-agent` -> performance/security agent) sono differenzianti.
47
+
48
+ **Gap**: L'hub e forte nella creazione ma non nella propagazione. Il contenuto nasce in WordPress e li resta.
49
+
50
+ ---
51
+
52
+ ## 3. SEO Topology
53
+
54
+ | Strategia SEO | Supporto | Dettaglio |
55
+ |---------------|----------|-----------|
56
+ | Pillar-Cluster | ✅ Forte | Content strategist + REST API categories/tags + headless rendering |
57
+ | E-Commerce SEO | ✅ Forte | WooCommerce products + structured data via headless |
58
+ | Programmatic SEO | ⚠️ Parziale | Headless skill copre il pattern, ma manca generazione template scalabile |
59
+ | Local SEO (multi-location) | ⚠️ Parziale | Multisite permette siti per location, manca schema LocalBusiness |
60
+ | Cross-Domain SEO | ❌ Assente | Nessun tool per canonical cross-domain, hreflang fleet, o link graph |
61
+
62
+ **Opportunita chiave**: Programmatic SEO tramite headless + Multisite e a portata di mano. Un sito multisite dove ogni sub-site genera pagine programmatiche (es. "/prodotto/citta/variante") con Next.js ISR sarebbe potente.
63
+
64
+ ---
65
+
66
+ ## 4. Content Syndication
67
+
68
+ | Livello | Descrizione | Supporto |
69
+ |---------|-------------|----------|
70
+ | L1 — Canonical Source | WordPress come sorgente unica di verita | ✅ Eccellente (REST API, WPGraphQL) |
71
+ | L2 — Format Adaptation | Trasformare contenuto per canali diversi | ⚠️ Solo manuale (content strategist) |
72
+ | L3 — Channel Distribution | Pubblicare su social, email, ads, partner | ❌ Assente |
73
+
74
+ Il plugin produce contenuto strutturato di alta qualita (L1) ma non ha pipeline per riformattarlo (L2) ne distribuirlo (L3). Il contenuto "muore" dentro WordPress.
75
+
76
+ ---
77
+
78
+ ## 5. Commerce-Content Integration
79
+
80
+ WooCommerce e ben integrato (30 tool) ma come layer **transazionale**, non come layer **content-driven**:
81
+
82
+ - **Content -> Commerce** ⚠️: Si possono creare prodotti e gestire ordini, ma manca il funnel content->conversion tracking
83
+ - **Commerce -> Content** ⚠️: I dati vendita (report WC) esistono ma non alimentano automaticamente la strategia contenuti
84
+ - **Headless Commerce** ⚠️: `wp-headless` skill copre la teoria ma non c'e un workflow "WooCommerce headless" dedicato
85
+
86
+ ---
87
+
88
+ ## 6. Social Amplification
89
+
90
+ **Posizione corretta del plugin**: Non deve diventare un social media manager (esistono tool dedicati). Deve essere il **miglior fornitore di contenuto strutturato** per tool di distribuzione esterni.
91
+
92
+ Cio significa: API-first content packaging. WordPress produce JSON strutturato (titolo, excerpt, immagini ottimizzate, categorie, schema markup) che un tool esterno (Buffer, Hootsuite, Zapier) può consumare.
93
+
94
+ **Gap**: Manca un layer di "content packaging for distribution" — endpoint REST dedicati che formattino il contenuto per i vari canali.
95
+
96
+ ---
97
+
98
+ ## 7. Monitoring come Quality Gate + CI/CD come Content Pipeline
99
+
100
+ ### Monitoring (Differenziante)
101
+
102
+ Il monitoring v2.1.0 e un **differenziante unico**: nessun altro plugin CLI offre monitoring integrato con delegazione a agent specializzati. La catena:
103
+
104
+ ```
105
+ wp-monitoring-agent (detect anomaly)
106
+ -> wp-performance-optimizer (if performance issue)
107
+ -> wp-security-auditor (if security issue)
108
+ -> wp-site-manager (if infrastructure issue)
109
+ ```
110
+
111
+ Questo pattern va **esteso a fleet level**: monitorare N siti simultaneamente, aggregare metriche, identificare pattern cross-site.
112
+
113
+ ### CI/CD come Content Pipeline (Innovativo)
114
+
115
+ L'insight piu interessante: CI/CD non dovrebbe essere solo per codice ma anche per **contenuto**:
116
+
117
+ - Quality gate su contenuti (SEO score minimo, a11y check, reading level)
118
+ - Preview environment per contenuto (staging -> produzione)
119
+ - Rollback contenuto (versioning via REST API revisions)
120
+
121
+ Il plugin ha gia `wp-cicd-engineer` per codice. Estenderlo a "content pipeline" sarebbe innovativo.
122
+
123
+ ---
124
+
125
+ ## 8. Gap Analysis — Roadmap Strategica
126
+
127
+ ### Tier 1 — Alto Impatto, Alta Fattibilita
128
+
129
+ | Gap | Descrizione | Effort | Impatto |
130
+ |-----|-------------|--------|---------|
131
+ | **Fleet Monitoring** | Estendere monitoring a N siti (loop su sites.json) | Medio | Trasforma il plugin da single-site a network operator |
132
+ | **Content Repurposing Skill** | Skill che guida la trasformazione contenuto->formati (social post, email, snippet) | Basso | Sblocca L2 syndication |
133
+ | **Webhook Propagation** | Skill/tool per configurare webhook WordPress -> servizi esterni | Basso | Primo mattone per distribuzione automatica |
134
+
135
+ ### Tier 2 — Alto Impatto, Media Fattibilita
136
+
137
+ | Gap | Descrizione | Effort | Impatto |
138
+ |-----|-------------|--------|---------|
139
+ | **Programmatic SEO Skill** | Generazione template pagine scalabili (headless + multisite) | Medio | SEO topology massiva |
140
+ | **Content-Commerce Attribution** | Collegare metriche WooCommerce a contenuti che generano conversioni | Medio | ROI content misurabile |
141
+ | **Multi-Language Network** | Orchestrazione multisite multilingua (hreflang, i18n + multisite) | Alto | Sblocca mercati internazionali |
142
+
143
+ ### Tier 3 — Alto Impatto, Richiede Ecosistema
144
+
145
+ | Gap | Descrizione | Effort | Impatto |
146
+ |-----|-------------|--------|---------|
147
+ | **Social/Email Connectors** | MCP tool per Mailchimp, Buffer, etc. (o Zapier bridge) | Alto | L3 distribution completa |
148
+ | **Google Search Console Integration** | MCP tool per GSC API (keyword tracking, indexing) | Medio | SEO feedback loop |
149
+ | **AI Content Optimization** | Skill per ottimizzazione contenuto con AI (headline testing, readability) | Medio | Content quality automatica |
150
+
151
+ ---
152
+
153
+ ## 9. Modello d'Impiego Massimizzato
154
+
155
+ ### Scenario: "Content Hub Distribuito per Brand D2C"
156
+
157
+ Esempio concreto di impiego simultaneo massimale del plugin:
158
+
159
+ ```
160
+ ┌─────────────────────┐
161
+ │ WORDPRESS MULTISITE │
162
+ │ (Hub Centrale) │
163
+ │ wp-site-manager │
164
+ └──────────┬──────────┘
165
+ ┌───────────────────┼───────────────────┐
166
+ │ │ │
167
+ ┌──────▼──────┐ ┌──────▼──────┐ ┌──────▼──────┐
168
+ │ Sub-site 1 │ │ Sub-site 2 │ │ Sub-site 3 │
169
+ │ Blog/SEO │ │ WooCommerce │ │ Landing │
170
+ │ (content) │ │ (shop) │ │ (campaign) │
171
+ └──────┬──────┘ └──────┬──────┘ └──────┬──────┘
172
+ │ │ │
173
+ ┌──────▼──────┐ ┌──────▼──────┐ ┌──────▼──────┐
174
+ │ Next.js │ │ Nuxt.js │ │ Astro │
175
+ │ (headless) │ │ (headless) │ │ (static) │
176
+ └─────────────┘ └─────────────┘ └─────────────┘
177
+ ```
178
+
179
+ **Agent attivi simultaneamente:**
180
+
181
+ 1. `wp-content-strategist` — crea contenuto pillar nel sub-site blog
182
+ 2. `wp-ecommerce-manager` — gestisce catalogo e promozioni nel sub-site shop
183
+ 3. `wp-cicd-engineer` — mantiene pipeline deploy per i 3 frontend headless
184
+ 4. `wp-monitoring-agent` — sorveglia uptime e performance di tutti i sub-siti
185
+ 5. `wp-security-auditor` + `wp-security-hardener` — ciclo audit/hardening periodico
186
+ 6. `wp-test-engineer` — E2E testing sui frontend headless
187
+ 7. `wp-accessibility-auditor` — compliance WCAG sui frontend pubblici
188
+
189
+ **Skill attive:**
190
+
191
+ - `wp-multisite` per gestione rete
192
+ - `wp-headless` per configurazione API layer
193
+ - `wp-woocommerce` per store operations
194
+ - `wp-cicd` per pipeline automation
195
+ - `wp-monitoring` per observability
196
+ - `wordpress-router` per orchestrazione decisionale
197
+
198
+ > Questo scenario usa **7 degli 11 agent** e **6 delle 28 skill** simultaneamente.
199
+
200
+ ---
201
+
202
+ ## 10. Conclusione Strategica
203
+
204
+ Il plugin WordPress Manager v2.1.1 e una **piattaforma di orchestrazione contenuti matura al 60%**:
205
+
206
+ - **Eccellente** come Content Factory (Layer 1) e Quality Assurance (Layer 2)
207
+ - **Differenziante** nel pattern monitoring->delegazione e nella copertura agent (11 specializzati)
208
+ - **Carente** nella distribuzione outbound (Layer 3) e nell'automazione contenuto (Layer 5)
209
+
210
+ ### La trasformazione da "gestore WordPress" a "Content Orchestration Platform" richiede 3 mosse strategiche:
211
+
212
+ 1. **Fleet-first**: Ogni tool e agent deve pensare "N siti", non "1 sito"
213
+ 2. **Content-out**: Aggiungere il layer di distribuzione (content packaging -> webhook -> canali)
214
+ 3. **Content pipeline**: Estendere CI/CD dal codice al contenuto (quality gates, staging, rollback)
215
+
216
+ Con queste 3 evoluzioni, il plugin passerebbe da **6/10 a 8-9/10** come piattaforma WCOP, posizionandosi come l'unico strumento CLI che copre l'intero ciclo di vita del contenuto WordPress: **creazione -> qualita -> distribuzione -> osservabilita -> automazione**.
217
+
218
+ ---
219
+
220
+ *Assessment WCOP v1.0 — wordpress-manager v2.1.1 — 2026-02-28*
package/hooks/hooks.json CHANGED
@@ -51,6 +51,15 @@
51
51
  "timeout": 15
52
52
  }
53
53
  ]
54
+ },
55
+ {
56
+ "matcher": "mcp__wp-rest-bridge__wc_delete_webhook",
57
+ "hooks": [
58
+ {
59
+ "type": "prompt",
60
+ "prompt": "The agent is about to DELETE a WooCommerce webhook. This will stop notifications to the configured delivery URL. Verify the user explicitly requested this deletion and understands that external integrations depending on this webhook will stop receiving events."
61
+ }
62
+ ]
54
63
  }
55
64
  ]
56
65
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "claude-plugin-wordpress-manager",
3
- "version": "2.1.1",
4
- "description": "Unified WordPress management and development plugin for Claude Code. Orchestrates Hostinger MCP, WP REST API bridge (81 tools incl. 30 WooCommerce + 10 Multisite), and WordPress.com MCP with 28 skills, 11 agents, and security hooks. v2.1.0 adds site monitoring: uptime checks, performance baseline, security scanning, content integrity, alerting strategies, and reporting templates.",
3
+ "version": "2.2.0",
4
+ "description": "Unified WordPress management and development plugin for Claude Code. Orchestrates Hostinger MCP, WP REST API bridge (85 tools incl. 30 WooCommerce + 10 Multisite + 4 Webhooks), and WordPress.com MCP with 30 skills, 11 agents, and security hooks. v2.2.0 adds fleet monitoring, content repurposing skill, and webhook propagation (WooCommerce webhook MCP tools + mu-plugin patterns).",
5
5
  "author": {
6
6
  "name": "vinmor",
7
7
  "email": "morreale.v@gmail.com"
@@ -33,7 +33,10 @@
33
33
  "gitlab-ci",
34
34
  "monitoring",
35
35
  "uptime",
36
- "health-check"
36
+ "health-check",
37
+ "webhook",
38
+ "content-repurposing",
39
+ "fleet-monitoring"
37
40
  ],
38
41
  "repository": {
39
42
  "type": "git",
@@ -1,6 +1,125 @@
1
1
  import { Tool } from '@modelcontextprotocol/sdk/types.js';
2
2
  export declare const allTools: Tool[];
3
3
  export declare const toolHandlers: {
4
+ wc_list_webhooks: (params: import("zod").TypeOf<import("zod").ZodObject<{
5
+ status: import("zod").ZodOptional<import("zod").ZodEnum<["active", "paused", "disabled"]>>;
6
+ }, "strict", import("zod").ZodTypeAny, {
7
+ status?: "active" | "paused" | "disabled" | undefined;
8
+ }, {
9
+ status?: "active" | "paused" | "disabled" | undefined;
10
+ }>>) => Promise<{
11
+ toolResult: {
12
+ content: {
13
+ type: string;
14
+ text: string;
15
+ }[];
16
+ isError?: undefined;
17
+ };
18
+ } | {
19
+ toolResult: {
20
+ isError: boolean;
21
+ content: {
22
+ type: string;
23
+ text: string;
24
+ }[];
25
+ };
26
+ }>;
27
+ wc_create_webhook: (params: import("zod").TypeOf<import("zod").ZodObject<{
28
+ name: import("zod").ZodString;
29
+ topic: import("zod").ZodString;
30
+ delivery_url: import("zod").ZodString;
31
+ secret: import("zod").ZodOptional<import("zod").ZodString>;
32
+ status: import("zod").ZodOptional<import("zod").ZodEnum<["active", "paused", "disabled"]>>;
33
+ }, "strict", import("zod").ZodTypeAny, {
34
+ name: string;
35
+ topic: string;
36
+ delivery_url: string;
37
+ status?: "active" | "paused" | "disabled" | undefined;
38
+ secret?: string | undefined;
39
+ }, {
40
+ name: string;
41
+ topic: string;
42
+ delivery_url: string;
43
+ status?: "active" | "paused" | "disabled" | undefined;
44
+ secret?: string | undefined;
45
+ }>>) => Promise<{
46
+ toolResult: {
47
+ content: {
48
+ type: string;
49
+ text: string;
50
+ }[];
51
+ isError?: undefined;
52
+ };
53
+ } | {
54
+ toolResult: {
55
+ isError: boolean;
56
+ content: {
57
+ type: string;
58
+ text: string;
59
+ }[];
60
+ };
61
+ }>;
62
+ wc_update_webhook: (params: import("zod").TypeOf<import("zod").ZodObject<{
63
+ id: import("zod").ZodNumber;
64
+ name: import("zod").ZodOptional<import("zod").ZodString>;
65
+ topic: import("zod").ZodOptional<import("zod").ZodString>;
66
+ delivery_url: import("zod").ZodOptional<import("zod").ZodString>;
67
+ secret: import("zod").ZodOptional<import("zod").ZodString>;
68
+ status: import("zod").ZodOptional<import("zod").ZodEnum<["active", "paused", "disabled"]>>;
69
+ }, "strict", import("zod").ZodTypeAny, {
70
+ id: number;
71
+ status?: "active" | "paused" | "disabled" | undefined;
72
+ name?: string | undefined;
73
+ topic?: string | undefined;
74
+ delivery_url?: string | undefined;
75
+ secret?: string | undefined;
76
+ }, {
77
+ id: number;
78
+ status?: "active" | "paused" | "disabled" | undefined;
79
+ name?: string | undefined;
80
+ topic?: string | undefined;
81
+ delivery_url?: string | undefined;
82
+ secret?: string | undefined;
83
+ }>>) => Promise<{
84
+ toolResult: {
85
+ content: {
86
+ type: string;
87
+ text: string;
88
+ }[];
89
+ isError?: undefined;
90
+ };
91
+ } | {
92
+ toolResult: {
93
+ isError: boolean;
94
+ content: {
95
+ type: string;
96
+ text: string;
97
+ }[];
98
+ };
99
+ }>;
100
+ wc_delete_webhook: (params: import("zod").TypeOf<import("zod").ZodObject<{
101
+ id: import("zod").ZodNumber;
102
+ }, "strict", import("zod").ZodTypeAny, {
103
+ id: number;
104
+ }, {
105
+ id: number;
106
+ }>>) => Promise<{
107
+ toolResult: {
108
+ content: {
109
+ type: string;
110
+ text: string;
111
+ }[];
112
+ isError?: undefined;
113
+ };
114
+ } | {
115
+ toolResult: {
116
+ isError: boolean;
117
+ content: {
118
+ type: string;
119
+ text: string;
120
+ }[];
121
+ };
122
+ }>;
4
123
  ms_list_network_plugins: (params: import("zod").TypeOf<import("zod").ZodObject<{
5
124
  site_id: import("zod").ZodOptional<import("zod").ZodString>;
6
125
  }, "strict", import("zod").ZodTypeAny, {
@@ -14,6 +14,7 @@ import { wcReportTools, wcReportHandlers } from './wc-reports.js';
14
14
  import { wcSettingTools, wcSettingHandlers } from './wc-settings.js';
15
15
  import { multisiteSiteTools, multisiteSiteHandlers } from './multisite-sites.js';
16
16
  import { multisiteNetworkTools, multisiteNetworkHandlers } from './multisite-network.js';
17
+ import { wcWebhookTools, wcWebhookHandlers } from './wc-webhooks.js';
17
18
  // Combine all tools
18
19
  export const allTools = [
19
20
  ...unifiedContentTools, // 8 tools
@@ -32,6 +33,7 @@ export const allTools = [
32
33
  ...wcSettingTools, // 4 tools
33
34
  ...multisiteSiteTools, // 5 tools
34
35
  ...multisiteNetworkTools, // 5 tools
36
+ ...wcWebhookTools, // 4 tools
35
37
  ];
36
38
  // Combine all handlers
37
39
  export const toolHandlers = {
@@ -51,4 +53,5 @@ export const toolHandlers = {
51
53
  ...wcSettingHandlers,
52
54
  ...multisiteSiteHandlers,
53
55
  ...multisiteNetworkHandlers,
56
+ ...wcWebhookHandlers,
54
57
  };