mcp-wordpress 2.5.0 → 2.5.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.
Files changed (30) hide show
  1. package/README.md +19 -15
  2. package/bin/status.js +1 -1
  3. package/dist/config/ServerConfiguration.d.ts.map +1 -1
  4. package/dist/config/ServerConfiguration.js +23 -2
  5. package/dist/config/ServerConfiguration.js.map +1 -1
  6. package/docs/INSTALLATION.md +4 -2
  7. package/docs/TROUBLESHOOTING.md +2 -1
  8. package/docs/developer/TESTING.md +24 -19
  9. package/docs/integrations/claude-desktop.md +9 -4
  10. package/docs/user-guides/DXT_INSTALLATION.md +2 -1
  11. package/package.json +28 -29
  12. package/src/config/ServerConfiguration.ts +22 -2
  13. package/dist/ajv-patch.js +0 -34
  14. package/dist/cache/__tests__/CacheInvalidation.test.d.ts +0 -5
  15. package/dist/cache/__tests__/CacheInvalidation.test.d.ts.map +0 -1
  16. package/dist/cache/__tests__/CacheInvalidation.test.js +0 -238
  17. package/dist/cache/__tests__/CacheInvalidation.test.js.map +0 -1
  18. package/dist/cache/__tests__/CacheManager.test.d.ts +0 -5
  19. package/dist/cache/__tests__/CacheManager.test.d.ts.map +0 -1
  20. package/dist/cache/__tests__/CacheManager.test.js +0 -233
  21. package/dist/cache/__tests__/CacheManager.test.js.map +0 -1
  22. package/dist/cache/__tests__/CachedWordPressClient.test.d.ts +0 -5
  23. package/dist/cache/__tests__/CachedWordPressClient.test.d.ts.map +0 -1
  24. package/dist/cache/__tests__/CachedWordPressClient.test.js +0 -231
  25. package/dist/cache/__tests__/CachedWordPressClient.test.js.map +0 -1
  26. package/dist/cache/__tests__/HttpCacheWrapper.test.d.ts +0 -5
  27. package/dist/cache/__tests__/HttpCacheWrapper.test.d.ts.map +0 -1
  28. package/dist/cache/__tests__/HttpCacheWrapper.test.js +0 -300
  29. package/dist/cache/__tests__/HttpCacheWrapper.test.js.map +0 -1
  30. package/dist/dxt-entry.cjs +0 -81
