mcp-wordpress 1.2.2 → 1.3.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/README.md +210 -182
- package/dist/cache/CacheInvalidation.d.ts +3 -3
- package/dist/cache/CacheInvalidation.d.ts.map +1 -1
- package/dist/cache/CacheInvalidation.js +119 -119
- package/dist/cache/CacheInvalidation.js.map +1 -1
- package/dist/cache/CacheManager.d.ts +5 -0
- package/dist/cache/CacheManager.d.ts.map +1 -1
- package/dist/cache/CacheManager.js +26 -16
- package/dist/cache/CacheManager.js.map +1 -1
- package/dist/cache/HttpCacheWrapper.d.ts +1 -1
- package/dist/cache/HttpCacheWrapper.d.ts.map +1 -1
- package/dist/cache/HttpCacheWrapper.js +29 -29
- package/dist/cache/HttpCacheWrapper.js.map +1 -1
- package/dist/cache/__tests__/CacheInvalidation.test.js +96 -94
- package/dist/cache/__tests__/CacheInvalidation.test.js.map +1 -1
- package/dist/cache/__tests__/CacheManager.test.js +113 -113
- package/dist/cache/__tests__/CacheManager.test.js.map +1 -1
- package/dist/cache/__tests__/CachedWordPressClient.test.js +102 -99
- package/dist/cache/__tests__/CachedWordPressClient.test.js.map +1 -1
- package/dist/cache/__tests__/HttpCacheWrapper.test.js +98 -95
- package/dist/cache/__tests__/HttpCacheWrapper.test.js.map +1 -1
- package/dist/cache/index.d.ts +7 -7
- package/dist/cache/index.d.ts.map +1 -1
- package/dist/cache/index.js +4 -4
- package/dist/cache/index.js.map +1 -1
- package/dist/client/CachedWordPressClient.d.ts +4 -4
- package/dist/client/CachedWordPressClient.d.ts.map +1 -1
- package/dist/client/CachedWordPressClient.js +55 -51
- package/dist/client/CachedWordPressClient.js.map +1 -1
- package/dist/client/api.d.ts +10 -10
- package/dist/client/api.js +158 -158
- package/dist/client/api.js.map +1 -1
- package/dist/client/auth.d.ts +2 -2
- package/dist/client/auth.js +72 -72
- package/dist/client/managers/AuthenticationManager.d.ts +2 -2
- package/dist/client/managers/AuthenticationManager.js +46 -46
- package/dist/client/managers/BaseManager.d.ts +1 -1
- package/dist/client/managers/BaseManager.js +9 -9
- package/dist/client/managers/RequestManager.d.ts +5 -3
- package/dist/client/managers/RequestManager.d.ts.map +1 -1
- package/dist/client/managers/RequestManager.js +39 -19
- package/dist/client/managers/RequestManager.js.map +1 -1
- package/dist/client/managers/index.d.ts +3 -3
- package/dist/client/managers/index.js +3 -3
- package/dist/config/ConfigurationSchema.d.ts +2 -2
- package/dist/config/ConfigurationSchema.d.ts.map +1 -1
- package/dist/config/ConfigurationSchema.js +40 -40
- package/dist/config/ConfigurationSchema.js.map +1 -1
- package/dist/config/ServerConfiguration.d.ts +2 -2
- package/dist/config/ServerConfiguration.js +35 -35
- package/dist/config/ServerConfiguration.js.map +1 -1
- package/dist/docs/DocumentationGenerator.d.ts.map +1 -1
- package/dist/docs/DocumentationGenerator.js +296 -255
- package/dist/docs/DocumentationGenerator.js.map +1 -1
- package/dist/docs/MarkdownFormatter.d.ts +1 -1
- package/dist/docs/MarkdownFormatter.d.ts.map +1 -1
- package/dist/docs/MarkdownFormatter.js +60 -51
- package/dist/docs/MarkdownFormatter.js.map +1 -1
- package/dist/docs/index.d.ts +3 -3
- package/dist/docs/index.d.ts.map +1 -1
- package/dist/docs/index.js +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +16 -16
- package/dist/index.js.map +1 -1
- package/dist/mcp-wordpress-1.3.0.tgz +0 -0
- package/dist/performance/MetricsCollector.d.ts +3 -3
- package/dist/performance/MetricsCollector.d.ts.map +1 -1
- package/dist/performance/MetricsCollector.js +33 -27
- package/dist/performance/MetricsCollector.js.map +1 -1
- package/dist/performance/PerformanceAnalytics.d.ts +12 -12
- package/dist/performance/PerformanceAnalytics.d.ts.map +1 -1
- package/dist/performance/PerformanceAnalytics.js +200 -154
- package/dist/performance/PerformanceAnalytics.js.map +1 -1
- package/dist/performance/PerformanceMonitor.d.ts +5 -5
- package/dist/performance/PerformanceMonitor.d.ts.map +1 -1
- package/dist/performance/PerformanceMonitor.js +53 -52
- package/dist/performance/PerformanceMonitor.js.map +1 -1
- package/dist/performance/index.d.ts +6 -6
- package/dist/performance/index.d.ts.map +1 -1
- package/dist/performance/index.js +3 -3
- package/dist/security/InputValidator.d.ts +1 -1
- package/dist/security/InputValidator.d.ts.map +1 -1
- package/dist/security/InputValidator.js +111 -88
- package/dist/security/InputValidator.js.map +1 -1
- package/dist/security/SecurityConfig.d.ts +5 -5
- package/dist/security/SecurityConfig.js +92 -92
- package/dist/security/SecurityConfig.js.map +1 -1
- package/dist/server/ConnectionTester.d.ts +1 -1
- package/dist/server/ConnectionTester.d.ts.map +1 -1
- package/dist/server/ConnectionTester.js +4 -4
- package/dist/server/ConnectionTester.js.map +1 -1
- package/dist/server/ToolRegistry.d.ts +2 -2
- package/dist/server/ToolRegistry.d.ts.map +1 -1
- package/dist/server/ToolRegistry.js +35 -32
- package/dist/server/ToolRegistry.js.map +1 -1
- package/dist/server.d.ts +2 -2
- package/dist/server.js +2 -2
- package/dist/tools/BaseToolManager.js +5 -5
- package/dist/tools/auth.d.ts +2 -2
- package/dist/tools/auth.d.ts.map +1 -1
- package/dist/tools/auth.js +32 -31
- package/dist/tools/auth.js.map +1 -1
- package/dist/tools/cache.d.ts +1 -1
- package/dist/tools/cache.d.ts.map +1 -1
- package/dist/tools/cache.js +71 -71
- package/dist/tools/cache.js.map +1 -1
- package/dist/tools/comments.d.ts +2 -2
- package/dist/tools/comments.d.ts.map +1 -1
- package/dist/tools/comments.js +79 -79
- package/dist/tools/comments.js.map +1 -1
- package/dist/tools/index.d.ts +10 -10
- package/dist/tools/index.js +10 -10
- package/dist/tools/media.d.ts +2 -2
- package/dist/tools/media.js +80 -80
- package/dist/tools/pages.d.ts +2 -2
- package/dist/tools/pages.d.ts.map +1 -1
- package/dist/tools/pages.js +75 -75
- package/dist/tools/pages.js.map +1 -1
- package/dist/tools/performance.d.ts +1 -1
- package/dist/tools/performance.d.ts.map +1 -1
- package/dist/tools/performance.js +311 -287
- package/dist/tools/performance.js.map +1 -1
- package/dist/tools/posts.d.ts +2 -2
- package/dist/tools/posts.d.ts.map +1 -1
- package/dist/tools/posts.js +94 -94
- package/dist/tools/posts.js.map +1 -1
- package/dist/tools/site.d.ts +2 -2
- package/dist/tools/site.d.ts.map +1 -1
- package/dist/tools/site.js +60 -60
- package/dist/tools/site.js.map +1 -1
- package/dist/tools/taxonomies.d.ts +2 -2
- package/dist/tools/taxonomies.js +89 -89
- package/dist/tools/users.d.ts +2 -2
- package/dist/tools/users.js +68 -68
- package/dist/tools/users.js.map +1 -1
- package/dist/types/client.d.ts +13 -13
- package/dist/types/client.d.ts.map +1 -1
- package/dist/types/client.js +12 -12
- package/dist/types/client.js.map +1 -1
- package/dist/types/index.d.ts +19 -19
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +3 -3
- package/dist/types/mcp.d.ts +7 -7
- package/dist/types/wordpress.d.ts +21 -21
- package/dist/types/wordpress.d.ts.map +1 -1
- package/dist/utils/debug.d.ts +2 -2
- package/dist/utils/debug.js +28 -28
- package/dist/utils/error.d.ts.map +1 -1
- package/dist/utils/error.js +13 -13
- package/dist/utils/error.js.map +1 -1
- package/dist/utils/toolWrapper.d.ts.map +1 -1
- package/dist/utils/toolWrapper.js +5 -5
- package/dist/utils/toolWrapper.js.map +1 -1
- package/dist/utils/validation.d.ts.map +1 -1
- package/dist/utils/validation.js +41 -31
- package/dist/utils/validation.js.map +1 -1
- package/docs/CACHING.md +36 -2
- package/docs/DOCKER.md +24 -18
- package/docs/PERFORMANCE_MONITORING.md +49 -1
- package/docs/SECURITY_TESTING.md +30 -1
- package/docs/api/README.md +9 -1
- package/docs/api/summary.json +1 -1
- package/docs/contract-testing.md +24 -3
- package/docs/developer/GITHUB_ACTIONS_SETUP.md +8 -2
- package/docs/developer/MAINTENANCE.md +29 -3
- package/docs/developer/MIGRATION_GUIDE.md +13 -1
- package/docs/developer/NPM_AUTH_SETUP.md +13 -2
- package/docs/developer/REFACTORING.md +31 -1
- package/docs/releases/COMMUNITY_ANNOUNCEMENT_v1.1.2.md +18 -7
- package/docs/releases/RELEASE_NOTES_v1.1.2.md +31 -5
- package/docs/user-guides/DOCKER_SETUP.md +264 -0
- package/docs/user-guides/DTX_SETUP.md +327 -0
- package/docs/user-guides/NPM_SETUP.md +109 -0
- package/docs/user-guides/NPX_SETUP.md +281 -0
- package/docs/wordpress-rest-api-authentication-troubleshooting.md +13 -2
- package/package.json +27 -8
- package/src/cache/CacheInvalidation.ts +140 -132
- package/src/cache/CacheManager.ts +40 -29
- package/src/cache/HttpCacheWrapper.ts +105 -68
- package/src/cache/__tests__/CacheInvalidation.test.ts +123 -118
- package/src/cache/__tests__/CacheManager.test.ts +156 -152
- package/src/cache/__tests__/CachedWordPressClient.test.ts +131 -116
- package/src/cache/__tests__/HttpCacheWrapper.test.ts +118 -115
- package/src/cache/index.ts +13 -13
- package/src/client/CachedWordPressClient.ts +90 -80
- package/src/client/api.ts +205 -205
- package/src/client/auth.ts +80 -80
- package/src/client/managers/AuthenticationManager.ts +61 -61
- package/src/client/managers/BaseManager.ts +11 -11
- package/src/client/managers/RequestManager.ts +79 -47
- package/src/client/managers/index.ts +3 -3
- package/src/config/ConfigurationSchema.ts +44 -44
- package/src/config/ServerConfiguration.ts +39 -39
- package/src/docs/DocumentationGenerator.ts +402 -295
- package/src/docs/MarkdownFormatter.ts +94 -69
- package/src/docs/index.ts +4 -4
- package/src/index.ts +24 -21
- package/src/performance/MetricsCollector.ts +90 -58
- package/src/performance/PerformanceAnalytics.ts +386 -262
- package/src/performance/PerformanceMonitor.ts +152 -118
- package/src/performance/index.ts +9 -9
- package/src/security/InputValidator.ts +148 -91
- package/src/security/SecurityConfig.ts +94 -94
- package/src/server/ConnectionTester.ts +21 -15
- package/src/server/ToolRegistry.ts +64 -51
- package/src/server.ts +2 -2
- package/src/tools/BaseToolManager.ts +6 -6
- package/src/tools/auth.ts +42 -37
- package/src/tools/cache.ts +85 -81
- package/src/tools/comments.ts +93 -91
- package/src/tools/index.ts +10 -10
- package/src/tools/media.ts +89 -89
- package/src/tools/pages.ts +89 -87
- package/src/tools/performance.ts +443 -352
- package/src/tools/posts.ts +109 -107
- package/src/tools/site.ts +86 -77
- package/src/tools/taxonomies.ts +102 -102
- package/src/tools/users.ts +77 -77
- package/src/types/client.ts +157 -60
- package/src/types/index.ts +49 -27
- package/src/types/mcp.ts +15 -15
- package/src/types/wordpress.ts +57 -29
- package/src/utils/debug.ts +37 -37
- package/src/utils/error.ts +47 -25
- package/src/utils/toolWrapper.ts +12 -8
- package/src/utils/validation.ts +116 -65
- package/dist/client/WordPressClient.d.ts +0 -81
- package/dist/client/WordPressClient.d.ts.map +0 -1
- package/dist/client/WordPressClient.js +0 -354
- package/dist/client/WordPressClient.js.map +0 -1
- package/dist/performance/AnomalyDetector.d.ts +0 -63
- package/dist/performance/AnomalyDetector.d.ts.map +0 -1
- package/dist/performance/AnomalyDetector.js +0 -222
- package/dist/performance/AnomalyDetector.js.map +0 -1
- package/dist/performance/BenchmarkAnalyzer.d.ts +0 -67
- package/dist/performance/BenchmarkAnalyzer.d.ts.map +0 -1
- package/dist/performance/BenchmarkAnalyzer.js +0 -301
- package/dist/performance/BenchmarkAnalyzer.js.map +0 -1
- package/dist/performance/TrendAnalyzer.d.ts +0 -69
- package/dist/performance/TrendAnalyzer.d.ts.map +0 -1
- package/dist/performance/TrendAnalyzer.js +0 -203
- package/dist/performance/TrendAnalyzer.js.map +0 -1
- package/dist/tools/BaseToolClass.d.ts +0 -76
- package/dist/tools/BaseToolClass.d.ts.map +0 -1
- package/dist/tools/BaseToolClass.js +0 -104
- package/dist/tools/BaseToolClass.js.map +0 -1
- package/dist/tools/base.d.ts +0 -37
- package/dist/tools/base.d.ts.map +0 -1
- package/dist/tools/base.js +0 -60
- package/dist/tools/base.js.map +0 -1
- package/docs/user-guides/CLAUDE_DESKTOP_SETUP.md +0 -187
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
* Authentication Manager
|
|
3
3
|
* Handles all authentication methods and token management
|
|
4
4
|
*/
|
|
5
|
-
import { AuthenticationError } from
|
|
6
|
-
import { BaseManager } from
|
|
7
|
-
import { debug } from
|
|
5
|
+
import { AuthenticationError } from "../../types/client.js";
|
|
6
|
+
import { BaseManager } from "./BaseManager.js";
|
|
7
|
+
import { debug } from "../../utils/debug.js";
|
|
8
8
|
export class AuthenticationManager extends BaseManager {
|
|
9
9
|
jwtToken = null;
|
|
10
10
|
authenticated = false;
|
|
@@ -12,33 +12,33 @@ export class AuthenticationManager extends BaseManager {
|
|
|
12
12
|
* Get authentication from environment variables
|
|
13
13
|
*/
|
|
14
14
|
static getAuthFromEnv() {
|
|
15
|
-
const method = process.env.WORDPRESS_AUTH_METHOD ||
|
|
15
|
+
const method = process.env.WORDPRESS_AUTH_METHOD || "app-password";
|
|
16
16
|
switch (method) {
|
|
17
|
-
case
|
|
17
|
+
case "app-password":
|
|
18
18
|
return {
|
|
19
|
-
method:
|
|
20
|
-
username: process.env.WORDPRESS_USERNAME ||
|
|
21
|
-
appPassword: process.env.WORDPRESS_APP_PASSWORD ||
|
|
19
|
+
method: "app-password",
|
|
20
|
+
username: process.env.WORDPRESS_USERNAME || "",
|
|
21
|
+
appPassword: process.env.WORDPRESS_APP_PASSWORD || "",
|
|
22
22
|
};
|
|
23
|
-
case
|
|
23
|
+
case "jwt":
|
|
24
24
|
return {
|
|
25
|
-
method:
|
|
26
|
-
username: process.env.WORDPRESS_USERNAME ||
|
|
25
|
+
method: "jwt",
|
|
26
|
+
username: process.env.WORDPRESS_USERNAME || "",
|
|
27
27
|
password: process.env.WORDPRESS_JWT_PASSWORD ||
|
|
28
28
|
process.env.WORDPRESS_PASSWORD ||
|
|
29
|
-
|
|
30
|
-
secret: process.env.WORDPRESS_JWT_SECRET ||
|
|
29
|
+
"",
|
|
30
|
+
secret: process.env.WORDPRESS_JWT_SECRET || "",
|
|
31
31
|
};
|
|
32
|
-
case
|
|
32
|
+
case "basic":
|
|
33
33
|
return {
|
|
34
|
-
method:
|
|
35
|
-
username: process.env.WORDPRESS_USERNAME ||
|
|
36
|
-
password: process.env.WORDPRESS_PASSWORD ||
|
|
34
|
+
method: "basic",
|
|
35
|
+
username: process.env.WORDPRESS_USERNAME || "",
|
|
36
|
+
password: process.env.WORDPRESS_PASSWORD || "",
|
|
37
37
|
};
|
|
38
|
-
case
|
|
38
|
+
case "api-key":
|
|
39
39
|
return {
|
|
40
|
-
method:
|
|
41
|
-
apiKey: process.env.WORDPRESS_API_KEY ||
|
|
40
|
+
method: "api-key",
|
|
41
|
+
apiKey: process.env.WORDPRESS_API_KEY || "",
|
|
42
42
|
};
|
|
43
43
|
default:
|
|
44
44
|
throw new AuthenticationError(`Unsupported authentication method: ${method}`, method);
|
|
@@ -50,28 +50,28 @@ export class AuthenticationManager extends BaseManager {
|
|
|
50
50
|
async getAuthHeaders() {
|
|
51
51
|
const auth = this.config.auth;
|
|
52
52
|
switch (auth.method) {
|
|
53
|
-
case
|
|
53
|
+
case "app-password":
|
|
54
54
|
if (!auth.username || !auth.appPassword) {
|
|
55
|
-
throw new AuthenticationError(
|
|
55
|
+
throw new AuthenticationError("Username and app password are required", auth.method);
|
|
56
56
|
}
|
|
57
|
-
const credentials = Buffer.from(`${auth.username}:${auth.appPassword}`).toString(
|
|
57
|
+
const credentials = Buffer.from(`${auth.username}:${auth.appPassword}`).toString("base64");
|
|
58
58
|
return { Authorization: `Basic ${credentials}` };
|
|
59
|
-
case
|
|
59
|
+
case "jwt":
|
|
60
60
|
if (!this.jwtToken) {
|
|
61
61
|
await this.authenticateJWT();
|
|
62
62
|
}
|
|
63
63
|
return { Authorization: `Bearer ${this.jwtToken}` };
|
|
64
|
-
case
|
|
64
|
+
case "basic":
|
|
65
65
|
if (!auth.username || !auth.password) {
|
|
66
|
-
throw new AuthenticationError(
|
|
66
|
+
throw new AuthenticationError("Username and password are required", auth.method);
|
|
67
67
|
}
|
|
68
|
-
const basicCredentials = Buffer.from(`${auth.username}:${auth.password}`).toString(
|
|
68
|
+
const basicCredentials = Buffer.from(`${auth.username}:${auth.password}`).toString("base64");
|
|
69
69
|
return { Authorization: `Basic ${basicCredentials}` };
|
|
70
|
-
case
|
|
70
|
+
case "api-key":
|
|
71
71
|
if (!auth.apiKey) {
|
|
72
|
-
throw new AuthenticationError(
|
|
72
|
+
throw new AuthenticationError("API key is required", auth.method);
|
|
73
73
|
}
|
|
74
|
-
return {
|
|
74
|
+
return { "X-API-Key": auth.apiKey };
|
|
75
75
|
default:
|
|
76
76
|
throw new AuthenticationError(`Unsupported authentication method: ${auth.method}`, auth.method);
|
|
77
77
|
}
|
|
@@ -81,16 +81,16 @@ export class AuthenticationManager extends BaseManager {
|
|
|
81
81
|
*/
|
|
82
82
|
async authenticateJWT() {
|
|
83
83
|
const auth = this.config.auth;
|
|
84
|
-
if (auth.method !==
|
|
85
|
-
throw new AuthenticationError(
|
|
84
|
+
if (auth.method !== "jwt" || !auth.username || !auth.password) {
|
|
85
|
+
throw new AuthenticationError("JWT authentication requires username and password", "jwt");
|
|
86
86
|
}
|
|
87
87
|
try {
|
|
88
88
|
// This would need the RequestManager instance to make the request
|
|
89
89
|
// For now, we'll throw an error indicating this needs to be implemented
|
|
90
|
-
throw new AuthenticationError(
|
|
90
|
+
throw new AuthenticationError("JWT authentication requires RequestManager integration", "jwt");
|
|
91
91
|
}
|
|
92
92
|
catch (error) {
|
|
93
|
-
this.handleError(error,
|
|
93
|
+
this.handleError(error, "JWT authentication");
|
|
94
94
|
}
|
|
95
95
|
}
|
|
96
96
|
/**
|
|
@@ -99,8 +99,8 @@ export class AuthenticationManager extends BaseManager {
|
|
|
99
99
|
async testAuthentication() {
|
|
100
100
|
try {
|
|
101
101
|
const _headers = await this.getAuthHeaders();
|
|
102
|
-
debug.log(
|
|
103
|
-
method: this.config.auth.method
|
|
102
|
+
debug.log("Authentication headers prepared", {
|
|
103
|
+
method: this.config.auth.method,
|
|
104
104
|
});
|
|
105
105
|
// This would need the RequestManager to actually test the connection
|
|
106
106
|
// For now, we'll return true if headers can be generated
|
|
@@ -109,7 +109,7 @@ export class AuthenticationManager extends BaseManager {
|
|
|
109
109
|
}
|
|
110
110
|
catch (error) {
|
|
111
111
|
this.authenticated = false;
|
|
112
|
-
debug.log(
|
|
112
|
+
debug.log("Authentication test failed", error);
|
|
113
113
|
return false;
|
|
114
114
|
}
|
|
115
115
|
}
|
|
@@ -132,27 +132,27 @@ export class AuthenticationManager extends BaseManager {
|
|
|
132
132
|
validateAuthConfig() {
|
|
133
133
|
const auth = this.config.auth;
|
|
134
134
|
if (!auth.method) {
|
|
135
|
-
throw new AuthenticationError(
|
|
135
|
+
throw new AuthenticationError("Authentication method is required", "app-password");
|
|
136
136
|
}
|
|
137
137
|
switch (auth.method) {
|
|
138
|
-
case
|
|
138
|
+
case "app-password":
|
|
139
139
|
if (!auth.username || !auth.appPassword) {
|
|
140
|
-
throw new AuthenticationError(
|
|
140
|
+
throw new AuthenticationError("App password authentication requires username and appPassword", "app-password");
|
|
141
141
|
}
|
|
142
142
|
break;
|
|
143
|
-
case
|
|
143
|
+
case "jwt":
|
|
144
144
|
if (!auth.username || !auth.password || !auth.secret) {
|
|
145
|
-
throw new AuthenticationError(
|
|
145
|
+
throw new AuthenticationError("JWT authentication requires username, password, and secret", "jwt");
|
|
146
146
|
}
|
|
147
147
|
break;
|
|
148
|
-
case
|
|
148
|
+
case "basic":
|
|
149
149
|
if (!auth.username || !auth.password) {
|
|
150
|
-
throw new AuthenticationError(
|
|
150
|
+
throw new AuthenticationError("Basic authentication requires username and password", "basic");
|
|
151
151
|
}
|
|
152
152
|
break;
|
|
153
|
-
case
|
|
153
|
+
case "api-key":
|
|
154
154
|
if (!auth.apiKey) {
|
|
155
|
-
throw new AuthenticationError(
|
|
155
|
+
throw new AuthenticationError("API key authentication requires apiKey", "api-key");
|
|
156
156
|
}
|
|
157
157
|
break;
|
|
158
158
|
default:
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Base class for all client managers
|
|
3
3
|
* Provides common functionality and error handling
|
|
4
4
|
*/
|
|
5
|
-
import type { WordPressClientConfig } from
|
|
5
|
+
import type { WordPressClientConfig } from "../../types/client.js";
|
|
6
6
|
export declare abstract class BaseManager {
|
|
7
7
|
protected config: WordPressClientConfig;
|
|
8
8
|
constructor(config: WordPressClientConfig);
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
* Base class for all client managers
|
|
3
3
|
* Provides common functionality and error handling
|
|
4
4
|
*/
|
|
5
|
-
import { WordPressAPIError } from
|
|
6
|
-
import { debug, logError } from
|
|
7
|
-
import { getErrorMessage } from
|
|
5
|
+
import { WordPressAPIError } from "../../types/client.js";
|
|
6
|
+
import { debug, logError } from "../../utils/debug.js";
|
|
7
|
+
import { getErrorMessage } from "../../utils/error.js";
|
|
8
8
|
export class BaseManager {
|
|
9
9
|
config;
|
|
10
10
|
constructor(config) {
|
|
@@ -18,14 +18,14 @@ export class BaseManager {
|
|
|
18
18
|
if (error instanceof WordPressAPIError) {
|
|
19
19
|
throw error;
|
|
20
20
|
}
|
|
21
|
-
if (error.name ===
|
|
22
|
-
throw new WordPressAPIError(`Request timeout after ${this.config.timeout}ms`, 408,
|
|
21
|
+
if (error.name === "AbortError" || error.code === "ABORT_ERR") {
|
|
22
|
+
throw new WordPressAPIError(`Request timeout after ${this.config.timeout}ms`, 408, "timeout");
|
|
23
23
|
}
|
|
24
|
-
if (error.code ===
|
|
25
|
-
throw new WordPressAPIError(`Cannot connect to WordPress site: ${this.config.baseUrl}`, 503,
|
|
24
|
+
if (error.code === "ECONNREFUSED" || error.code === "ENOTFOUND") {
|
|
25
|
+
throw new WordPressAPIError(`Cannot connect to WordPress site: ${this.config.baseUrl}`, 503, "connection_failed");
|
|
26
26
|
}
|
|
27
27
|
const message = getErrorMessage(error);
|
|
28
|
-
throw new WordPressAPIError(`${operation} failed: ${message}`, 500,
|
|
28
|
+
throw new WordPressAPIError(`${operation} failed: ${message}`, 500, "unknown_error");
|
|
29
29
|
}
|
|
30
30
|
/**
|
|
31
31
|
* Standardized success logging
|
|
@@ -39,7 +39,7 @@ export class BaseManager {
|
|
|
39
39
|
validateRequired(params, requiredFields) {
|
|
40
40
|
for (const field of requiredFields) {
|
|
41
41
|
if (params[field] === undefined || params[field] === null) {
|
|
42
|
-
throw new WordPressAPIError(`Missing required parameter: ${field}`, 400,
|
|
42
|
+
throw new WordPressAPIError(`Missing required parameter: ${field}`, 400, "missing_parameter");
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
45
|
}
|
|
@@ -2,13 +2,15 @@
|
|
|
2
2
|
* HTTP Request Manager
|
|
3
3
|
* Handles all HTTP operations, rate limiting, and retries
|
|
4
4
|
*/
|
|
5
|
-
import type { HTTPMethod, RequestOptions, ClientStats, WordPressClientConfig } from
|
|
6
|
-
import { BaseManager } from
|
|
5
|
+
import type { HTTPMethod, RequestOptions, ClientStats, WordPressClientConfig } from "../../types/client.js";
|
|
6
|
+
import { BaseManager } from "./BaseManager.js";
|
|
7
|
+
import { AuthenticationManager } from "./AuthenticationManager.js";
|
|
7
8
|
export declare class RequestManager extends BaseManager {
|
|
8
9
|
private stats;
|
|
9
10
|
private lastRequestTime;
|
|
10
11
|
private requestInterval;
|
|
11
|
-
|
|
12
|
+
private authManager;
|
|
13
|
+
constructor(config: WordPressClientConfig, authManager: AuthenticationManager);
|
|
12
14
|
/**
|
|
13
15
|
* Make HTTP request with retry logic and rate limiting
|
|
14
16
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequestManager.d.ts","sourceRoot":"","sources":["../../../src/client/managers/RequestManager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EACV,UAAU,EACV,cAAc,EACd,WAAW,EACX,qBAAqB,EACtB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"RequestManager.d.ts","sourceRoot":"","sources":["../../../src/client/managers/RequestManager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EACV,UAAU,EACV,cAAc,EACd,WAAW,EACX,qBAAqB,EACtB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAGnE,qBAAa,cAAe,SAAQ,WAAW;IAC7C,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,eAAe,CAAa;IACpC,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,WAAW,CAAwB;gBAGzC,MAAM,EAAE,qBAAqB,EAC7B,WAAW,EAAE,qBAAqB;IAgBpC;;OAEG;IACG,OAAO,CAAC,CAAC,EACb,MAAM,EAAE,UAAU,EAClB,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,GAAG,EACV,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,CAAC,CAAC;IAyBb;;OAEG;YACW,oBAAoB;IAkClC;;OAEG;YACW,WAAW;IA4DzB;;OAEG;YACW,mBAAmB;IAyBjC;;OAEG;IACH,OAAO,CAAC,QAAQ;IAQhB;;OAEG;YACW,gBAAgB;IAY9B;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAQjC;;OAEG;IACH,QAAQ,IAAI,WAAW;CAGxB"}
|
|
@@ -2,24 +2,26 @@
|
|
|
2
2
|
* HTTP Request Manager
|
|
3
3
|
* Handles all HTTP operations, rate limiting, and retries
|
|
4
4
|
*/
|
|
5
|
-
import fetch from
|
|
6
|
-
import { WordPressAPIError, RateLimitError } from
|
|
7
|
-
import { BaseManager } from
|
|
8
|
-
import { debug, startTimer } from
|
|
5
|
+
import fetch from "node-fetch";
|
|
6
|
+
import { WordPressAPIError, RateLimitError } from "../../types/client.js";
|
|
7
|
+
import { BaseManager } from "./BaseManager.js";
|
|
8
|
+
import { debug, startTimer } from "../../utils/debug.js";
|
|
9
9
|
export class RequestManager extends BaseManager {
|
|
10
10
|
stats;
|
|
11
11
|
lastRequestTime = 0;
|
|
12
12
|
requestInterval;
|
|
13
|
-
|
|
13
|
+
authManager;
|
|
14
|
+
constructor(config, authManager) {
|
|
14
15
|
super(config);
|
|
15
|
-
this.
|
|
16
|
+
this.authManager = authManager;
|
|
17
|
+
this.requestInterval = 60000 / parseInt(process.env.RATE_LIMIT || "60");
|
|
16
18
|
this.stats = {
|
|
17
19
|
totalRequests: 0,
|
|
18
20
|
successfulRequests: 0,
|
|
19
21
|
failedRequests: 0,
|
|
20
22
|
averageResponseTime: 0,
|
|
21
23
|
rateLimitHits: 0,
|
|
22
|
-
authFailures: 0
|
|
24
|
+
authFailures: 0,
|
|
23
25
|
};
|
|
24
26
|
}
|
|
25
27
|
/**
|
|
@@ -61,7 +63,7 @@ export class RequestManager extends BaseManager {
|
|
|
61
63
|
debug.log(`Request failed (attempt ${attempt}/${maxRetries}):`, error.message);
|
|
62
64
|
// Exponential backoff
|
|
63
65
|
const delay = Math.min(1000 * Math.pow(2, attempt - 1), 5000);
|
|
64
|
-
await new Promise(resolve => setTimeout(resolve, delay));
|
|
66
|
+
await new Promise((resolve) => setTimeout(resolve, delay));
|
|
65
67
|
}
|
|
66
68
|
}
|
|
67
69
|
throw lastError;
|
|
@@ -75,17 +77,35 @@ export class RequestManager extends BaseManager {
|
|
|
75
77
|
const controller = new AbortController();
|
|
76
78
|
const timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
77
79
|
try {
|
|
80
|
+
// Get authentication headers
|
|
81
|
+
const authHeaders = await this.authManager.getAuthHeaders();
|
|
78
82
|
const fetchOptions = {
|
|
79
83
|
method,
|
|
80
84
|
headers: {
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
...
|
|
85
|
+
"Content-Type": "application/json",
|
|
86
|
+
"User-Agent": "MCP-WordPress/1.1.1",
|
|
87
|
+
...authHeaders, // Add auth headers before custom headers
|
|
88
|
+
...options.headers,
|
|
84
89
|
},
|
|
85
|
-
signal: controller.signal
|
|
90
|
+
signal: controller.signal,
|
|
86
91
|
};
|
|
87
|
-
if (data && method !==
|
|
88
|
-
|
|
92
|
+
if (data && method !== "GET") {
|
|
93
|
+
if (data instanceof FormData ||
|
|
94
|
+
(data && typeof data.append === "function")) {
|
|
95
|
+
// For FormData, don't set Content-Type (let fetch set it with boundary)
|
|
96
|
+
delete fetchOptions.headers["Content-Type"];
|
|
97
|
+
fetchOptions.body = data;
|
|
98
|
+
}
|
|
99
|
+
else if (Buffer.isBuffer(data)) {
|
|
100
|
+
// For Buffer data, keep Content-Type from headers
|
|
101
|
+
fetchOptions.body = data;
|
|
102
|
+
}
|
|
103
|
+
else if (typeof data === "string") {
|
|
104
|
+
fetchOptions.body = data;
|
|
105
|
+
}
|
|
106
|
+
else {
|
|
107
|
+
fetchOptions.body = JSON.stringify(data);
|
|
108
|
+
}
|
|
89
109
|
}
|
|
90
110
|
debug.log(`API Request: ${method} ${url}`);
|
|
91
111
|
const response = await fetch(url, fetchOptions);
|
|
@@ -111,7 +131,7 @@ export class RequestManager extends BaseManager {
|
|
|
111
131
|
// Ignore JSON parsing errors
|
|
112
132
|
}
|
|
113
133
|
const message = errorData.message || `HTTP ${response.status}: ${response.statusText}`;
|
|
114
|
-
const code = errorData.code ||
|
|
134
|
+
const code = errorData.code || "http_error";
|
|
115
135
|
if (response.status === 429) {
|
|
116
136
|
this.stats.rateLimitHits++;
|
|
117
137
|
throw new RateLimitError(message, Date.now() + 60000); // Retry after 1 minute
|
|
@@ -125,9 +145,9 @@ export class RequestManager extends BaseManager {
|
|
|
125
145
|
* Build full URL from endpoint
|
|
126
146
|
*/
|
|
127
147
|
buildUrl(endpoint) {
|
|
128
|
-
const baseUrl = this.config.baseUrl.replace(/\/$/,
|
|
129
|
-
const apiBase =
|
|
130
|
-
const cleanEndpoint = endpoint.startsWith(
|
|
148
|
+
const baseUrl = this.config.baseUrl.replace(/\/$/, "");
|
|
149
|
+
const apiBase = "/wp-json/wp/v2";
|
|
150
|
+
const cleanEndpoint = endpoint.startsWith("/") ? endpoint : `/${endpoint}`;
|
|
131
151
|
return `${baseUrl}${apiBase}${cleanEndpoint}`;
|
|
132
152
|
}
|
|
133
153
|
/**
|
|
@@ -138,7 +158,7 @@ export class RequestManager extends BaseManager {
|
|
|
138
158
|
const timeSinceLastRequest = now - this.lastRequestTime;
|
|
139
159
|
if (timeSinceLastRequest < this.requestInterval) {
|
|
140
160
|
const delay = this.requestInterval - timeSinceLastRequest;
|
|
141
|
-
await new Promise(resolve => setTimeout(resolve, delay));
|
|
161
|
+
await new Promise((resolve) => setTimeout(resolve, delay));
|
|
142
162
|
}
|
|
143
163
|
this.lastRequestTime = Date.now();
|
|
144
164
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequestManager.js","sourceRoot":"","sources":["../../../src/client/managers/RequestManager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,YAAY,CAAC;AAO/B,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"RequestManager.js","sourceRoot":"","sources":["../../../src/client/managers/RequestManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Client Managers Index
|
|
3
3
|
* Exports all manager classes for the WordPress client
|
|
4
4
|
*/
|
|
5
|
-
export { BaseManager } from
|
|
6
|
-
export { AuthenticationManager } from
|
|
7
|
-
export { RequestManager } from
|
|
5
|
+
export { BaseManager } from "./BaseManager.js";
|
|
6
|
+
export { AuthenticationManager } from "./AuthenticationManager.js";
|
|
7
|
+
export { RequestManager } from "./RequestManager.js";
|
|
8
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Client Managers Index
|
|
3
3
|
* Exports all manager classes for the WordPress client
|
|
4
4
|
*/
|
|
5
|
-
export { BaseManager } from
|
|
6
|
-
export { AuthenticationManager } from
|
|
7
|
-
export { RequestManager } from
|
|
5
|
+
export { BaseManager } from "./BaseManager.js";
|
|
6
|
+
export { AuthenticationManager } from "./AuthenticationManager.js";
|
|
7
|
+
export { RequestManager } from "./RequestManager.js";
|
|
8
8
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { z } from
|
|
1
|
+
import { z } from "zod";
|
|
2
2
|
/**
|
|
3
3
|
* Zod schema for WordPress authentication methods
|
|
4
4
|
*/
|
|
@@ -277,5 +277,5 @@ export declare class ConfigurationValidator {
|
|
|
277
277
|
*/
|
|
278
278
|
static getValidationErrors(schema: z.ZodSchema, data: unknown): string[];
|
|
279
279
|
}
|
|
280
|
-
export { SiteConfigSchema, SiteSchema, MultiSiteConfigSchema, EnvironmentConfigSchema, McpConfigSchema, AuthMethodSchema, UrlSchema };
|
|
280
|
+
export { SiteConfigSchema, SiteSchema, MultiSiteConfigSchema, EnvironmentConfigSchema, McpConfigSchema, AuthMethodSchema, UrlSchema, };
|
|
281
281
|
//# sourceMappingURL=ConfigurationSchema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigurationSchema.d.ts","sourceRoot":"","sources":["../../src/config/ConfigurationSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,QAAA,MAAM,gBAAgB,kEAMX,CAAC;AAEZ;;GAEG;AACH,QAAA,MAAM,SAAS,2CAM4B,CAAC;AAE5C;;GAEG;AACH,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;EAgBpB,CAAC;AAEH;;GAEG;AACH,QAAA,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAcd,CAAC;AAEH;;GAEG;AACH,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoBzB,CAAC;AAEH;;GAEG;AACH,QAAA,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;EAU3B,CAAC;AAEH;;GAEG;AACH,QAAA,MAAM,eAAe;;;;;;;;;;;;;;;GAQR,CAAC;AAEd;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC9D,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAClD,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACxE,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAC5E,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE5D;;GAEG;AACH,qBAAa,sBAAsB;IACjC;;OAEG;IACH,MAAM,CAAC,uBAAuB,CAAC,MAAM,EAAE,OAAO,GAAG,mBAAmB;IAgBpE;;OAEG;IACH,MAAM,CAAC,yBAAyB,CAC9B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GACtC,qBAAqB;IAgBxB;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,OAAO,GAAG,aAAa;IAcxD;;OAEG;IACH,MAAM,CAAC,kBAAkB,CAAC,MAAM,EAAE,OAAO,GAAG,QAAQ;IAcpD;;OAEG;IACH,MAAM,CAAC,sBAAsB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO;IAKvD;;OAEG;IACH,MAAM,CAAC,wBAAwB,CAC7B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GACtC,OAAO;IAKV;;OAEG;IACH,MAAM,CAAC,mBAAmB,CAAC,MAAM,EAAE,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,GAAG,MAAM,EAAE;CASzE;AAGD,OAAO,EACL,gBAAgB,EAChB,UAAU,EACV,qBAAqB,EACrB,uBAAuB,EACvB,eAAe,EACf,gBAAgB,EAChB,SAAS,
|
|
1
|
+
{"version":3,"file":"ConfigurationSchema.d.ts","sourceRoot":"","sources":["../../src/config/ConfigurationSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,QAAA,MAAM,gBAAgB,kEAMX,CAAC;AAEZ;;GAEG;AACH,QAAA,MAAM,SAAS,2CAM4B,CAAC;AAE5C;;GAEG;AACH,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;EAgBpB,CAAC;AAEH;;GAEG;AACH,QAAA,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAcd,CAAC;AAEH;;GAEG;AACH,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoBzB,CAAC;AAEH;;GAEG;AACH,QAAA,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;EAU3B,CAAC;AAEH;;GAEG;AACH,QAAA,MAAM,eAAe;;;;;;;;;;;;;;;GAQR,CAAC;AAEd;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC9D,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAClD,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACxE,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAC5E,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE5D;;GAEG;AACH,qBAAa,sBAAsB;IACjC;;OAEG;IACH,MAAM,CAAC,uBAAuB,CAAC,MAAM,EAAE,OAAO,GAAG,mBAAmB;IAgBpE;;OAEG;IACH,MAAM,CAAC,yBAAyB,CAC9B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GACtC,qBAAqB;IAgBxB;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,OAAO,GAAG,aAAa;IAcxD;;OAEG;IACH,MAAM,CAAC,kBAAkB,CAAC,MAAM,EAAE,OAAO,GAAG,QAAQ;IAcpD;;OAEG;IACH,MAAM,CAAC,sBAAsB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO;IAKvD;;OAEG;IACH,MAAM,CAAC,wBAAwB,CAC7B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GACtC,OAAO;IAKV;;OAEG;IACH,MAAM,CAAC,mBAAmB,CAAC,MAAM,EAAE,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,GAAG,MAAM,EAAE;CASzE;AAGD,OAAO,EACL,gBAAgB,EAChB,UAAU,EACV,qBAAqB,EACrB,uBAAuB,EACvB,eAAe,EACf,gBAAgB,EAChB,SAAS,GACV,CAAC"}
|