mcp-wordpress 2.4.0 → 2.4.2

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/README.md CHANGED
@@ -1057,6 +1057,14 @@ docker pull docdyhr/mcp-wordpress:1.3.1
1057
1057
 
1058
1058
  ---
1059
1059
 
1060
+ ## 🔗 Similar Projects
1061
+
1062
+ Looking for alternatives or complementary tools? Check out these WordPress MCP implementations:
1063
+
1064
+ - **[Automattic WordPress MCP](https://github.com/Automattic/wordpress-mcp)** - Official WordPress MCP server by Automattic
1065
+
1066
+ ---
1067
+
1060
1068
  ## 🙏 Acknowledgments
1061
1069
 
1062
1070
  Special thanks to **[Stephan Ferraro](https://github.com/ferraro)** for the upstream project that inspired this
File without changes
@@ -0,0 +1,119 @@
1
+ # Demonstration: Resolving v2.2.0 Docker Publishing Issue
2
+
3
+ This document demonstrates how to resolve the v2.2.0 Docker publishing issue using the improved tooling.
4
+
5
+ ## Current Situation
6
+ - ✅ NPM: v2.2.0 published successfully
7
+ - ❌ Docker Hub: v2.2.0 missing from registry
8
+ - 🎯 Goal: Publish missing Docker image for v2.2.0
9
+
10
+ ## Resolution Options
11
+
12
+ ### Option 1: Automated Retry Workflow (Recommended)
13
+ ```bash
14
+ # Trigger the new retry workflow
15
+ gh workflow run docker-publish-retry.yml \
16
+ -f version="2.2.0" \
17
+ -f force_rebuild=false
18
+ ```
19
+
20
+ **What it does:**
21
+ 1. Checks if v2.2.0 tag exists in git ✅
22
+ 2. Verifies if Docker image already exists (it doesn't) ❌
23
+ 3. Builds Docker image with enhanced Dockerfile:
24
+ - Tries multiple Alpine mirrors automatically
25
+ - Uses timeout protection
26
+ - Graceful fallback if mirrors fail
27
+ 4. Attempts multi-platform build (linux/amd64,linux/arm64)
28
+ 5. If that fails, retries with single platform
29
+ 6. If that fails, retries with AMD64-only
30
+ 7. Pushes to Docker Hub with tags: `2.2.0` and `v2.2.0`
31
+ 8. Updates Docker Hub description
32
+ 9. Verifies successful publication
33
+
34
+ ### Option 2: Manual Script (For Immediate Resolution)
35
+ ```bash
36
+ # Run the manual publishing script
37
+ ./scripts/manual-docker-publish.sh
38
+ ```
39
+
40
+ **Interactive process:**
41
+ 1. Script validates environment and git state
42
+ 2. Checks out v2.2.0 tag
43
+ 3. Builds Docker image locally with enhanced robustness
44
+ 4. Prompts for confirmation before pushing
45
+ 5. Pushes to Docker Hub
46
+ 6. Returns to original git state
47
+ 7. Provides verification links
48
+
49
+ ### Option 3: GitHub Web Interface
50
+ 1. Go to: https://github.com/docdyhr/mcp-wordpress/actions/workflows/docker-publish-retry.yml
51
+ 2. Click "Run workflow"
52
+ 3. Enter version: `2.2.0`
53
+ 4. Leave "Force rebuild" unchecked
54
+ 5. Click "Run workflow"
55
+
56
+ ## Expected Results
57
+
58
+ After successful execution:
59
+ - ✅ Docker image available: `docdyhr/mcp-wordpress:2.2.0`
60
+ - ✅ Docker image available: `docdyhr/mcp-wordpress:v2.2.0`
61
+ - ✅ Verification link: https://hub.docker.com/r/docdyhr/mcp-wordpress/tags?name=2.2.0
62
+
63
+ ## Verification
64
+
65
+ ### Verify Docker Image Exists
66
+ ```bash
67
+ # Pull the image to verify it exists
68
+ docker pull docdyhr/mcp-wordpress:2.2.0
69
+
70
+ # Inspect the image
71
+ docker inspect docdyhr/mcp-wordpress:2.2.0
72
+
73
+ # Check image metadata
74
+ docker manifest inspect docdyhr/mcp-wordpress:2.2.0
75
+ ```
76
+
77
+ ### Verify on Docker Hub
78
+ Visit: https://hub.docker.com/r/docdyhr/mcp-wordpress/tags?name=2.2.0
79
+
80
+ Should show:
81
+ - Tag: `2.2.0`
82
+ - Tag: `v2.2.0`
83
+ - Size information
84
+ - Last updated timestamp
85
+ - Platform support (linux/amd64 minimum, linux/arm64 if multi-platform succeeded)
86
+
87
+ ## Prevention for Future Releases
88
+
89
+ The enhanced workflows now include:
90
+
91
+ ### Automatic Protection
92
+ 1. **Enhanced Dockerfile**: Multiple Alpine mirrors with fallback
93
+ 2. **Retry Logic**: Release workflow automatically retries failed Docker builds
94
+ 3. **Extended Verification**: 3-minute propagation wait + multiple verification methods
95
+ 4. **Auto-Retry**: Verification failure automatically triggers retry workflow
96
+
97
+ ### Manual Tools
98
+ 1. **Retry Workflow**: Available for any version via GitHub Actions
99
+ 2. **Manual Script**: Local building and publishing with safety checks
100
+ 3. **Force Rebuild**: Option to rebuild existing versions if needed
101
+
102
+ ### Monitoring
103
+ 1. **GitHub Issues**: Automatic issue creation for publishing failures
104
+ 2. **Detailed Logs**: Enhanced debugging information in all workflows
105
+ 3. **Success Notifications**: Confirmation when publishing succeeds
106
+
107
+ ## Immediate Next Steps
108
+
109
+ To resolve the v2.2.0 issue immediately:
110
+
111
+ 1. **Quickest**: Use GitHub web interface to trigger retry workflow
112
+ 2. **Most Control**: Run manual script locally if you have Docker Hub credentials
113
+ 3. **Automated**: Let the verification workflow detect and auto-retry
114
+
115
+ All methods use the enhanced Dockerfile that addresses the root cause (Alpine repository connectivity issues) that caused the original v2.2.0 publishing failure.
116
+
117
+ ---
118
+
119
+ *This solution ensures v2.2.0 is properly published while establishing robust processes to prevent similar issues in future releases.*
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mcp-wordpress",
3
- "version": "2.4.0",
3
+ "version": "2.4.2",
4
4
  "description": "Comprehensive Model Context Protocol server for WordPress management with 59 tools, performance monitoring, intelligent caching, auto-generated documentation, Docker support, TypeScript, and production-ready authentication",
5
5
  "keywords": [
6
6
  "mcp",
@@ -106,7 +106,7 @@
106
106
  "test:legacy": "npm run build && NODE_OPTIONS=\"--experimental-vm-modules\" jest",
107
107
  "test:mcp": "node scripts/test-mcp.js",
108
108
  "test:multisite": "node scripts/test-multisite-quick.js",
109
- "test:performance": "npm run build && NODE_OPTIONS=\"--experimental-vm-modules\" jest tests/performance/",
109
+ "test:performance": "npm run build && NODE_OPTIONS=\"--experimental-vm-modules\" jest tests/performance/ --passWithNoTests",
110
110
  "test:property": "npm run build && NODE_OPTIONS=\"--experimental-vm-modules\" jest tests/property/",
111
111
  "test:security": "npm run build && NODE_OPTIONS=\"--experimental-vm-modules\" jest tests/security/",
112
112
  "test:security:penetration": "npm run build && NODE_OPTIONS=\"--experimental-vm-modules\" jest tests/security/penetration-tests.test.js",
@@ -130,6 +130,13 @@
130
130
  "sort-package-json"
131
131
  ]
132
132
  },
133
+ "overrides": {
134
+ "@pact-foundation/pact-node": {
135
+ "@types/request": {
136
+ "form-data": "^4.0.3"
137
+ }
138
+ }
139
+ },
133
140
  "dependencies": {
134
141
  "@modelcontextprotocol/sdk": "^1.0.0",
135
142
  "dotenv": "^16.3.1",