package/README.md CHANGED
@@ -16,16 +16,16 @@ Manage WordPress sites with natural language through AI tools like Claude Deskto
16
16
  [![NPM Downloads](https://img.shields.io/npm/dm/mcp-wordpress?logo=npm&logoColor=white)](https://www.npmjs.com/package/mcp-wordpress)
17
17
  [![NPM Total Downloads](https://img.shields.io/npm/dt/mcp-wordpress?logo=npm&logoColor=white&label=total%20downloads)](https://www.npmjs.com/package/mcp-wordpress)
18
18
  [![Docker Pulls](https://img.shields.io/docker/pulls/docdyhr/mcp-wordpress?logo=docker&logoColor=white)](https://hub.docker.com/r/docdyhr/mcp-wordpress)
19
- [![Line Coverage](https://img.shields.io/badge/lines%20coverage-96.17%25-brightgreen?logo=jest&logoColor=white)](https://github.com/docdyhr/mcp-wordpress)
20
- [![Branch Coverage](https://img.shields.io/badge/branch%20coverage-95.83%25-brightgreen?logo=jest&logoColor=white)](https://github.com/docdyhr/mcp-wordpress)
21
- [![Function Coverage](https://img.shields.io/badge/function%20coverage-100.00%25-brightgreen?logo=jest&logoColor=white)](https://github.com/docdyhr/mcp-wordpress)
22
- [![Test Results](https://img.shields.io/badge/tests-884%2F1040%20passing-green?logo=checkmarx&logoColor=white)](https://github.com/docdyhr/mcp-wordpress)
19
+ [![Line Coverage](https://img.shields.io/badge/lines%20coverage-96.17%25-brightgreen?logo=vitest&logoColor=white)](https://github.com/docdyhr/mcp-wordpress)
20
+ [![Branch Coverage](https://img.shields.io/badge/branch%20coverage-95.83%25-brightgreen?logo=vitest&logoColor=white)](https://github.com/docdyhr/mcp-wordpress)
21
+ [![Function Coverage](https://img.shields.io/badge/function%20coverage-100.00%25-brightgreen?logo=vitest&logoColor=white)](https://github.com/docdyhr/mcp-wordpress)
22
+ [![Test Results](https://img.shields.io/badge/tests-512%2F512%20passing-brightgreen?logo=vitest&logoColor=white)](https://github.com/docdyhr/mcp-wordpress)
23
23
  [![MCP Evaluation](https://img.shields.io/badge/mcp%20evaluation-4.5%2F5.0-brightgreen?logo=openai&logoColor=white)](https://github.com/docdyhr/mcp-wordpress/actions/workflows/mcp-evaluations.yml)
24
24
 
25
25
  [![TypeScript](https://img.shields.io/badge/TypeScript-100%25-blue?logo=typescript&logoColor=white)](https://github.com/docdyhr/mcp-wordpress)
26
- [![Security Tests](https://img.shields.io/badge/security%20tests-40%2F40%20passing-brightgreen?logo=shield&logoColor=white)](https://github.com/docdyhr/mcp-wordpress/tree/main/tests/security)
26
+ [![Security Tests](https://img.shields.io/badge/security%20tests-%2F%20passing-brightgreen?logo=shield&logoColor=white)](https://github.com/docdyhr/mcp-wordpress/tree/main/tests/security)
27
27
  [![Vulnerabilities](https://img.shields.io/badge/vulnerabilities-0%20known-brightgreen?logo=security&logoColor=white)](https://github.com/docdyhr/mcp-wordpress/security/advisories)
28
- [![Penetration Testing](https://img.shields.io/badge/penetration%20testing-28%2F28%20passing-brightgreen?logo=bug&logoColor=white)](https://github.com/docdyhr/mcp-wordpress/blob/main/tests/security/penetration-tests.test.js)
28
+ [![Penetration Testing](https://img.shields.io/badge/penetration%20testing-%2F%20passing-brightgreen?logo=bug&logoColor=white)](https://github.com/docdyhr/mcp-wordpress/blob/main/tests/security/penetration-tests.test.js)
29
29
  [![Docker](https://img.shields.io/badge/docker-ready-blue?logo=docker&logoColor=white)](https://hub.docker.com/r/docdyhr/mcp-wordpress)
30
30
  [![License](https://img.shields.io/badge/license-MIT-green?logo=opensource&logoColor=white)](https://github.com/docdyhr/mcp-wordpress/blob/main/LICENSE)
31
31
  [![smithery badge](https://smithery.ai/badge/@docdyhr/mcp-wordpress)](https://smithery.ai/server/@docdyhr/mcp-wordpress)
@@ -45,7 +45,7 @@ Manage WordPress sites with natural language through AI tools like Claude Deskto
45
45
 
46
46
  - 🏆 **Most Complete**: 59 tools vs 20-30 in alternatives
47
47
  - ⚡ **Fastest Setup**: 2-click Claude Desktop installation via DXT
48
- - 🔒 **Production Ready**: 404 tests (expanding), security audited, battle-tested
48
+ - 🔒 **Production Ready**: 512 tests (100% pass rate), security audited, battle-tested
49
49
  - 🎯 **TypeScript Native**: 100% type safety, best-in-class developer experience
50
50
  - 🌐 **Multi-Site**: Manage unlimited WordPress sites from one place
51
51
 
@@ -73,7 +73,7 @@ WordPress Admin → Users → Profile → Application Passwords → Add New
73
73
 
74
74
  ```bash
75
75
  # Download and install in Claude Desktop
76
- curl -L https://github.com/docdyhr/mcp-wordpress/raw/main/mcp-wordpress.dxt -o mcp-wordpress.dxt
76
+ curl -L https://github.com/docdyhr/mcp-wordpress/releases/latest/download/mcp-wordpress.dxt -o mcp-wordpress.dxt
77
77
  # Then: Claude Desktop → Extensions → Install → Select DXT file
78
78
  ```
79
79
 
@@ -99,7 +99,8 @@ Response: "✅ Authentication successful! Connected to: Your Site Name"
99
99
 
100
100
  **Easiest installation - just 2 clicks!**
101
101
 
102
- 1. **Download**: [`mcp-wordpress.dxt`](https://github.com/docdyhr/mcp-wordpress/raw/main/mcp-wordpress.dxt) (2.6MB)
102
+ 1. **Download**: [`mcp-wordpress.dxt`](https://github.com/docdyhr/mcp-wordpress/releases/latest/download/mcp-wordpress.dxt)
103
+ (3.4MB)
103
104
  2. **Install**: Claude Desktop → Extensions → Install → Select DXT file
104
105
  3. **Configure**: Enter your WordPress site URL and credentials
105
106
 
@@ -362,7 +363,7 @@ define('JWT_AUTH_CORS_ENABLE', true);
362
363
 
363
364
  - **⚡ Intelligent Caching** - 50-70% performance improvement
364
365
  - **📊 Real-Time Monitoring** - Performance metrics and optimization insights
365
- - **🔒 Production Ready** - Security-reviewed, growing coverage (30% lines) after expanding test suite
366
+ - **🔒 Production Ready** - Security-reviewed, 96.17% line coverage with Vitest testing framework
366
367
  - **🔄 Zero Downtime** - Graceful error handling and automatic recovery
367
368
 
368
369
  #### Developer Experience
@@ -926,10 +927,10 @@ os-info >> debug-report.txt
926
927
 
927
928
  ### Current Test Status ✅
928
929
 
929
- - **Main Test Suite**: 404/404 passed (100%)
930
+ - **Main Test Suite**: 512/512 passed (100%) with Vitest
930
931
  - **Security Tests**: 40/40 passed (100%)
931
932
  - **Performance Tests**: 8/8 passed (100%)
932
- - **CI/CD Pipeline**: Fully functional
933
+ - **CI/CD Pipeline**: Fully functional with Vitest integration
933
934
 
934
935
  ### Test Your Installation
935
936
 
@@ -937,9 +938,12 @@ os-info >> debug-report.txt
937
938
  # Check connection status
938
939
  npm run status
939
940
 
940
- # Run full test suite
941
+ # Run full test suite (Vitest)
941
942
  npm test
942
943
 
944
+ # Run tests with coverage
945
+ npm run test:coverage
946
+
943
947
  # Quick validation
944
948
  npm run test:fast
945
949
  ```
@@ -1056,7 +1060,6 @@ npm run setup
1056
1060
  - **[Contributing](CONTRIBUTING.md)** - Development guidelines
1057
1061
  - **[Plugin Development](docs/developer/plugins.md)** - Extend functionality
1058
1062
 
1059
-
1060
1063
  ### Deployment & Operations
1061
1064
 
1062
1065
  - **[Docker Deployment](docs/deployment/docker.md)** - Container deployment
@@ -1114,7 +1117,8 @@ docker pull docdyhr/mcp-wordpress:1.3.1
1114
1117
 
1115
1118
  **Ready to transform your WordPress management?**
1116
1119
 
1117
- 1. **🏆 [Download DXT Extension](https://github.com/docdyhr/mcp-wordpress/raw/main/mcp-wordpress.dxt)** - Easiest setup
1120
+ 1. **🏆 [Download DXT Extension](https://github.com/docdyhr/mcp-wordpress/releases/latest/download/mcp-wordpress.dxt)** -
1121
+ Easiest setup
1118
1122
  (2 minutes)
1119
1123
  2. **⚡ [Try NPX Method](docs/user-guides/NPX_SETUP.md)** - Power user setup (5 minutes)
1120
1124
  3. **📚 [Explore All Tools](docs/api/README.md)** - See what's possible
package/bin/status.js CHANGED
@@ -18,7 +18,7 @@ class WordPressStatus {
18
18
 
19
19
  loadConfig() {
20
20
  if (existsSync(this.envPath)) {
21
- dotenv.config({ path: this.envPath });
21
+ dotenv.config({ path: this.envPath, debug: false });
22
22
  }
23
23
  }
24
24
 
@@ -1 +1 @@
1
- {"version":3,"file":"ServerConfiguration.d.ts","sourceRoot":"","sources":["../../src/config/ServerConfiguration.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAOnD,OAAO,EAEL,KAAK,QAAQ,IAAI,UAAU,EAC3B,KAAK,mBAAmB,IAAI,eAAe,EAC3C,KAAK,aAAa,EACnB,MAAM,0BAA0B,CAAC;AAGlC,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,CAAC;AAE3D;;;GAGG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAsB;IAC7C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;IACjD,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAS;;IAqBxB;;OAEG;WACW,WAAW,IAAI,mBAAmB;IAOhD;;;OAGG;IACI,wBAAwB,CAAC,SAAS,CAAC,EAAE,aAAa,GAAG;QAC1D,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;QACtC,OAAO,EAAE,UAAU,EAAE,CAAC;KACvB;IAkBD;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAkD3B;;OAEG;IACH,OAAO,CAAC,eAAe;IAIvB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAmC/B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IA4F7B;;OAEG;IACI,UAAU,IAAI,MAAM;CAG5B"}
1
+ {"version":3,"file":"ServerConfiguration.d.ts","sourceRoot":"","sources":["../../src/config/ServerConfiguration.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAOnD,OAAO,EAEL,KAAK,QAAQ,IAAI,UAAU,EAC3B,KAAK,mBAAmB,IAAI,eAAe,EAC3C,KAAK,aAAa,EACnB,MAAM,0BAA0B,CAAC;AAGlC,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,CAAC;AAE3D;;;GAGG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAsB;IAC7C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;IACjD,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAS;;IAyCxB;;OAEG;WACW,WAAW,IAAI,mBAAmB;IAOhD;;;OAGG;IACI,wBAAwB,CAAC,SAAS,CAAC,EAAE,aAAa,GAAG;QAC1D,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;QACtC,OAAO,EAAE,UAAU,EAAE,CAAC;KACvB;IAkBD;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAkD3B;;OAEG;IACH,OAAO,CAAC,eAAe;IAIvB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAmC/B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IA4F7B;;OAEG;IACI,UAAU,IAAI,MAAM;CAG5B"}
@@ -23,8 +23,29 @@ export class ServerConfiguration {
23
23
  const __dirname = path.dirname(__filename);
24
24
  this.rootDir = path.resolve(__dirname, "../..");
25
25
  this.envPath = path.resolve(this.rootDir, ".env");
26
- // Load environment variables
27
- dotenv.config({ path: this.envPath });
26
+ // Load environment variables (completely silent for MCP compatibility)
27
+ // Suppress dotenv output that could interfere with JSON-RPC communication
28
+ // eslint-disable-next-line no-console
29
+ const originalConsoleLog = console.log;
30
+ // eslint-disable-next-line no-console
31
+ const originalConsoleError = console.error;
32
+ try {
33
+ // eslint-disable-next-line no-console
34
+ console.log = () => { };
35
+ // eslint-disable-next-line no-console
36
+ console.error = () => { };
37
+ dotenv.config({
38
+ path: this.envPath,
39
+ debug: false,
40
+ override: false
41
+ });
42
+ }
43
+ finally {
44
+ // eslint-disable-next-line no-console
45
+ console.log = originalConsoleLog;
46
+ // eslint-disable-next-line no-console
47
+ console.error = originalConsoleError;
48
+ }
28
49
  // Debug output for DXT troubleshooting (reduced in DXT mode)
29
50
  if (ConfigHelpers.shouldDebug()) {
30
51
  this.logger.debug("ServerConfiguration initialized", {
@@ -1 +1 @@
1
- {"version":3,"file":"ServerConfiguration.js","sourceRoot":"","sources":["../../src/config/ServerConfiguration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ServerConfiguration.js","sourceRoot":"","sources":["../../src/config/ServerConfiguration.ts"],"names":[],"mappings":"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"}
@@ -27,7 +27,8 @@ The easiest way to get started with WordPress MCP in Claude Desktop.
27
27
  1. **Download DXT Package**
28
28
  ```bash
29
29
  # Download the latest DXT package
30
- curl -L -o mcp-wordpress.dxt https://github.com/docdyhr/mcp-wordpress/raw/main/mcp-wordpress.dxt
30
+ curl -L -o mcp-wordpress.dxt \
31
+ https://github.com/docdyhr/mcp-wordpress/releases/latest/download/mcp-wordpress.dxt
31
32
  ```
32
33
 
33
34
  2. **Install in Claude Desktop**
@@ -419,5 +420,6 @@ After successful installation:
419
420
 
420
421
  ---
421
422
 
422
- **Found an issue with this guide?** [Edit on GitHub](https://github.com/docdyhr/mcp-wordpress/edit/main/docs/INSTALLATION.md) or
423
+ **Found an issue with this guide?**
424
+ [Edit on GitHub](https://github.com/docdyhr/mcp-wordpress/edit/main/docs/INSTALLATION.md) or
423
425
  [open an issue](https://github.com/docdyhr/mcp-wordpress/issues/new).
@@ -412,7 +412,8 @@ npm run cache:stats
412
412
  # Recent fix for DXT: JSON parsing errors
413
413
  # Update to latest version
414
414
  curl -L -o mcp-wordpress.dxt \
415
- https://github.com/docdyhr/mcp-wordpress/raw/main/mcp-wordpress.dxt
415
+ https://github.com/docdyhr/mcp-wordpress/releases/latest/download/\
416
+ mcp-wordpress.dxt
416
417
 
417
418
  # Reinstall DXT extension
418
419
  ```
@@ -6,11 +6,11 @@ Comprehensive guide to the test suite, testing strategies, and best practices fo
6
6
 
7
7
  ### Current Test Status ✅
8
8
 
9
- - **Main Test Suite**: 207/207 passed (100%)
9
+ - **Main Test Suite**: 512/512 passed (100%) with Vitest
10
10
  - **Security Tests**: 40/40 passed (100%)
11
11
  - **Performance Tests**: 8/8 passed (100%)
12
- - **CI/CD Pipeline**: Fully functional
13
- - **Code Coverage**: 95%+ coverage maintained
12
+ - **CI/CD Pipeline**: Fully functional with Vitest integration
13
+ - **Code Coverage**: 96.17% line coverage maintained
14
14
 
15
15
  ### Test Architecture
16
16
 
@@ -101,14 +101,19 @@ npm run test:with-env # Tests with Docker WordPress
101
101
 
102
102
  ## 🔧 Test Configuration
103
103
 
104
- ### Jest Configuration
104
+ ### Vitest Configuration
105
105
 
106
- ```javascript
107
- // jest.config.js
108
- module.exports = {
109
- testEnvironment: "node",
110
- testMatch: ["**/tests/**/*.test.js"],
111
- collectCoverageFrom: ["src/**/*.ts", "!src/**/*.d.ts", "!src/**/*.test.ts"],
106
+ ```typescript
107
+ // vitest.config.ts
108
+ import { defineConfig } from 'vitest/config';
109
+
110
+ export default defineConfig({
111
+ test: {
112
+ environment: 'node',
113
+ include: ['tests/**/*.test.js'],
114
+ coverage: {
115
+ include: ['src/**/*.ts'],
116
+ exclude: ['src/**/*.d.ts', 'src/**/*.test.ts'],
112
117
  coverageThreshold: {
113
118
  global: {
114
119
  branches: 50,
@@ -646,15 +651,15 @@ describe("Component Name", () => {
646
651
  // tests/utils/mocks.js
647
652
  export const mockWordPressClient = {
648
653
  posts: {
649
- create: jest.fn(),
650
- update: jest.fn(),
651
- delete: jest.fn(),
652
- get: jest.fn(),
653
- list: jest.fn(),
654
+ create: vi.fn(),
655
+ update: vi.fn(),
656
+ delete: vi.fn(),
657
+ get: vi.fn(),
658
+ list: vi.fn(),
654
659
  },
655
660
  auth: {
656
- authenticate: jest.fn(),
657
- getAuthHeaders: jest.fn(),
661
+ authenticate: vi.fn(),
662
+ getAuthHeaders: vi.fn(),
658
663
  },
659
664
  };
660
665
 
@@ -699,8 +704,8 @@ DEBUG=true npm test
699
704
  # Debug specific test file
700
705
  DEBUG=true npm test -- tests/integration/wordpress-api.test.js
701
706
 
702
- # Debug with Node.js inspector
703
- node --inspect-brk ./node_modules/.bin/jest --runInBand
707
+ # Debug with Node.js inspector (Vitest)
708
+ node --inspect-brk ./node_modules/.bin/vitest run --no-coverage
704
709
  ```
705
710
 
706
711
  ### Test Debugging Tools
@@ -23,12 +23,15 @@ command line, no configuration files - just click and configure.
23
23
 
24
24
  **Option A: Direct Download**
25
25
 
26
- - Click here: [`mcp-wordpress.dxt`](https://github.com/docdyhr/mcp-wordpress/raw/main/mcp-wordpress.dxt) (2.6MB)
26
+ - Click here:
27
+ [`mcp-wordpress.dxt`](https://github.com/docdyhr/mcp-wordpress/releases/latest/download/mcp-wordpress.dxt)
28
+ (3.4MB)
27
29
 
28
30
  **Option B: Command Line**
29
31
 
30
32
  ```bash
31
- curl -L -o mcp-wordpress.dxt https://github.com/docdyhr/mcp-wordpress/raw/main/mcp-wordpress.dxt
33
+ curl -L -o mcp-wordpress.dxt \
34
+ https://github.com/docdyhr/mcp-wordpress/releases/latest/download/mcp-wordpress.dxt
32
35
  ```
33
36
 
34
37
  ### Step 2: Install in Claude Desktop
@@ -201,7 +204,8 @@ For advanced users, the DXT extension supports:
201
204
  ls -la mcp-wordpress.dxt
202
205
 
203
206
  # Re-download if file size seems wrong
204
- curl -L -o mcp-wordpress.dxt https://github.com/docdyhr/mcp-wordpress/raw/main/mcp-wordpress.dxt
207
+ curl -L -o mcp-wordpress.dxt \
208
+ https://github.com/docdyhr/mcp-wordpress/releases/latest/download/mcp-wordpress.dxt
205
209
 
206
210
  # Reinstall extension
207
211
  # Remove from Claude Desktop and reinstall
@@ -422,5 +426,6 @@ When reporting DXT-related issues, include:
422
426
  ---
423
427
 
424
428
  **Ready to get started?**
425
- [Download the DXT extension](https://github.com/docdyhr/mcp-wordpress/raw/main/mcp-wordpress.dxt) and transform your
429
+ [Download the DXT extension](https://github.com/docdyhr/mcp-wordpress/releases/latest/download/mcp-wordpress.dxt)
430
+ and transform your
426
431
  WordPress management experience!
@@ -14,7 +14,8 @@ This guide walks you through installing the WordPress MCP Server as a Claude Des
14
14
 
15
15
  **Option A: Download Pre-built Package**
16
16
 
17
- - Download `mcp-wordpress.dxt` from the releases page
17
+ - Download [`mcp-wordpress.dxt`](https://github.com/docdyhr/mcp-wordpress/releases/latest/download/mcp-wordpress.dxt)
18
+ from the releases page
18
19
  - Skip to step 2
19
20
 
20
21
  **Option B: Build from Source**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mcp-wordpress",
3
- "version": "2.5.0",
3
+ "version": "2.5.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 - CI/CD test",
5
5
  "keywords": [
6
6
  "mcp",
@@ -104,30 +104,32 @@
104
104
  "setup": "node bin/setup.js",
105
105
  "start": "npm run build && node dist/index.js",
106
106
  "status": "node bin/status.js",
107
- "test": "npm run test:typescript",
107
+ "test": "npm run build && vitest run",
108
108
  "test:auth": "node scripts/test-auth.js",
109
- "test:cache": "npm run build && NODE_OPTIONS=\"--experimental-vm-modules\" jest tests/cache/",
110
- "test:ci": "npm run build && CI=true NODE_OPTIONS=\"--experimental-vm-modules\" jest --runInBand",
109
+ "test:cache": "npm run build && vitest run tests/cache/",
110
+ "test:ci": "npm run build && CI=true vitest run",
111
111
  "test:compatibility": "echo '✅ Live compatibility tests bypassed - focusing on coverage collection and badge generation'",
112
- "test:config": "npm run build && NODE_OPTIONS=\"--experimental-vm-modules\" jest tests/config/",
112
+ "test:config": "npm run build && vitest run tests/config/",
113
113
  "test:contracts": "npm run test:compatibility",
114
- "test:coverage": "NODE_OPTIONS=\"--experimental-vm-modules\" npx jest --config=jest.typescript.config.json --coverage",
115
- "test:coverage:baseline": "NODE_OPTIONS=\"--experimental-vm-modules\" npx jest --config=jest.baseline.config.json --coverage",
116
- "test:coverage:ci": "npm run build && NODE_OPTIONS=\"--experimental-vm-modules\" jest --config=jest.config.cjs --coverage --testPathIgnorePatterns=\"tests/server/\" --testPathIgnorePatterns=\"tests/contracts/\" --forceExit --detectOpenHandles --silent",
114
+ "test:coverage": "npm run build && vitest run --coverage",
115
+ "test:coverage:baseline": "npm run build && vitest run --coverage",
116
+ "test:coverage:ci": "npm run build && vitest run --coverage --silent",
117
117
  "test:coverage:report": "npm run test:coverage && node scripts/coverage-guardrail.js",
118
118
  "test:fast": "npm run test:typescript",
119
119
  "test:integration": "node scripts/test-integration.js",
120
- "test:legacy": "npm run build && NODE_OPTIONS=\"--experimental-vm-modules\" jest",
120
+ "test:legacy": "npm run build && vitest run",
121
121
  "test:mcp": "node scripts/test-mcp.js",
122
122
  "test:multisite": "node scripts/test-multisite-quick.js",
123
- "test:performance": "npm run build && NODE_OPTIONS=\"--experimental-vm-modules\" jest tests/performance/ --passWithNoTests",
124
- "test:property": "npm run build && NODE_OPTIONS=\"--experimental-vm-modules\" jest tests/property/",
125
- "test:security": "npm run build && NODE_OPTIONS=\"--experimental-vm-modules\" jest tests/security/",
126
- "test:security:penetration": "npm run build && NODE_OPTIONS=\"--experimental-vm-modules\" jest tests/security/penetration-tests.test.js",
127
- "test:security:validation": "npm run build && NODE_OPTIONS=\"--experimental-vm-modules\" jest tests/security/security-validation.test.js",
123
+ "test:performance": "npm run build && vitest run tests/performance/",
124
+ "test:performance:ci": "npm run build && vitest run tests/performance/ --exclude=\"**/regression-detection.test.js\"",
125
+ "test:property": "npm run build && vitest run tests/property/",
126
+ "test:security": "npm run build && vitest run tests/security/",
127
+ "test:security:penetration": "npm run build && vitest run tests/security/penetration-tests.test.js",
128
+ "test:security:validation": "npm run build && vitest run tests/security/security-validation.test.js",
128
129
  "test:tools": "node scripts/test-all-tools-fixed.js",
129
- "test:typescript": "npm run build && NODE_OPTIONS=\"--experimental-vm-modules\" jest",
130
- "test:watch": "NODE_OPTIONS=\"--experimental-vm-modules\" jest --watch",
130
+ "test:typescript": "npm run build && vitest run",
131
+ "test:ui": "npm run build && vitest --ui",
132
+ "test:watch": "vitest",
131
133
  "test:weekly": "npm run test:compatibility",
132
134
  "test:with-env": "bash scripts/start-test-env.sh && npm run test:typescript",
133
135
  "typecheck": "tsc --noEmit",
@@ -153,34 +155,31 @@
153
155
  }
154
156
  },
155
157
  "dependencies": {
156
- "@modelcontextprotocol/sdk": "^1.17.1",
158
+ "@modelcontextprotocol/sdk": "^1.17.4",
157
159
  "dotenv": "^17.2.1",
158
160
  "form-data": "^4.0.4",
159
161
  "zod": "^3.25.76"
160
162
  },
161
163
  "devDependencies": {
162
- "@eslint/js": "^9.32.0",
163
- "@jest/globals": "^30.0.5",
164
+ "@eslint/js": "^9.34.0",
164
165
  "@pact-foundation/pact": "^15.0.1",
165
166
  "@pact-foundation/pact-node": "^10.18.0",
166
167
  "@semantic-release/changelog": "^6.0.3",
167
168
  "@semantic-release/git": "^10.0.1",
168
- "@types/jest": "^30.0.0",
169
- "@types/node": "^20.19.9",
170
- "@typescript-eslint/eslint-plugin": "^8.39.0",
171
- "@typescript-eslint/parser": "^8.39.0",
169
+ "@types/node": "^20.19.11",
170
+ "@typescript-eslint/eslint-plugin": "^8.40.0",
171
+ "@typescript-eslint/parser": "^8.40.0",
172
+ "@vitest/coverage-v8": "^3.2.4",
173
+ "@vitest/ui": "^3.2.4",
172
174
  "archiver": "^7.0.1",
173
- "babel-jest": "^30.0.5",
174
175
  "c8": "^10.1.3",
175
176
  "conventional-changelog-conventionalcommits": "^9.1.0",
176
- "eslint": "^9.32.0",
177
+ "eslint": "^9.34.0",
177
178
  "eslint-config-prettier": "^10.1.8",
178
- "eslint-plugin-jest": "^29.0.1",
179
179
  "eslint-plugin-node": "^11.1.0",
180
180
  "fast-check": "^4.2.0",
181
181
  "fs-extra": "^11.3.0",
182
182
  "husky": "^9.1.7",
183
- "jest": "^30.0.5",
184
183
  "lint-staged": "^16.1.4",
185
184
  "markdownlint-cli": "^0.45.0",
186
185
  "mcp-evals": "^2.0.1",
@@ -190,8 +189,8 @@
190
189
  "prettier": "^3.6.2",
191
190
  "semantic-release": "^24.2.7",
192
191
  "sort-package-json": "^3.4.0",
193
- "ts-jest": "^29.4.1",
194
- "typescript": "^5.9.2"
192
+ "typescript": "^5.9.2",
193
+ "vitest": "^3.2.4"
195
194
  },
196
195
  "engines": {
197
196
  "node": ">=20.8.1"
@@ -35,8 +35,28 @@ export class ServerConfiguration {
35
35
  this.rootDir = path.resolve(__dirname, "../..");
36
36
  this.envPath = path.resolve(this.rootDir, ".env");
37
37
 
38
- // Load environment variables
39
- dotenv.config({ path: this.envPath });
38
+ // Load environment variables (completely silent for MCP compatibility)
39
+ // Suppress dotenv output that could interfere with JSON-RPC communication
40
+ // eslint-disable-next-line no-console
41
+ const originalConsoleLog = console.log;
42
+ // eslint-disable-next-line no-console
43
+ const originalConsoleError = console.error;
44
+ try {
45
+ // eslint-disable-next-line no-console
46
+ console.log = () => {};
47
+ // eslint-disable-next-line no-console
48
+ console.error = () => {};
49
+ dotenv.config({
50
+ path: this.envPath,
51
+ debug: false,
52
+ override: false
53
+ });
54
+ } finally {
55
+ // eslint-disable-next-line no-console
56
+ console.log = originalConsoleLog;
57
+ // eslint-disable-next-line no-console
58
+ console.error = originalConsoleError;
59
+ }
40
60
 
41
61
  // Debug output for DXT troubleshooting (reduced in DXT mode)
42
62
  if (ConfigHelpers.shouldDebug()) {
package/dist/ajv-patch.js DELETED
@@ -1,34 +0,0 @@
1
- /**
2
- * AJV patch to handle missing refs directory in DXT package
3
- */
4
-
5
- const fs = require('fs');
6
- const path = require('path');
7
-
8
- // Patch the AJV module to use our embedded schema files
9
- const originalRequire = require;
10
- const Module = require('module');
11
-
12
- const originalResolveFilename = Module._resolveFilename;
13
- Module._resolveFilename = function(request, parent, isMain) {
14
- // Intercept requests for AJV refs
15
- if (request.includes('refs/json-schema-draft-07.json')) {
16
- return path.join(__dirname, 'ajv-refs', 'json-schema-draft-07.json');
17
- }
18
- if (request.includes('refs/json-schema-draft-04.json')) {
19
- return path.join(__dirname, 'ajv-refs', 'json-schema-draft-04.json');
20
- }
21
- if (request.includes('refs/json-schema-draft-06.json')) {
22
- return path.join(__dirname, 'ajv-refs', 'json-schema-draft-06.json');
23
- }
24
- if (request.includes('refs/json-schema-secure.json')) {
25
- return path.join(__dirname, 'ajv-refs', 'json-schema-secure.json');
26
- }
27
- if (request.includes('refs/data.json')) {
28
- return path.join(__dirname, 'ajv-refs', 'data.json');
29
- }
30
-
31
- return originalResolveFilename.call(this, request, parent, isMain);
32
- };
33
-
34
- module.exports = {};
@@ -1,5 +0,0 @@
1
- /**
2
- * Tests for CacheInvalidation
3
- */
4
- export {};
5
- //# sourceMappingURL=CacheInvalidation.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CacheInvalidation.test.d.ts","sourceRoot":"","sources":["../../../src/cache/__tests__/CacheInvalidation.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}