mcp-wordpress 1.1.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/LICENSE +21 -0
- package/README.md +568 -0
- package/bin/mcp-wordpress.js +12 -0
- package/bin/setup.js +302 -0
- package/bin/status.js +359 -0
- package/dist/client/WordPressClient.d.ts +81 -0
- package/dist/client/WordPressClient.d.ts.map +1 -0
- package/dist/client/WordPressClient.js +354 -0
- package/dist/client/WordPressClient.js.map +1 -0
- package/dist/client/api.d.ts +140 -0
- package/dist/client/api.d.ts.map +1 -0
- package/dist/client/api.js +727 -0
- package/dist/client/api.js.map +1 -0
- package/dist/client/auth.d.ts +121 -0
- package/dist/client/auth.d.ts.map +1 -0
- package/dist/client/auth.js +430 -0
- package/dist/client/auth.js.map +1 -0
- package/dist/client/managers/AuthenticationManager.d.ts +39 -0
- package/dist/client/managers/AuthenticationManager.d.ts.map +1 -0
- package/dist/client/managers/AuthenticationManager.js +159 -0
- package/dist/client/managers/AuthenticationManager.js.map +1 -0
- package/dist/client/managers/BaseManager.d.ts +22 -0
- package/dist/client/managers/BaseManager.d.ts.map +1 -0
- package/dist/client/managers/BaseManager.js +47 -0
- package/dist/client/managers/BaseManager.js.map +1 -0
- package/dist/client/managers/RequestManager.d.ts +45 -0
- package/dist/client/managers/RequestManager.d.ts.map +1 -0
- package/dist/client/managers/RequestManager.js +161 -0
- package/dist/client/managers/RequestManager.js.map +1 -0
- package/dist/client/managers/index.d.ts +8 -0
- package/dist/client/managers/index.d.ts.map +1 -0
- package/dist/client/managers/index.js +8 -0
- package/dist/client/managers/index.js.map +1 -0
- package/dist/index.d.ts +19 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +264 -0
- package/dist/index.js.map +1 -0
- package/dist/server.d.ts +7 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +7 -0
- package/dist/server.js.map +1 -0
- package/dist/tools/auth.d.ts +44 -0
- package/dist/tools/auth.d.ts.map +1 -0
- package/dist/tools/auth.js +126 -0
- package/dist/tools/auth.js.map +1 -0
- package/dist/tools/base.d.ts +37 -0
- package/dist/tools/base.d.ts.map +1 -0
- package/dist/tools/base.js +60 -0
- package/dist/tools/base.js.map +1 -0
- package/dist/tools/comments.d.ts +33 -0
- package/dist/tools/comments.d.ts.map +1 -0
- package/dist/tools/comments.js +228 -0
- package/dist/tools/comments.js.map +1 -0
- package/dist/tools/index.d.ts +9 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +9 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/media.d.ts +29 -0
- package/dist/tools/media.d.ts.map +1 -0
- package/dist/tools/media.js +208 -0
- package/dist/tools/media.js.map +1 -0
- package/dist/tools/pages.d.ts +30 -0
- package/dist/tools/pages.d.ts.map +1 -0
- package/dist/tools/pages.js +211 -0
- package/dist/tools/pages.js.map +1 -0
- package/dist/tools/posts.d.ts +30 -0
- package/dist/tools/posts.d.ts.map +1 -0
- package/dist/tools/posts.js +240 -0
- package/dist/tools/posts.js.map +1 -0
- package/dist/tools/site.d.ts +31 -0
- package/dist/tools/site.d.ts.map +1 -0
- package/dist/tools/site.js +192 -0
- package/dist/tools/site.js.map +1 -0
- package/dist/tools/taxonomies.d.ts +37 -0
- package/dist/tools/taxonomies.d.ts.map +1 -0
- package/dist/tools/taxonomies.js +280 -0
- package/dist/tools/taxonomies.js.map +1 -0
- package/dist/tools/users.d.ts +28 -0
- package/dist/tools/users.d.ts.map +1 -0
- package/dist/tools/users.js +201 -0
- package/dist/tools/users.js.map +1 -0
- package/dist/types/client.d.ts +215 -0
- package/dist/types/client.d.ts.map +1 -0
- package/dist/types/client.js +72 -0
- package/dist/types/client.js.map +1 -0
- package/dist/types/index.d.ts +157 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +12 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/mcp.d.ts +178 -0
- package/dist/types/mcp.d.ts.map +1 -0
- package/dist/types/mcp.js +7 -0
- package/dist/types/mcp.js.map +1 -0
- package/dist/types/wordpress.d.ts +443 -0
- package/dist/types/wordpress.d.ts.map +1 -0
- package/dist/types/wordpress.js +7 -0
- package/dist/types/wordpress.js.map +1 -0
- package/dist/utils/debug.d.ts +63 -0
- package/dist/utils/debug.d.ts.map +1 -0
- package/dist/utils/debug.js +195 -0
- package/dist/utils/debug.js.map +1 -0
- package/dist/utils/error.d.ts +19 -0
- package/dist/utils/error.d.ts.map +1 -0
- package/dist/utils/error.js +71 -0
- package/dist/utils/error.js.map +1 -0
- package/dist/utils/toolWrapper.d.ts +36 -0
- package/dist/utils/toolWrapper.d.ts.map +1 -0
- package/dist/utils/toolWrapper.js +90 -0
- package/dist/utils/toolWrapper.js.map +1 -0
- package/package.json +115 -0
- package/src/client/api.ts +1043 -0
- package/src/client/auth.ts +527 -0
- package/src/client/managers/AuthenticationManager.ts +190 -0
- package/src/client/managers/BaseManager.ts +73 -0
- package/src/client/managers/RequestManager.ts +214 -0
- package/src/client/managers/index.ts +8 -0
- package/src/index.ts +337 -0
- package/src/server.ts +7 -0
- package/src/tools/auth.ts +153 -0
- package/src/tools/comments.ts +263 -0
- package/src/tools/index.ts +8 -0
- package/src/tools/media.ts +240 -0
- package/src/tools/pages.ts +246 -0
- package/src/tools/posts.ts +277 -0
- package/src/tools/site.ts +227 -0
- package/src/tools/taxonomies.ts +322 -0
- package/src/tools/users.ts +233 -0
- package/src/types/client.ts +304 -0
- package/src/types/index.ts +207 -0
- package/src/types/mcp.ts +247 -0
- package/src/types/wordpress.ts +491 -0
- package/src/utils/debug.ts +258 -0
- package/src/utils/error.ts +88 -0
- package/src/utils/toolWrapper.ts +105 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/client/api.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress Authentication Handler
|
|
3
|
+
* Manages different authentication methods for WordPress REST API
|
|
4
|
+
*/
|
|
5
|
+
import type { IAuthProvider, IWordPressClient, AuthMethod, AuthConfig } from "../types/client.js";
|
|
6
|
+
import type { WordPressUser } from "../types/wordpress.js";
|
|
7
|
+
export declare class WordPressAuth {
|
|
8
|
+
private client;
|
|
9
|
+
private authType;
|
|
10
|
+
constructor(client: IWordPressClient);
|
|
11
|
+
/**
|
|
12
|
+
* Handle authentication based on type
|
|
13
|
+
*/
|
|
14
|
+
authenticate(): Promise<boolean>;
|
|
15
|
+
/**
|
|
16
|
+
* Handle Application Password authentication
|
|
17
|
+
*/
|
|
18
|
+
private handleAppPasswordAuth;
|
|
19
|
+
/**
|
|
20
|
+
* Handle Basic authentication (username + password)
|
|
21
|
+
*/
|
|
22
|
+
private handleBasicAuth;
|
|
23
|
+
/**
|
|
24
|
+
* Handle JWT authentication
|
|
25
|
+
*/
|
|
26
|
+
private handleJWTAuth;
|
|
27
|
+
/**
|
|
28
|
+
* Handle API Key authentication
|
|
29
|
+
*/
|
|
30
|
+
private handleAPIKeyAuth;
|
|
31
|
+
/**
|
|
32
|
+
* Handle Cookie authentication
|
|
33
|
+
*/
|
|
34
|
+
private handleCookieAuth;
|
|
35
|
+
/**
|
|
36
|
+
* Refresh authentication (for JWT and OAuth)
|
|
37
|
+
*/
|
|
38
|
+
refreshAuth(): Promise<boolean>;
|
|
39
|
+
/**
|
|
40
|
+
* Refresh JWT token
|
|
41
|
+
*/
|
|
42
|
+
private refreshJWTToken;
|
|
43
|
+
/**
|
|
44
|
+
* Validate current authentication
|
|
45
|
+
*/
|
|
46
|
+
validateAuth(): Promise<boolean>;
|
|
47
|
+
/**
|
|
48
|
+
* Get authentication status information
|
|
49
|
+
*/
|
|
50
|
+
getAuthStatus(): Promise<{
|
|
51
|
+
authenticated: boolean;
|
|
52
|
+
method: AuthMethod;
|
|
53
|
+
user?: WordPressUser;
|
|
54
|
+
error?: string;
|
|
55
|
+
}>;
|
|
56
|
+
/**
|
|
57
|
+
* Switch authentication method
|
|
58
|
+
*/
|
|
59
|
+
switchAuthMethod(newConfig: AuthConfig): Promise<boolean>;
|
|
60
|
+
/**
|
|
61
|
+
* Start OAuth 2.0 flow (for future implementation)
|
|
62
|
+
*/
|
|
63
|
+
startOAuthFlow(): Promise<{
|
|
64
|
+
authUrl: string;
|
|
65
|
+
state: string;
|
|
66
|
+
}>;
|
|
67
|
+
/**
|
|
68
|
+
* Complete OAuth 2.0 flow (for future implementation)
|
|
69
|
+
*/
|
|
70
|
+
completeOAuthFlow(code: string, state: string): Promise<boolean>;
|
|
71
|
+
/**
|
|
72
|
+
* Generate random state for OAuth
|
|
73
|
+
*/
|
|
74
|
+
private generateRandomState;
|
|
75
|
+
/**
|
|
76
|
+
* Get authentication headers for the current method
|
|
77
|
+
*/
|
|
78
|
+
getAuthHeaders(): Record<string, string>;
|
|
79
|
+
/**
|
|
80
|
+
* Check if authentication method requires additional setup
|
|
81
|
+
*/
|
|
82
|
+
requiresSetup(): boolean;
|
|
83
|
+
/**
|
|
84
|
+
* Get setup instructions for the current authentication method
|
|
85
|
+
*/
|
|
86
|
+
getSetupInstructions(): string;
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Authentication Provider implementations
|
|
90
|
+
*/
|
|
91
|
+
export declare class AppPasswordAuthProvider implements IAuthProvider {
|
|
92
|
+
readonly method: AuthMethod;
|
|
93
|
+
authenticate(client: IWordPressClient): Promise<boolean>;
|
|
94
|
+
addAuthHeaders(headers: Record<string, string>): void;
|
|
95
|
+
}
|
|
96
|
+
export declare class JWTAuthProvider implements IAuthProvider {
|
|
97
|
+
readonly method: AuthMethod;
|
|
98
|
+
authenticate(client: IWordPressClient): Promise<boolean>;
|
|
99
|
+
addAuthHeaders(headers: Record<string, string>): void;
|
|
100
|
+
refreshAuth(): Promise<boolean>;
|
|
101
|
+
}
|
|
102
|
+
export declare class BasicAuthProvider implements IAuthProvider {
|
|
103
|
+
readonly method: AuthMethod;
|
|
104
|
+
authenticate(client: IWordPressClient): Promise<boolean>;
|
|
105
|
+
addAuthHeaders(headers: Record<string, string>): void;
|
|
106
|
+
}
|
|
107
|
+
export declare class APIKeyAuthProvider implements IAuthProvider {
|
|
108
|
+
readonly method: AuthMethod;
|
|
109
|
+
authenticate(client: IWordPressClient): Promise<boolean>;
|
|
110
|
+
addAuthHeaders(headers: Record<string, string>): void;
|
|
111
|
+
}
|
|
112
|
+
export declare class CookieAuthProvider implements IAuthProvider {
|
|
113
|
+
readonly method: AuthMethod;
|
|
114
|
+
authenticate(client: IWordPressClient): Promise<boolean>;
|
|
115
|
+
addAuthHeaders(headers: Record<string, string>): void;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Factory function to create appropriate auth provider
|
|
119
|
+
*/
|
|
120
|
+
export declare function createAuthProvider(method: AuthMethod): IAuthProvider;
|
|
121
|
+
//# sourceMappingURL=auth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/client/auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,430 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress Authentication Handler
|
|
3
|
+
* Manages different authentication methods for WordPress REST API
|
|
4
|
+
*/
|
|
5
|
+
import { logger } from "../utils/debug.js";
|
|
6
|
+
import { URL } from "url";
|
|
7
|
+
export class WordPressAuth {
|
|
8
|
+
client;
|
|
9
|
+
authType;
|
|
10
|
+
constructor(client) {
|
|
11
|
+
this.client = client;
|
|
12
|
+
this.authType = client.config.auth.method;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Handle authentication based on type
|
|
16
|
+
*/
|
|
17
|
+
async authenticate() {
|
|
18
|
+
try {
|
|
19
|
+
switch (this.authType) {
|
|
20
|
+
case "app-password":
|
|
21
|
+
return await this.handleAppPasswordAuth();
|
|
22
|
+
case "jwt":
|
|
23
|
+
return await this.handleJWTAuth();
|
|
24
|
+
case "basic":
|
|
25
|
+
return await this.handleBasicAuth();
|
|
26
|
+
case "api-key":
|
|
27
|
+
return await this.handleAPIKeyAuth();
|
|
28
|
+
case "cookie":
|
|
29
|
+
return await this.handleCookieAuth();
|
|
30
|
+
default:
|
|
31
|
+
throw new Error(`Unsupported authentication type: ${this.authType}`);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
catch (error) {
|
|
35
|
+
logger.error("Authentication failed:", error);
|
|
36
|
+
throw error;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Handle Application Password authentication
|
|
41
|
+
*/
|
|
42
|
+
async handleAppPasswordAuth() {
|
|
43
|
+
const { username, appPassword } = this.client.config.auth;
|
|
44
|
+
if (!username || !appPassword) {
|
|
45
|
+
throw new Error("Application Password authentication requires WORDPRESS_USERNAME and WORDPRESS_APP_PASSWORD. " +
|
|
46
|
+
"Visit your WordPress admin → Users → Profile → Application Passwords to create one.");
|
|
47
|
+
}
|
|
48
|
+
// Test the credentials by attempting to get current user
|
|
49
|
+
try {
|
|
50
|
+
const user = await this.client.getCurrentUser();
|
|
51
|
+
logger.log(`✅ Application Password authentication successful for user: ${user.name} (${user.username})`);
|
|
52
|
+
return true;
|
|
53
|
+
}
|
|
54
|
+
catch (error) {
|
|
55
|
+
const message = "Application Password authentication failed. Please check your credentials and ensure the application password is valid.";
|
|
56
|
+
logger.error(message, error);
|
|
57
|
+
throw new Error(message);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Handle Basic authentication (username + password)
|
|
62
|
+
*/
|
|
63
|
+
async handleBasicAuth() {
|
|
64
|
+
const { username, password } = this.client.config.auth;
|
|
65
|
+
if (!username || !password) {
|
|
66
|
+
throw new Error("Basic authentication requires WORDPRESS_USERNAME and WORDPRESS_PASSWORD");
|
|
67
|
+
}
|
|
68
|
+
try {
|
|
69
|
+
const user = await this.client.getCurrentUser();
|
|
70
|
+
logger.log(`✅ Basic authentication successful for user: ${user.name} (${user.username})`);
|
|
71
|
+
return true;
|
|
72
|
+
}
|
|
73
|
+
catch (error) {
|
|
74
|
+
const message = "Basic authentication failed. Please check your username and password.";
|
|
75
|
+
logger.error(message, error);
|
|
76
|
+
throw new Error(message);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Handle JWT authentication
|
|
81
|
+
*/
|
|
82
|
+
async handleJWTAuth() {
|
|
83
|
+
const { username, password, secret } = this.client.config.auth;
|
|
84
|
+
if (!username || !password || !secret) {
|
|
85
|
+
throw new Error("JWT authentication requires WORDPRESS_USERNAME, WORDPRESS_PASSWORD, and WORDPRESS_JWT_SECRET. " +
|
|
86
|
+
"Install and configure the JWT Authentication plugin first.");
|
|
87
|
+
}
|
|
88
|
+
try {
|
|
89
|
+
// The JWT token should be obtained during client authentication
|
|
90
|
+
const user = await this.client.getCurrentUser();
|
|
91
|
+
logger.log(`✅ JWT authentication successful for user: ${user.name} (${user.username})`);
|
|
92
|
+
return true;
|
|
93
|
+
}
|
|
94
|
+
catch (error) {
|
|
95
|
+
const message = "JWT authentication failed. Please check your credentials and ensure the JWT plugin is installed and configured.";
|
|
96
|
+
logger.error(message, error);
|
|
97
|
+
throw new Error(message);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Handle API Key authentication
|
|
102
|
+
*/
|
|
103
|
+
async handleAPIKeyAuth() {
|
|
104
|
+
const { apiKey } = this.client.config.auth;
|
|
105
|
+
if (!apiKey) {
|
|
106
|
+
throw new Error("API Key authentication requires WORDPRESS_API_KEY");
|
|
107
|
+
}
|
|
108
|
+
try {
|
|
109
|
+
// Test API key by making a simple request
|
|
110
|
+
await this.client.getSiteInfo();
|
|
111
|
+
logger.log("✅ API Key authentication successful");
|
|
112
|
+
return true;
|
|
113
|
+
}
|
|
114
|
+
catch (error) {
|
|
115
|
+
const message = "API Key authentication failed. Please check your API key.";
|
|
116
|
+
logger.error(message, error);
|
|
117
|
+
throw new Error(message);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Handle Cookie authentication
|
|
122
|
+
*/
|
|
123
|
+
async handleCookieAuth() {
|
|
124
|
+
const { nonce } = this.client.config.auth;
|
|
125
|
+
if (!nonce) {
|
|
126
|
+
logger.warn("Cookie authentication: No nonce provided, authentication may fail for write operations");
|
|
127
|
+
}
|
|
128
|
+
try {
|
|
129
|
+
// Test with a simple read operation
|
|
130
|
+
await this.client.getSiteInfo();
|
|
131
|
+
logger.log("✅ Cookie authentication configured (note: write operations may require valid nonce)");
|
|
132
|
+
return true;
|
|
133
|
+
}
|
|
134
|
+
catch (error) {
|
|
135
|
+
const message = "Cookie authentication failed. Please ensure you are properly logged into WordPress.";
|
|
136
|
+
logger.error(message, error);
|
|
137
|
+
throw new Error(message);
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Refresh authentication (for JWT and OAuth)
|
|
142
|
+
*/
|
|
143
|
+
async refreshAuth() {
|
|
144
|
+
switch (this.authType) {
|
|
145
|
+
case "jwt":
|
|
146
|
+
return await this.refreshJWTToken();
|
|
147
|
+
default:
|
|
148
|
+
logger.log(`Authentication refresh not supported for ${this.authType}`);
|
|
149
|
+
return true;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Refresh JWT token
|
|
154
|
+
*/
|
|
155
|
+
async refreshJWTToken() {
|
|
156
|
+
try {
|
|
157
|
+
// Re-authenticate to get a new token
|
|
158
|
+
return await this.handleJWTAuth();
|
|
159
|
+
}
|
|
160
|
+
catch (error) {
|
|
161
|
+
logger.error("Failed to refresh JWT token:", error);
|
|
162
|
+
return false;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* Validate current authentication
|
|
167
|
+
*/
|
|
168
|
+
async validateAuth() {
|
|
169
|
+
try {
|
|
170
|
+
await this.client.getCurrentUser();
|
|
171
|
+
return true;
|
|
172
|
+
}
|
|
173
|
+
catch (error) {
|
|
174
|
+
logger.error("Authentication validation failed:", error);
|
|
175
|
+
return false;
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
/**
|
|
179
|
+
* Get authentication status information
|
|
180
|
+
*/
|
|
181
|
+
async getAuthStatus() {
|
|
182
|
+
try {
|
|
183
|
+
const user = await this.client.getCurrentUser();
|
|
184
|
+
return {
|
|
185
|
+
authenticated: true,
|
|
186
|
+
method: this.authType,
|
|
187
|
+
user,
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
catch (error) {
|
|
191
|
+
return {
|
|
192
|
+
authenticated: false,
|
|
193
|
+
method: this.authType,
|
|
194
|
+
error: error.message,
|
|
195
|
+
};
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Switch authentication method
|
|
200
|
+
*/
|
|
201
|
+
async switchAuthMethod(newConfig) {
|
|
202
|
+
// Update client configuration
|
|
203
|
+
this.client.config.auth = newConfig;
|
|
204
|
+
this.authType = newConfig.method;
|
|
205
|
+
// Re-authenticate with new method
|
|
206
|
+
return await this.authenticate();
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* Start OAuth 2.0 flow (for future implementation)
|
|
210
|
+
*/
|
|
211
|
+
async startOAuthFlow() {
|
|
212
|
+
const { clientId } = this.client.config.auth;
|
|
213
|
+
if (!clientId) {
|
|
214
|
+
throw new Error("OAuth requires client ID");
|
|
215
|
+
}
|
|
216
|
+
const state = this.generateRandomState();
|
|
217
|
+
const redirectUri = "http://localhost:8080/oauth/callback";
|
|
218
|
+
const authUrl = new URL("/oauth/authorize", this.client.config.baseUrl);
|
|
219
|
+
authUrl.searchParams.append("client_id", clientId);
|
|
220
|
+
authUrl.searchParams.append("redirect_uri", redirectUri);
|
|
221
|
+
authUrl.searchParams.append("response_type", "code");
|
|
222
|
+
authUrl.searchParams.append("state", state);
|
|
223
|
+
authUrl.searchParams.append("scope", "read write");
|
|
224
|
+
return {
|
|
225
|
+
authUrl: authUrl.toString(),
|
|
226
|
+
state,
|
|
227
|
+
};
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* Complete OAuth 2.0 flow (for future implementation)
|
|
231
|
+
*/
|
|
232
|
+
async completeOAuthFlow(code, state) {
|
|
233
|
+
// This would implement the OAuth token exchange
|
|
234
|
+
// For now, this is a placeholder
|
|
235
|
+
throw new Error("OAuth flow not yet implemented");
|
|
236
|
+
}
|
|
237
|
+
/**
|
|
238
|
+
* Generate random state for OAuth
|
|
239
|
+
*/
|
|
240
|
+
generateRandomState(length = 32) {
|
|
241
|
+
const chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
|
|
242
|
+
let result = "";
|
|
243
|
+
for (let i = 0; i < length; i++) {
|
|
244
|
+
result += chars.charAt(Math.floor(Math.random() * chars.length));
|
|
245
|
+
}
|
|
246
|
+
return result;
|
|
247
|
+
}
|
|
248
|
+
/**
|
|
249
|
+
* Get authentication headers for the current method
|
|
250
|
+
*/
|
|
251
|
+
getAuthHeaders() {
|
|
252
|
+
const headers = {};
|
|
253
|
+
const auth = this.client.config.auth;
|
|
254
|
+
switch (this.authType) {
|
|
255
|
+
case "app-password":
|
|
256
|
+
if (auth.username && auth.appPassword) {
|
|
257
|
+
const credentials = Buffer.from(`${auth.username}:${auth.appPassword}`).toString("base64");
|
|
258
|
+
headers["Authorization"] = `Basic ${credentials}`;
|
|
259
|
+
}
|
|
260
|
+
break;
|
|
261
|
+
case "basic":
|
|
262
|
+
if (auth.username && auth.password) {
|
|
263
|
+
const credentials = Buffer.from(`${auth.username}:${auth.password}`).toString("base64");
|
|
264
|
+
headers["Authorization"] = `Basic ${credentials}`;
|
|
265
|
+
}
|
|
266
|
+
break;
|
|
267
|
+
case "jwt":
|
|
268
|
+
if (auth.token) {
|
|
269
|
+
headers["Authorization"] = `Bearer ${auth.token}`;
|
|
270
|
+
}
|
|
271
|
+
break;
|
|
272
|
+
case "api-key":
|
|
273
|
+
if (auth.apiKey) {
|
|
274
|
+
headers["X-API-Key"] = auth.apiKey;
|
|
275
|
+
}
|
|
276
|
+
break;
|
|
277
|
+
case "cookie":
|
|
278
|
+
if (auth.nonce) {
|
|
279
|
+
headers["X-WP-Nonce"] = auth.nonce;
|
|
280
|
+
}
|
|
281
|
+
break;
|
|
282
|
+
}
|
|
283
|
+
return headers;
|
|
284
|
+
}
|
|
285
|
+
/**
|
|
286
|
+
* Check if authentication method requires additional setup
|
|
287
|
+
*/
|
|
288
|
+
requiresSetup() {
|
|
289
|
+
switch (this.authType) {
|
|
290
|
+
case "jwt":
|
|
291
|
+
return !this.client.config.auth.secret;
|
|
292
|
+
case "api-key":
|
|
293
|
+
return !this.client.config.auth.apiKey;
|
|
294
|
+
case "app-password":
|
|
295
|
+
return (!this.client.config.auth.username ||
|
|
296
|
+
!this.client.config.auth.appPassword);
|
|
297
|
+
case "basic":
|
|
298
|
+
return (!this.client.config.auth.username || !this.client.config.auth.password);
|
|
299
|
+
case "cookie":
|
|
300
|
+
return false; // Cookie auth can work without additional setup
|
|
301
|
+
default:
|
|
302
|
+
return true;
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
/**
|
|
306
|
+
* Get setup instructions for the current authentication method
|
|
307
|
+
*/
|
|
308
|
+
getSetupInstructions() {
|
|
309
|
+
switch (this.authType) {
|
|
310
|
+
case "app-password":
|
|
311
|
+
return `
|
|
312
|
+
To set up Application Password authentication:
|
|
313
|
+
1. Log into your WordPress admin dashboard
|
|
314
|
+
2. Go to Users → Profile (or Users → All Users → Edit your user)
|
|
315
|
+
3. Scroll down to "Application Passwords" section
|
|
316
|
+
4. Enter a name for this application (e.g., "MCP WordPress Server")
|
|
317
|
+
5. Click "Add New Application Password"
|
|
318
|
+
6. Copy the generated password and set it as WORDPRESS_APP_PASSWORD
|
|
319
|
+
7. Set WORDPRESS_USERNAME to your WordPress username
|
|
320
|
+
`;
|
|
321
|
+
case "jwt":
|
|
322
|
+
return `
|
|
323
|
+
To set up JWT authentication:
|
|
324
|
+
1. Install the "JWT Authentication for WP REST API" plugin
|
|
325
|
+
2. Add JWT_AUTH_SECRET_KEY to your wp-config.php file
|
|
326
|
+
3. Configure the plugin settings
|
|
327
|
+
4. Set WORDPRESS_JWT_SECRET environment variable
|
|
328
|
+
5. Set WORDPRESS_USERNAME and WORDPRESS_PASSWORD
|
|
329
|
+
`;
|
|
330
|
+
case "api-key":
|
|
331
|
+
return `
|
|
332
|
+
To set up API Key authentication:
|
|
333
|
+
1. Install an API Key plugin (varies by plugin)
|
|
334
|
+
2. Generate an API key in the plugin settings
|
|
335
|
+
3. Set WORDPRESS_API_KEY environment variable
|
|
336
|
+
`;
|
|
337
|
+
case "basic":
|
|
338
|
+
return `
|
|
339
|
+
To set up Basic authentication:
|
|
340
|
+
1. Set WORDPRESS_USERNAME to your WordPress username
|
|
341
|
+
2. Set WORDPRESS_PASSWORD to your WordPress password
|
|
342
|
+
Note: This method is less secure than Application Passwords
|
|
343
|
+
`;
|
|
344
|
+
case "cookie":
|
|
345
|
+
return `
|
|
346
|
+
Cookie authentication is automatically configured when you're logged into WordPress.
|
|
347
|
+
For write operations, you may need to set WORDPRESS_COOKIE_NONCE.
|
|
348
|
+
`;
|
|
349
|
+
default:
|
|
350
|
+
return "No setup instructions available for this authentication method.";
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
}
|
|
354
|
+
/**
|
|
355
|
+
* Authentication Provider implementations
|
|
356
|
+
*/
|
|
357
|
+
export class AppPasswordAuthProvider {
|
|
358
|
+
method = "app-password";
|
|
359
|
+
async authenticate(client) {
|
|
360
|
+
const auth = new WordPressAuth(client);
|
|
361
|
+
return auth.authenticate();
|
|
362
|
+
}
|
|
363
|
+
addAuthHeaders(headers) {
|
|
364
|
+
// Implementation handled by WordPressAuth
|
|
365
|
+
}
|
|
366
|
+
}
|
|
367
|
+
export class JWTAuthProvider {
|
|
368
|
+
method = "jwt";
|
|
369
|
+
async authenticate(client) {
|
|
370
|
+
const auth = new WordPressAuth(client);
|
|
371
|
+
return auth.authenticate();
|
|
372
|
+
}
|
|
373
|
+
addAuthHeaders(headers) {
|
|
374
|
+
// Implementation handled by WordPressAuth
|
|
375
|
+
}
|
|
376
|
+
async refreshAuth() {
|
|
377
|
+
// JWT token refresh logic
|
|
378
|
+
return true;
|
|
379
|
+
}
|
|
380
|
+
}
|
|
381
|
+
export class BasicAuthProvider {
|
|
382
|
+
method = "basic";
|
|
383
|
+
async authenticate(client) {
|
|
384
|
+
const auth = new WordPressAuth(client);
|
|
385
|
+
return auth.authenticate();
|
|
386
|
+
}
|
|
387
|
+
addAuthHeaders(headers) {
|
|
388
|
+
// Implementation handled by WordPressAuth
|
|
389
|
+
}
|
|
390
|
+
}
|
|
391
|
+
export class APIKeyAuthProvider {
|
|
392
|
+
method = "api-key";
|
|
393
|
+
async authenticate(client) {
|
|
394
|
+
const auth = new WordPressAuth(client);
|
|
395
|
+
return auth.authenticate();
|
|
396
|
+
}
|
|
397
|
+
addAuthHeaders(headers) {
|
|
398
|
+
// Implementation handled by WordPressAuth
|
|
399
|
+
}
|
|
400
|
+
}
|
|
401
|
+
export class CookieAuthProvider {
|
|
402
|
+
method = "cookie";
|
|
403
|
+
async authenticate(client) {
|
|
404
|
+
const auth = new WordPressAuth(client);
|
|
405
|
+
return auth.authenticate();
|
|
406
|
+
}
|
|
407
|
+
addAuthHeaders(headers) {
|
|
408
|
+
// Implementation handled by WordPressAuth
|
|
409
|
+
}
|
|
410
|
+
}
|
|
411
|
+
/**
|
|
412
|
+
* Factory function to create appropriate auth provider
|
|
413
|
+
*/
|
|
414
|
+
export function createAuthProvider(method) {
|
|
415
|
+
switch (method) {
|
|
416
|
+
case "app-password":
|
|
417
|
+
return new AppPasswordAuthProvider();
|
|
418
|
+
case "jwt":
|
|
419
|
+
return new JWTAuthProvider();
|
|
420
|
+
case "basic":
|
|
421
|
+
return new BasicAuthProvider();
|
|
422
|
+
case "api-key":
|
|
423
|
+
return new APIKeyAuthProvider();
|
|
424
|
+
case "cookie":
|
|
425
|
+
return new CookieAuthProvider();
|
|
426
|
+
default:
|
|
427
|
+
throw new Error(`Unsupported authentication method: ${method}`);
|
|
428
|
+
}
|
|
429
|
+
}
|
|
430
|
+
//# sourceMappingURL=auth.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/client/auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Authentication Manager
|
|
3
|
+
* Handles all authentication methods and token management
|
|
4
|
+
*/
|
|
5
|
+
import type { AuthConfig } from "../../types/client.js";
|
|
6
|
+
import { BaseManager } from "./BaseManager.js";
|
|
7
|
+
export declare class AuthenticationManager extends BaseManager {
|
|
8
|
+
private jwtToken;
|
|
9
|
+
private authenticated;
|
|
10
|
+
/**
|
|
11
|
+
* Get authentication from environment variables
|
|
12
|
+
*/
|
|
13
|
+
static getAuthFromEnv(): AuthConfig;
|
|
14
|
+
/**
|
|
15
|
+
* Get authentication headers for requests
|
|
16
|
+
*/
|
|
17
|
+
getAuthHeaders(): Promise<Record<string, string>>;
|
|
18
|
+
/**
|
|
19
|
+
* Authenticate using JWT
|
|
20
|
+
*/
|
|
21
|
+
private authenticateJWT;
|
|
22
|
+
/**
|
|
23
|
+
* Test authentication
|
|
24
|
+
*/
|
|
25
|
+
testAuthentication(): Promise<boolean>;
|
|
26
|
+
/**
|
|
27
|
+
* Get authentication status
|
|
28
|
+
*/
|
|
29
|
+
isAuthenticated(): boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Clear authentication state
|
|
32
|
+
*/
|
|
33
|
+
clearAuthentication(): void;
|
|
34
|
+
/**
|
|
35
|
+
* Validate authentication configuration
|
|
36
|
+
*/
|
|
37
|
+
validateAuthConfig(): void;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=AuthenticationManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AuthenticationManager.d.ts","sourceRoot":"","sources":["../../../src/client/managers/AuthenticationManager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAc,MAAM,uBAAuB,CAAC;AAEpE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C,qBAAa,qBAAsB,SAAQ,WAAW;IACpD,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,aAAa,CAAkB;IAEvC;;OAEG;IACH,MAAM,CAAC,cAAc,IAAI,UAAU;IAsCnC;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAqCvD;;OAEG;YACW,eAAe;IAiB7B;;OAEG;IACG,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAiB5C;;OAEG;IACH,eAAe,IAAI,OAAO;IAI1B;;OAEG;IACH,mBAAmB,IAAI,IAAI;IAK3B;;OAEG;IACH,kBAAkB,IAAI,IAAI;CAoC3B"}
|