mcp-wordpress 2.6.4 → 2.7.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 +1 -1
- package/dist/cache/CacheInvalidation.d.ts +25 -6
- package/dist/cache/CacheInvalidation.d.ts.map +1 -1
- package/dist/cache/CacheInvalidation.js +168 -16
- package/dist/cache/CacheInvalidation.js.map +1 -1
- package/dist/cache/HttpCacheWrapper.d.ts.map +1 -1
- package/dist/cache/HttpCacheWrapper.js +3 -4
- package/dist/cache/HttpCacheWrapper.js.map +1 -1
- package/dist/cache/SEOCacheManager.d.ts +150 -0
- package/dist/cache/SEOCacheManager.d.ts.map +1 -0
- package/dist/cache/SEOCacheManager.js +275 -0
- package/dist/cache/SEOCacheManager.js.map +1 -0
- package/dist/client/SEOWordPressClient.d.ts +164 -0
- package/dist/client/SEOWordPressClient.d.ts.map +1 -0
- package/dist/client/SEOWordPressClient.js +674 -0
- package/dist/client/SEOWordPressClient.js.map +1 -0
- package/dist/client/api.d.ts.map +1 -1
- package/dist/client/api.js +50 -20
- package/dist/client/api.js.map +1 -1
- package/dist/client/auth.js +19 -19
- package/dist/client/auth.js.map +1 -1
- package/dist/client/index.d.ts +11 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +14 -0
- package/dist/client/index.js.map +1 -0
- package/dist/client/managers/AuthManager.d.ts +39 -0
- package/dist/client/managers/AuthManager.d.ts.map +1 -0
- package/dist/client/managers/AuthManager.js +142 -0
- package/dist/client/managers/AuthManager.js.map +1 -0
- package/dist/client/managers/AuthenticationManager.d.ts.map +1 -1
- package/dist/client/managers/AuthenticationManager.js +10 -9
- package/dist/client/managers/AuthenticationManager.js.map +1 -1
- package/dist/client/managers/BaseManager.d.ts.map +1 -1
- package/dist/client/managers/BaseManager.js +12 -0
- package/dist/client/managers/BaseManager.js.map +1 -1
- package/dist/client/managers/ComposedAuthenticationManager.d.ts +94 -0
- package/dist/client/managers/ComposedAuthenticationManager.d.ts.map +1 -0
- package/dist/client/managers/ComposedAuthenticationManager.js +340 -0
- package/dist/client/managers/ComposedAuthenticationManager.js.map +1 -0
- package/dist/client/managers/ComposedManagerFactory.d.ts +104 -0
- package/dist/client/managers/ComposedManagerFactory.d.ts.map +1 -0
- package/dist/client/managers/ComposedManagerFactory.js +180 -0
- package/dist/client/managers/ComposedManagerFactory.js.map +1 -0
- package/dist/client/managers/ComposedRequestManager.d.ts +82 -0
- package/dist/client/managers/ComposedRequestManager.d.ts.map +1 -0
- package/dist/client/managers/ComposedRequestManager.js +260 -0
- package/dist/client/managers/ComposedRequestManager.js.map +1 -0
- package/dist/client/managers/JWTAuthImplementation.d.ts +86 -0
- package/dist/client/managers/JWTAuthImplementation.d.ts.map +1 -0
- package/dist/client/managers/JWTAuthImplementation.js +240 -0
- package/dist/client/managers/JWTAuthImplementation.js.map +1 -0
- package/dist/client/managers/ManagersIndex.d.ts +6 -0
- package/dist/client/managers/ManagersIndex.d.ts.map +1 -0
- package/dist/client/managers/ManagersIndex.js +6 -0
- package/dist/client/managers/ManagersIndex.js.map +1 -0
- package/dist/client/managers/RequestManager.d.ts.map +1 -1
- package/dist/client/managers/RequestManager.js +5 -3
- package/dist/client/managers/RequestManager.js.map +1 -1
- package/dist/client/managers/composed/MigrationAdapter.d.ts +80 -0
- package/dist/client/managers/composed/MigrationAdapter.d.ts.map +1 -0
- package/dist/client/managers/composed/MigrationAdapter.js +214 -0
- package/dist/client/managers/composed/MigrationAdapter.js.map +1 -0
- package/dist/client/managers/composed/index.d.ts +23 -0
- package/dist/client/managers/composed/index.d.ts.map +1 -0
- package/dist/client/managers/composed/index.js +26 -0
- package/dist/client/managers/composed/index.js.map +1 -0
- package/dist/client/managers/implementations/ConfigurationProviderImpl.d.ts +27 -0
- package/dist/client/managers/implementations/ConfigurationProviderImpl.d.ts.map +1 -0
- package/dist/client/managers/implementations/ConfigurationProviderImpl.js +41 -0
- package/dist/client/managers/implementations/ConfigurationProviderImpl.js.map +1 -0
- package/dist/client/managers/implementations/ErrorHandlerImpl.d.ts +31 -0
- package/dist/client/managers/implementations/ErrorHandlerImpl.d.ts.map +1 -0
- package/dist/client/managers/implementations/ErrorHandlerImpl.js +73 -0
- package/dist/client/managers/implementations/ErrorHandlerImpl.js.map +1 -0
- package/dist/client/managers/implementations/ParameterValidatorImpl.d.ts +47 -0
- package/dist/client/managers/implementations/ParameterValidatorImpl.d.ts.map +1 -0
- package/dist/client/managers/implementations/ParameterValidatorImpl.js +141 -0
- package/dist/client/managers/implementations/ParameterValidatorImpl.js.map +1 -0
- package/dist/client/managers/interfaces/ManagerInterfaces.d.ts +147 -0
- package/dist/client/managers/interfaces/ManagerInterfaces.d.ts.map +1 -0
- package/dist/client/managers/interfaces/ManagerInterfaces.js +6 -0
- package/dist/client/managers/interfaces/ManagerInterfaces.js.map +1 -0
- package/dist/config/Config.d.ts +30 -0
- package/dist/config/Config.d.ts.map +1 -1
- package/dist/config/Config.js +30 -0
- package/dist/config/Config.js.map +1 -1
- package/dist/config/ConfigurationSchema.d.ts +75 -198
- package/dist/config/ConfigurationSchema.d.ts.map +1 -1
- package/dist/config/ConfigurationSchema.js +17 -17
- package/dist/config/ConfigurationSchema.js.map +1 -1
- package/dist/config/ServerConfiguration.d.ts +2 -2
- package/dist/config/ServerConfiguration.d.ts.map +1 -1
- package/dist/config/ServerConfiguration.js +15 -13
- package/dist/config/ServerConfiguration.js.map +1 -1
- package/dist/config/index.d.ts +8 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +11 -0
- package/dist/config/index.js.map +1 -0
- package/dist/docs/DocumentationGenerator.js +2 -2
- package/dist/docs/DocumentationGenerator.js.map +1 -1
- package/dist/dxt-entry.js +3 -3
- package/dist/dxt-entry.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +38 -37
- package/dist/index.js.map +1 -1
- package/dist/performance/MetricsCollector.d.ts.map +1 -1
- package/dist/performance/MetricsCollector.js +5 -4
- package/dist/performance/MetricsCollector.js.map +1 -1
- package/dist/security/AISecurityScanner.js +7 -7
- package/dist/security/AISecurityScanner.js.map +1 -1
- package/dist/security/AutomatedRemediation.d.ts.map +1 -1
- package/dist/security/AutomatedRemediation.js +11 -11
- package/dist/security/AutomatedRemediation.js.map +1 -1
- package/dist/security/InputValidator.d.ts +50 -126
- package/dist/security/InputValidator.d.ts.map +1 -1
- package/dist/security/InputValidator.js +9 -9
- package/dist/security/InputValidator.js.map +1 -1
- package/dist/security/SecurityCIPipeline.d.ts +47 -5
- package/dist/security/SecurityCIPipeline.d.ts.map +1 -1
- package/dist/security/SecurityCIPipeline.js +390 -49
- package/dist/security/SecurityCIPipeline.js.map +1 -1
- package/dist/security/SecurityConfigManager.js +10 -10
- package/dist/security/SecurityConfigManager.js.map +1 -1
- package/dist/security/SecurityMonitoring.js +4 -4
- package/dist/security/SecurityMonitoring.js.map +1 -1
- package/dist/security/SecurityReviewer.d.ts.map +1 -1
- package/dist/security/SecurityReviewer.js +13 -6
- package/dist/security/SecurityReviewer.js.map +1 -1
- package/dist/security/index.js +3 -3
- package/dist/security/index.js.map +1 -1
- package/dist/server/ConnectionTester.js +5 -5
- 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 +7 -6
- package/dist/server/ToolRegistry.js.map +1 -1
- package/dist/server/index.d.ts +7 -0
- package/dist/server/index.d.ts.map +1 -0
- package/dist/server/index.js +9 -0
- package/dist/server/index.js.map +1 -0
- package/dist/tools/BaseToolManager.d.ts.map +1 -1
- package/dist/tools/BaseToolManager.js +11 -11
- package/dist/tools/BaseToolManager.js.map +1 -1
- package/dist/tools/auth.d.ts.map +1 -1
- package/dist/tools/auth.js +7 -7
- package/dist/tools/auth.js.map +1 -1
- package/dist/tools/comments.d.ts.map +1 -1
- package/dist/tools/comments.js +14 -14
- package/dist/tools/comments.js.map +1 -1
- package/dist/tools/index.d.ts +1 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +1 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/media.d.ts.map +1 -1
- package/dist/tools/media.js +14 -11
- package/dist/tools/media.js.map +1 -1
- package/dist/tools/pages.d.ts.map +1 -1
- package/dist/tools/pages.js +12 -12
- package/dist/tools/pages.js.map +1 -1
- package/dist/tools/performance.d.ts.map +1 -1
- package/dist/tools/performance.js +13 -11
- package/dist/tools/performance.js.map +1 -1
- package/dist/tools/posts/PostHandlers.d.ts.map +1 -1
- package/dist/tools/posts/PostHandlers.js +16 -16
- package/dist/tools/posts/PostHandlers.js.map +1 -1
- package/dist/tools/posts/PostToolDefinitions.d.ts.map +1 -1
- package/dist/tools/posts/index.d.ts.map +1 -1
- package/dist/tools/seo/BulkOperations.d.ts +113 -0
- package/dist/tools/seo/BulkOperations.d.ts.map +1 -0
- package/dist/tools/seo/BulkOperations.js +398 -0
- package/dist/tools/seo/BulkOperations.js.map +1 -0
- package/dist/tools/seo/SEOHandlers.d.ts +55 -0
- package/dist/tools/seo/SEOHandlers.d.ts.map +1 -0
- package/dist/tools/seo/SEOHandlers.js +255 -0
- package/dist/tools/seo/SEOHandlers.js.map +1 -0
- package/dist/tools/seo/SEOToolDefinitions.d.ts +59 -0
- package/dist/tools/seo/SEOToolDefinitions.d.ts.map +1 -0
- package/dist/tools/seo/SEOToolDefinitions.js +385 -0
- package/dist/tools/seo/SEOToolDefinitions.js.map +1 -0
- package/dist/tools/seo/SEOTools.d.ts +203 -0
- package/dist/tools/seo/SEOTools.d.ts.map +1 -0
- package/dist/tools/seo/SEOTools.js +708 -0
- package/dist/tools/seo/SEOTools.js.map +1 -0
- package/dist/tools/seo/analyzers/ContentAnalyzer.d.ts +94 -0
- package/dist/tools/seo/analyzers/ContentAnalyzer.d.ts.map +1 -0
- package/dist/tools/seo/analyzers/ContentAnalyzer.js +402 -0
- package/dist/tools/seo/analyzers/ContentAnalyzer.js.map +1 -0
- package/dist/tools/seo/auditors/SiteAuditor.d.ts +121 -0
- package/dist/tools/seo/auditors/SiteAuditor.d.ts.map +1 -0
- package/dist/tools/seo/auditors/SiteAuditor.js +600 -0
- package/dist/tools/seo/auditors/SiteAuditor.js.map +1 -0
- package/dist/tools/seo/generators/MetaGenerator.d.ts +128 -0
- package/dist/tools/seo/generators/MetaGenerator.d.ts.map +1 -0
- package/dist/tools/seo/generators/MetaGenerator.js +547 -0
- package/dist/tools/seo/generators/MetaGenerator.js.map +1 -0
- package/dist/tools/seo/generators/SchemaGenerator.d.ts +204 -0
- package/dist/tools/seo/generators/SchemaGenerator.d.ts.map +1 -0
- package/dist/tools/seo/generators/SchemaGenerator.js +670 -0
- package/dist/tools/seo/generators/SchemaGenerator.js.map +1 -0
- package/dist/tools/seo/index.d.ts +17 -0
- package/dist/tools/seo/index.d.ts.map +1 -0
- package/dist/tools/seo/index.js +18 -0
- package/dist/tools/seo/index.js.map +1 -0
- package/dist/tools/seo/optimizers/InternalLinkingSuggester.d.ts +186 -0
- package/dist/tools/seo/optimizers/InternalLinkingSuggester.d.ts.map +1 -0
- package/dist/tools/seo/optimizers/InternalLinkingSuggester.js +683 -0
- package/dist/tools/seo/optimizers/InternalLinkingSuggester.js.map +1 -0
- package/dist/tools/site.d.ts.map +1 -1
- package/dist/tools/site.js +12 -12
- package/dist/tools/site.js.map +1 -1
- package/dist/tools/taxonomies.d.ts.map +1 -1
- package/dist/tools/taxonomies.js +20 -20
- package/dist/tools/taxonomies.js.map +1 -1
- package/dist/tools/users.d.ts.map +1 -1
- package/dist/tools/users.js +12 -12
- package/dist/tools/users.js.map +1 -1
- package/dist/types/client.d.ts +8 -6
- package/dist/types/client.d.ts.map +1 -1
- package/dist/types/client.js.map +1 -1
- package/dist/types/seo.d.ts +473 -0
- package/dist/types/seo.d.ts.map +1 -0
- package/dist/types/seo.js +94 -0
- package/dist/types/seo.js.map +1 -0
- package/dist/utils/enhancedError.js +1 -1
- package/dist/utils/enhancedError.js.map +1 -1
- package/dist/utils/error.d.ts.map +1 -1
- package/dist/utils/error.js +0 -1
- package/dist/utils/error.js.map +1 -1
- package/dist/utils/index.d.ts +12 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +18 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/logger.js +3 -3
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/toolWrapper.d.ts +2 -2
- package/dist/utils/toolWrapper.js +8 -8
- package/dist/utils/toolWrapper.js.map +1 -1
- package/dist/utils/validation/core.d.ts.map +1 -1
- package/dist/utils/validation/core.js.map +1 -1
- package/dist/utils/validation/index.d.ts.map +1 -1
- package/dist/utils/validation/index.js.map +1 -1
- package/dist/utils/validation/network.js +3 -3
- package/dist/utils/validation/network.js.map +1 -1
- package/dist/utils/validation/rateLimit.js.map +1 -1
- package/dist/utils/validation/security.js.map +1 -1
- package/dist/utils/validation/wordpress.js.map +1 -1
- package/dist/utils/version.d.ts +144 -0
- package/dist/utils/version.d.ts.map +1 -0
- package/dist/utils/version.js +318 -0
- package/dist/utils/version.js.map +1 -0
- package/package.json +21 -55
- package/src/cache/CacheInvalidation.ts +183 -20
- package/src/cache/HttpCacheWrapper.ts +8 -5
- package/src/cache/SEOCacheManager.ts +330 -0
- package/src/cache/__tests__/CacheInvalidation.test.ts +6 -11
- package/src/cache/__tests__/CachedWordPressClient.test.ts +37 -62
- package/src/client/SEOWordPressClient.ts +876 -0
- package/src/client/api.ts +50 -21
- package/src/client/auth.ts +19 -19
- package/src/client/index.ts +16 -0
- package/src/client/managers/AuthManager.ts +175 -0
- package/src/client/managers/AuthenticationManager.ts +16 -14
- package/src/client/managers/BaseManager.ts +24 -5
- package/src/client/managers/ComposedAuthenticationManager.ts +409 -0
- package/src/client/managers/ComposedManagerFactory.ts +231 -0
- package/src/client/managers/ComposedRequestManager.ts +336 -0
- package/src/client/managers/JWTAuthImplementation.ts +326 -0
- package/src/client/managers/ManagersIndex.ts +6 -0
- package/src/client/managers/RequestManager.ts +9 -7
- package/src/client/managers/composed/MigrationAdapter.ts +263 -0
- package/src/client/managers/composed/index.ts +47 -0
- package/src/client/managers/implementations/ConfigurationProviderImpl.ts +52 -0
- package/src/client/managers/implementations/ErrorHandlerImpl.ts +102 -0
- package/src/client/managers/implementations/ParameterValidatorImpl.ts +221 -0
- package/src/client/managers/interfaces/ManagerInterfaces.ts +171 -0
- package/src/config/Config.ts +63 -0
- package/src/config/ConfigurationSchema.ts +17 -17
- package/src/config/ServerConfiguration.ts +18 -16
- package/src/config/index.ts +13 -0
- package/src/docs/DocumentationGenerator.ts +2 -2
- package/src/dxt-entry.ts +3 -3
- package/src/index.ts +43 -43
- package/src/performance/MetricsCollector.ts +15 -11
- package/src/security/AISecurityScanner.ts +7 -7
- package/src/security/AutomatedRemediation.ts +13 -11
- package/src/security/InputValidator.ts +10 -9
- package/src/security/SecurityCIPipeline.ts +494 -56
- package/src/security/SecurityConfigManager.ts +10 -10
- package/src/security/SecurityMonitoring.ts +5 -5
- package/src/security/SecurityReviewer.ts +13 -6
- package/src/security/index.ts +3 -3
- package/src/server/ConnectionTester.ts +5 -5
- package/src/server/ToolRegistry.ts +9 -8
- package/src/server/index.ts +10 -0
- package/src/tools/BaseToolManager.ts +55 -83
- package/src/tools/auth.ts +21 -12
- package/src/tools/comments.ts +23 -19
- package/src/tools/index.ts +1 -0
- package/src/tools/media.ts +23 -20
- package/src/tools/pages.ts +20 -13
- package/src/tools/performance.ts +101 -32
- package/src/tools/posts/PostHandlers.ts +23 -23
- package/src/tools/posts/PostToolDefinitions.ts +1 -1
- package/src/tools/posts/index.ts +2 -2
- package/src/tools/seo/BulkOperations.ts +557 -0
- package/src/tools/seo/SEOHandlers.ts +296 -0
- package/src/tools/seo/SEOToolDefinitions.ts +402 -0
- package/src/tools/seo/SEOTools.ts +871 -0
- package/src/tools/seo/analyzers/ContentAnalyzer.ts +493 -0
- package/src/tools/seo/auditors/SiteAuditor.ts +787 -0
- package/src/tools/seo/generators/MetaGenerator.ts +694 -0
- package/src/tools/seo/generators/SchemaGenerator.ts +955 -0
- package/src/tools/seo/index.ts +47 -0
- package/src/tools/seo/optimizers/InternalLinkingSuggester.ts +934 -0
- package/src/tools/site.ts +27 -26
- package/src/tools/taxonomies.ts +29 -25
- package/src/tools/users.ts +20 -13
- package/src/types/client.ts +8 -6
- package/src/types/seo.ts +546 -0
- package/src/utils/enhancedError.ts +1 -1
- package/src/utils/error.ts +1 -2
- package/src/utils/index.ts +23 -0
- package/src/utils/logger.ts +3 -3
- package/src/utils/toolWrapper.ts +10 -10
- package/src/utils/validation/core.ts +2 -2
- package/src/utils/validation/index.ts +2 -2
- package/src/utils/validation/network.ts +5 -5
- package/src/utils/validation/rateLimit.ts +1 -1
- package/src/utils/validation/security.ts +1 -1
- package/src/utils/validation/wordpress.ts +1 -1
- package/src/utils/version.ts +402 -0
package/src/tools/site.ts
CHANGED
|
@@ -14,7 +14,14 @@ export class SiteTools {
|
|
|
14
14
|
public getTools(): Array<{
|
|
15
15
|
name: string;
|
|
16
16
|
description: string;
|
|
17
|
-
parameters?: Array<{
|
|
17
|
+
parameters?: Array<{
|
|
18
|
+
name: string;
|
|
19
|
+
type?: string;
|
|
20
|
+
description?: string;
|
|
21
|
+
required?: boolean;
|
|
22
|
+
enum?: string[];
|
|
23
|
+
items?: unknown;
|
|
24
|
+
}>;
|
|
18
25
|
handler: (client: WordPressClient, params: Record<string, unknown>) => Promise<unknown>;
|
|
19
26
|
}> {
|
|
20
27
|
return [
|
|
@@ -126,10 +133,7 @@ export class SiteTools {
|
|
|
126
133
|
];
|
|
127
134
|
}
|
|
128
135
|
|
|
129
|
-
public async handleGetSiteSettings(
|
|
130
|
-
client: WordPressClient,
|
|
131
|
-
_params: Record<string, unknown>,
|
|
132
|
-
): Promise<unknown> {
|
|
136
|
+
public async handleGetSiteSettings(client: WordPressClient, _params: Record<string, unknown>): Promise<unknown> {
|
|
133
137
|
try {
|
|
134
138
|
const settings = await client.getSiteSettings();
|
|
135
139
|
const siteUrl = client.getSiteUrl();
|
|
@@ -182,27 +186,21 @@ export class SiteTools {
|
|
|
182
186
|
content += `**📊 Retrieved:** ${new Date().toLocaleString()}`;
|
|
183
187
|
|
|
184
188
|
return content;
|
|
185
|
-
} catch (
|
|
186
|
-
throw new Error(`Failed to get site settings: ${getErrorMessage(
|
|
189
|
+
} catch (_error) {
|
|
190
|
+
throw new Error(`Failed to get site settings: ${getErrorMessage(_error)}`);
|
|
187
191
|
}
|
|
188
192
|
}
|
|
189
193
|
|
|
190
|
-
public async handleUpdateSiteSettings(
|
|
191
|
-
client: WordPressClient,
|
|
192
|
-
params: Record<string, unknown>,
|
|
193
|
-
): Promise<unknown> {
|
|
194
|
+
public async handleUpdateSiteSettings(client: WordPressClient, params: Record<string, unknown>): Promise<unknown> {
|
|
194
195
|
try {
|
|
195
196
|
const updatedSettings = await client.updateSiteSettings(params);
|
|
196
197
|
return `✅ Site settings updated successfully. New title: ${updatedSettings.title}`;
|
|
197
|
-
} catch (
|
|
198
|
-
throw new Error(`Failed to update site settings: ${getErrorMessage(
|
|
198
|
+
} catch (_error) {
|
|
199
|
+
throw new Error(`Failed to update site settings: ${getErrorMessage(_error)}`);
|
|
199
200
|
}
|
|
200
201
|
}
|
|
201
202
|
|
|
202
|
-
public async handleSearchSite(
|
|
203
|
-
client: WordPressClient,
|
|
204
|
-
params: Record<string, unknown>,
|
|
205
|
-
): Promise<unknown> {
|
|
203
|
+
public async handleSearchSite(client: WordPressClient, params: Record<string, unknown>): Promise<unknown> {
|
|
206
204
|
try {
|
|
207
205
|
const { term, type } = params as { term: string; type?: "posts" | "pages" | "media" };
|
|
208
206
|
const results = await client.search(term, type ? [type] : undefined);
|
|
@@ -213,12 +211,15 @@ export class SiteTools {
|
|
|
213
211
|
`Found ${results.length} results for "${term}":\n\n` +
|
|
214
212
|
results.map((r) => `- [${r.type}] **${r.title}**\n Link: ${r.url}`).join("\n");
|
|
215
213
|
return content;
|
|
216
|
-
} catch (
|
|
217
|
-
throw new Error(`Failed to perform search: ${getErrorMessage(
|
|
214
|
+
} catch (_error) {
|
|
215
|
+
throw new Error(`Failed to perform search: ${getErrorMessage(_error)}`);
|
|
218
216
|
}
|
|
219
217
|
}
|
|
220
218
|
|
|
221
|
-
public async handleGetApplicationPasswords(
|
|
219
|
+
public async handleGetApplicationPasswords(
|
|
220
|
+
client: WordPressClient,
|
|
221
|
+
params: Record<string, unknown>,
|
|
222
|
+
): Promise<unknown> {
|
|
222
223
|
try {
|
|
223
224
|
const { user_id } = params as { user_id: number };
|
|
224
225
|
const passwords = await client.getApplicationPasswords(user_id);
|
|
@@ -234,8 +235,8 @@ export class SiteTools {
|
|
|
234
235
|
)
|
|
235
236
|
.join("\n");
|
|
236
237
|
return content;
|
|
237
|
-
} catch (
|
|
238
|
-
throw new Error(`Failed to get application passwords: ${getErrorMessage(
|
|
238
|
+
} catch (_error) {
|
|
239
|
+
throw new Error(`Failed to get application passwords: ${getErrorMessage(_error)}`);
|
|
239
240
|
}
|
|
240
241
|
}
|
|
241
242
|
|
|
@@ -252,8 +253,8 @@ export class SiteTools {
|
|
|
252
253
|
`**Password:** \`${result.password}\`\n\n` +
|
|
253
254
|
"**IMPORTANT:** This password is shown only once. Please save it securely.";
|
|
254
255
|
return content;
|
|
255
|
-
} catch (
|
|
256
|
-
throw new Error(`Failed to create application password: ${getErrorMessage(
|
|
256
|
+
} catch (_error) {
|
|
257
|
+
throw new Error(`Failed to create application password: ${getErrorMessage(_error)}`);
|
|
257
258
|
}
|
|
258
259
|
}
|
|
259
260
|
|
|
@@ -265,8 +266,8 @@ export class SiteTools {
|
|
|
265
266
|
const { user_id, uuid } = params as { user_id: number; uuid: string };
|
|
266
267
|
await client.deleteApplicationPassword(user_id, uuid);
|
|
267
268
|
return `✅ Application password with UUID ${uuid} has been revoked.`;
|
|
268
|
-
} catch (
|
|
269
|
-
throw new Error(`Failed to delete application password: ${getErrorMessage(
|
|
269
|
+
} catch (_error) {
|
|
270
|
+
throw new Error(`Failed to delete application password: ${getErrorMessage(_error)}`);
|
|
270
271
|
}
|
|
271
272
|
}
|
|
272
273
|
}
|
package/src/tools/taxonomies.ts
CHANGED
|
@@ -19,7 +19,14 @@ export class TaxonomyTools {
|
|
|
19
19
|
public getTools(): Array<{
|
|
20
20
|
name: string;
|
|
21
21
|
description: string;
|
|
22
|
-
parameters?: Array<{
|
|
22
|
+
parameters?: Array<{
|
|
23
|
+
name: string;
|
|
24
|
+
type?: string;
|
|
25
|
+
description?: string;
|
|
26
|
+
required?: boolean;
|
|
27
|
+
enum?: string[];
|
|
28
|
+
items?: unknown;
|
|
29
|
+
}>;
|
|
23
30
|
handler: (client: WordPressClient, params: Record<string, unknown>) => Promise<unknown>;
|
|
24
31
|
}> {
|
|
25
32
|
return [
|
|
@@ -187,8 +194,8 @@ export class TaxonomyTools {
|
|
|
187
194
|
`Found ${categories.length} categories:\n\n` +
|
|
188
195
|
categories.map((c) => `- ID ${c.id}: **${c.name}** (Posts: ${c.count})`).join("\n");
|
|
189
196
|
return content;
|
|
190
|
-
} catch (
|
|
191
|
-
throw new Error(`Failed to list categories: ${getErrorMessage(
|
|
197
|
+
} catch (_error) {
|
|
198
|
+
throw new Error(`Failed to list categories: ${getErrorMessage(_error)}`);
|
|
192
199
|
}
|
|
193
200
|
}
|
|
194
201
|
|
|
@@ -203,8 +210,8 @@ export class TaxonomyTools {
|
|
|
203
210
|
`- **Description:** ${category.description || "None"}\n` +
|
|
204
211
|
`- **Post Count:** ${category.count}`;
|
|
205
212
|
return content;
|
|
206
|
-
} catch (
|
|
207
|
-
throw new Error(`Failed to get category: ${getErrorMessage(
|
|
213
|
+
} catch (_error) {
|
|
214
|
+
throw new Error(`Failed to get category: ${getErrorMessage(_error)}`);
|
|
208
215
|
}
|
|
209
216
|
}
|
|
210
217
|
|
|
@@ -213,21 +220,18 @@ export class TaxonomyTools {
|
|
|
213
220
|
try {
|
|
214
221
|
const category = await client.createCategory(createParams);
|
|
215
222
|
return `✅ Category "${category.name}" created successfully with ID: ${category.id}.`;
|
|
216
|
-
} catch (
|
|
217
|
-
throw new Error(`Failed to create category: ${getErrorMessage(
|
|
223
|
+
} catch (_error) {
|
|
224
|
+
throw new Error(`Failed to create category: ${getErrorMessage(_error)}`);
|
|
218
225
|
}
|
|
219
226
|
}
|
|
220
227
|
|
|
221
|
-
public async handleUpdateCategory(
|
|
222
|
-
client: WordPressClient,
|
|
223
|
-
params: Record<string, unknown>,
|
|
224
|
-
): Promise<unknown> {
|
|
228
|
+
public async handleUpdateCategory(client: WordPressClient, params: Record<string, unknown>): Promise<unknown> {
|
|
225
229
|
const updateParams = params as unknown as UpdateCategoryRequest;
|
|
226
230
|
try {
|
|
227
231
|
const category = await client.updateCategory(updateParams);
|
|
228
232
|
return `✅ Category ${category.id} updated successfully.`;
|
|
229
|
-
} catch (
|
|
230
|
-
throw new Error(`Failed to update category: ${getErrorMessage(
|
|
233
|
+
} catch (_error) {
|
|
234
|
+
throw new Error(`Failed to update category: ${getErrorMessage(_error)}`);
|
|
231
235
|
}
|
|
232
236
|
}
|
|
233
237
|
|
|
@@ -236,8 +240,8 @@ export class TaxonomyTools {
|
|
|
236
240
|
try {
|
|
237
241
|
await client.deleteCategory(id);
|
|
238
242
|
return `✅ Category ${id} has been deleted.`;
|
|
239
|
-
} catch (
|
|
240
|
-
throw new Error(`Failed to delete category: ${getErrorMessage(
|
|
243
|
+
} catch (_error) {
|
|
244
|
+
throw new Error(`Failed to delete category: ${getErrorMessage(_error)}`);
|
|
241
245
|
}
|
|
242
246
|
}
|
|
243
247
|
|
|
@@ -252,8 +256,8 @@ export class TaxonomyTools {
|
|
|
252
256
|
`Found ${tags.length} tags:\n\n` +
|
|
253
257
|
tags.map((t) => `- ID ${t.id}: **${t.name}** (Posts: ${t.count})`).join("\n");
|
|
254
258
|
return content;
|
|
255
|
-
} catch (
|
|
256
|
-
throw new Error(`Failed to list tags: ${getErrorMessage(
|
|
259
|
+
} catch (_error) {
|
|
260
|
+
throw new Error(`Failed to list tags: ${getErrorMessage(_error)}`);
|
|
257
261
|
}
|
|
258
262
|
}
|
|
259
263
|
|
|
@@ -267,8 +271,8 @@ export class TaxonomyTools {
|
|
|
267
271
|
`- **Slug:** ${tag.slug}\n` +
|
|
268
272
|
`- **Post Count:** ${tag.count}`;
|
|
269
273
|
return content;
|
|
270
|
-
} catch (
|
|
271
|
-
throw new Error(`Failed to get tag: ${getErrorMessage(
|
|
274
|
+
} catch (_error) {
|
|
275
|
+
throw new Error(`Failed to get tag: ${getErrorMessage(_error)}`);
|
|
272
276
|
}
|
|
273
277
|
}
|
|
274
278
|
|
|
@@ -277,8 +281,8 @@ export class TaxonomyTools {
|
|
|
277
281
|
try {
|
|
278
282
|
const tag = await client.createTag(createParams);
|
|
279
283
|
return `✅ Tag "${tag.name}" created successfully with ID: ${tag.id}.`;
|
|
280
|
-
} catch (
|
|
281
|
-
throw new Error(`Failed to create tag: ${getErrorMessage(
|
|
284
|
+
} catch (_error) {
|
|
285
|
+
throw new Error(`Failed to create tag: ${getErrorMessage(_error)}`);
|
|
282
286
|
}
|
|
283
287
|
}
|
|
284
288
|
|
|
@@ -287,8 +291,8 @@ export class TaxonomyTools {
|
|
|
287
291
|
try {
|
|
288
292
|
const tag = await client.updateTag(updateParams);
|
|
289
293
|
return `✅ Tag ${tag.id} updated successfully.`;
|
|
290
|
-
} catch (
|
|
291
|
-
throw new Error(`Failed to update tag: ${getErrorMessage(
|
|
294
|
+
} catch (_error) {
|
|
295
|
+
throw new Error(`Failed to update tag: ${getErrorMessage(_error)}`);
|
|
292
296
|
}
|
|
293
297
|
}
|
|
294
298
|
|
|
@@ -297,8 +301,8 @@ export class TaxonomyTools {
|
|
|
297
301
|
try {
|
|
298
302
|
await client.deleteTag(id);
|
|
299
303
|
return `✅ Tag ${id} has been deleted.`;
|
|
300
|
-
} catch (
|
|
301
|
-
throw new Error(`Failed to delete tag: ${getErrorMessage(
|
|
304
|
+
} catch (_error) {
|
|
305
|
+
throw new Error(`Failed to delete tag: ${getErrorMessage(_error)}`);
|
|
302
306
|
}
|
|
303
307
|
}
|
|
304
308
|
}
|
package/src/tools/users.ts
CHANGED
|
@@ -15,7 +15,14 @@ export class UserTools {
|
|
|
15
15
|
public getTools(): Array<{
|
|
16
16
|
name: string;
|
|
17
17
|
description: string;
|
|
18
|
-
parameters?: Array<{
|
|
18
|
+
parameters?: Array<{
|
|
19
|
+
name: string;
|
|
20
|
+
type?: string;
|
|
21
|
+
description?: string;
|
|
22
|
+
required?: boolean;
|
|
23
|
+
enum?: string[];
|
|
24
|
+
items?: unknown;
|
|
25
|
+
}>;
|
|
19
26
|
handler: (client: WordPressClient, params: Record<string, unknown>) => Promise<unknown>;
|
|
20
27
|
}> {
|
|
21
28
|
return [
|
|
@@ -218,8 +225,8 @@ export class UserTools {
|
|
|
218
225
|
})
|
|
219
226
|
.join("\n\n");
|
|
220
227
|
return content;
|
|
221
|
-
} catch (
|
|
222
|
-
throw new Error(`Failed to list users: ${getErrorMessage(
|
|
228
|
+
} catch (_error) {
|
|
229
|
+
throw new Error(`Failed to list users: ${getErrorMessage(_error)}`);
|
|
223
230
|
}
|
|
224
231
|
}
|
|
225
232
|
|
|
@@ -234,8 +241,8 @@ export class UserTools {
|
|
|
234
241
|
`- **Email:** ${user.email}\n` +
|
|
235
242
|
`- **Roles:** ${user.roles?.join(", ") || "N/A"}`;
|
|
236
243
|
return content;
|
|
237
|
-
} catch (
|
|
238
|
-
throw new Error(`Failed to get user: ${getErrorMessage(
|
|
244
|
+
} catch (_error) {
|
|
245
|
+
throw new Error(`Failed to get user: ${getErrorMessage(_error)}`);
|
|
239
246
|
}
|
|
240
247
|
}
|
|
241
248
|
|
|
@@ -300,8 +307,8 @@ export class UserTools {
|
|
|
300
307
|
`- **Profile Link:** ${user.link || `${siteUrl}/wp-admin/profile.php`}`;
|
|
301
308
|
|
|
302
309
|
return { content };
|
|
303
|
-
} catch (
|
|
304
|
-
throw new Error(`Failed to get current user: ${getErrorMessage(
|
|
310
|
+
} catch (_error) {
|
|
311
|
+
throw new Error(`Failed to get current user: ${getErrorMessage(_error)}`);
|
|
305
312
|
}
|
|
306
313
|
}
|
|
307
314
|
|
|
@@ -310,8 +317,8 @@ export class UserTools {
|
|
|
310
317
|
try {
|
|
311
318
|
const user = await client.createUser(createParams);
|
|
312
319
|
return `✅ User "${user.name}" created successfully with ID: ${user.id}.`;
|
|
313
|
-
} catch (
|
|
314
|
-
throw new Error(`Failed to create user: ${getErrorMessage(
|
|
320
|
+
} catch (_error) {
|
|
321
|
+
throw new Error(`Failed to create user: ${getErrorMessage(_error)}`);
|
|
315
322
|
}
|
|
316
323
|
}
|
|
317
324
|
|
|
@@ -320,8 +327,8 @@ export class UserTools {
|
|
|
320
327
|
try {
|
|
321
328
|
const user = await client.updateUser(updateParams);
|
|
322
329
|
return `✅ User ${user.id} updated successfully.`;
|
|
323
|
-
} catch (
|
|
324
|
-
throw new Error(`Failed to update user: ${getErrorMessage(
|
|
330
|
+
} catch (_error) {
|
|
331
|
+
throw new Error(`Failed to update user: ${getErrorMessage(_error)}`);
|
|
325
332
|
}
|
|
326
333
|
}
|
|
327
334
|
|
|
@@ -334,8 +341,8 @@ export class UserTools {
|
|
|
334
341
|
content += ` Their content has been reassigned to user ID ${reassign}.`;
|
|
335
342
|
}
|
|
336
343
|
return content;
|
|
337
|
-
} catch (
|
|
338
|
-
throw new Error(`Failed to delete user: ${getErrorMessage(
|
|
344
|
+
} catch (_error) {
|
|
345
|
+
throw new Error(`Failed to delete user: ${getErrorMessage(_error)}`);
|
|
339
346
|
}
|
|
340
347
|
}
|
|
341
348
|
}
|
package/src/types/client.ts
CHANGED
|
@@ -58,8 +58,10 @@ export interface AppPasswordCredentials {
|
|
|
58
58
|
}
|
|
59
59
|
|
|
60
60
|
export interface JwtCredentials {
|
|
61
|
-
|
|
62
|
-
|
|
61
|
+
username: string;
|
|
62
|
+
password: string;
|
|
63
|
+
jwtToken?: string;
|
|
64
|
+
jwtSecret?: string;
|
|
63
65
|
}
|
|
64
66
|
|
|
65
67
|
export interface BasicCredentials {
|
|
@@ -76,11 +78,10 @@ export type AuthCredentials = AppPasswordCredentials | JwtCredentials | BasicCre
|
|
|
76
78
|
|
|
77
79
|
// Authentication status interface
|
|
78
80
|
export interface AuthStatus {
|
|
79
|
-
method: AuthMethod;
|
|
80
|
-
username?: string | undefined;
|
|
81
81
|
isAuthenticated: boolean;
|
|
82
|
-
|
|
83
|
-
|
|
82
|
+
method: AuthMethod;
|
|
83
|
+
lastAuthAttempt?: Date | null;
|
|
84
|
+
tokenExpiry?: Date | null;
|
|
84
85
|
}
|
|
85
86
|
|
|
86
87
|
// Client Configuration
|
|
@@ -134,6 +135,7 @@ export interface ClientStats {
|
|
|
134
135
|
lastRequestTime?: number;
|
|
135
136
|
rateLimitHits: number;
|
|
136
137
|
authFailures: number;
|
|
138
|
+
errors: number;
|
|
137
139
|
}
|
|
138
140
|
|
|
139
141
|
// WordPress API Client Interface
|