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
package/dist/tools/site.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { getErrorMessage } from
|
|
1
|
+
import { getErrorMessage } from "../utils/error.js";
|
|
2
2
|
/**
|
|
3
3
|
* Provides tools for managing general site settings and operations on a WordPress site.
|
|
4
4
|
* This class encapsulates tool definitions and their corresponding handlers.
|
|
@@ -11,103 +11,103 @@ export class SiteTools {
|
|
|
11
11
|
getTools() {
|
|
12
12
|
return [
|
|
13
13
|
{
|
|
14
|
-
name:
|
|
15
|
-
description:
|
|
14
|
+
name: "wp_get_site_settings",
|
|
15
|
+
description: "Retrieves the general settings for a WordPress site.",
|
|
16
16
|
parameters: [],
|
|
17
|
-
handler: this.handleGetSiteSettings.bind(this)
|
|
17
|
+
handler: this.handleGetSiteSettings.bind(this),
|
|
18
18
|
},
|
|
19
19
|
{
|
|
20
|
-
name:
|
|
21
|
-
description:
|
|
20
|
+
name: "wp_update_site_settings",
|
|
21
|
+
description: "Updates one or more general settings for a WordPress site.",
|
|
22
22
|
parameters: [
|
|
23
23
|
{
|
|
24
|
-
name:
|
|
25
|
-
type:
|
|
26
|
-
description:
|
|
24
|
+
name: "title",
|
|
25
|
+
type: "string",
|
|
26
|
+
description: "The title of the site.",
|
|
27
27
|
},
|
|
28
28
|
{
|
|
29
|
-
name:
|
|
30
|
-
type:
|
|
31
|
-
description:
|
|
29
|
+
name: "description",
|
|
30
|
+
type: "string",
|
|
31
|
+
description: "The tagline or description of the site.",
|
|
32
32
|
},
|
|
33
33
|
{
|
|
34
|
-
name:
|
|
35
|
-
type:
|
|
36
|
-
description:
|
|
37
|
-
}
|
|
34
|
+
name: "timezone",
|
|
35
|
+
type: "string",
|
|
36
|
+
description: "A city in the same timezone, e.g., 'America/New_York'.",
|
|
37
|
+
},
|
|
38
38
|
],
|
|
39
|
-
handler: this.handleUpdateSiteSettings.bind(this)
|
|
39
|
+
handler: this.handleUpdateSiteSettings.bind(this),
|
|
40
40
|
},
|
|
41
41
|
{
|
|
42
|
-
name:
|
|
43
|
-
description:
|
|
42
|
+
name: "wp_search_site",
|
|
43
|
+
description: "Performs a site-wide search for content.",
|
|
44
44
|
parameters: [
|
|
45
45
|
{
|
|
46
|
-
name:
|
|
47
|
-
type:
|
|
46
|
+
name: "term",
|
|
47
|
+
type: "string",
|
|
48
48
|
required: true,
|
|
49
|
-
description:
|
|
49
|
+
description: "The search term to look for.",
|
|
50
50
|
},
|
|
51
51
|
{
|
|
52
|
-
name:
|
|
53
|
-
type:
|
|
54
|
-
description:
|
|
55
|
-
enum: [
|
|
56
|
-
}
|
|
52
|
+
name: "type",
|
|
53
|
+
type: "string",
|
|
54
|
+
description: "The type of content to search.",
|
|
55
|
+
enum: ["posts", "pages", "media"],
|
|
56
|
+
},
|
|
57
57
|
],
|
|
58
|
-
handler: this.handleSearchSite.bind(this)
|
|
58
|
+
handler: this.handleSearchSite.bind(this),
|
|
59
59
|
},
|
|
60
60
|
{
|
|
61
|
-
name:
|
|
62
|
-
description:
|
|
61
|
+
name: "wp_get_application_passwords",
|
|
62
|
+
description: "Lists application passwords for a specific user.",
|
|
63
63
|
parameters: [
|
|
64
64
|
{
|
|
65
|
-
name:
|
|
66
|
-
type:
|
|
65
|
+
name: "user_id",
|
|
66
|
+
type: "number",
|
|
67
67
|
required: true,
|
|
68
|
-
description:
|
|
69
|
-
}
|
|
68
|
+
description: "The ID of the user to get application passwords for.",
|
|
69
|
+
},
|
|
70
70
|
],
|
|
71
|
-
handler: this.handleGetApplicationPasswords.bind(this)
|
|
71
|
+
handler: this.handleGetApplicationPasswords.bind(this),
|
|
72
72
|
},
|
|
73
73
|
{
|
|
74
|
-
name:
|
|
75
|
-
description:
|
|
74
|
+
name: "wp_create_application_password",
|
|
75
|
+
description: "Creates a new application password for a user.",
|
|
76
76
|
parameters: [
|
|
77
77
|
{
|
|
78
|
-
name:
|
|
79
|
-
type:
|
|
78
|
+
name: "user_id",
|
|
79
|
+
type: "number",
|
|
80
80
|
required: true,
|
|
81
|
-
description:
|
|
81
|
+
description: "The ID of the user to create the password for.",
|
|
82
82
|
},
|
|
83
83
|
{
|
|
84
|
-
name:
|
|
85
|
-
type:
|
|
84
|
+
name: "app_name",
|
|
85
|
+
type: "string",
|
|
86
86
|
required: true,
|
|
87
|
-
description:
|
|
88
|
-
}
|
|
87
|
+
description: "The name of the application this password is for.",
|
|
88
|
+
},
|
|
89
89
|
],
|
|
90
|
-
handler: this.handleCreateApplicationPassword.bind(this)
|
|
90
|
+
handler: this.handleCreateApplicationPassword.bind(this),
|
|
91
91
|
},
|
|
92
92
|
{
|
|
93
|
-
name:
|
|
94
|
-
description:
|
|
93
|
+
name: "wp_delete_application_password",
|
|
94
|
+
description: "Revokes an existing application password.",
|
|
95
95
|
parameters: [
|
|
96
96
|
{
|
|
97
|
-
name:
|
|
98
|
-
type:
|
|
97
|
+
name: "user_id",
|
|
98
|
+
type: "number",
|
|
99
99
|
required: true,
|
|
100
|
-
description:
|
|
100
|
+
description: "The ID of the user who owns the password.",
|
|
101
101
|
},
|
|
102
102
|
{
|
|
103
|
-
name:
|
|
104
|
-
type:
|
|
103
|
+
name: "uuid",
|
|
104
|
+
type: "string",
|
|
105
105
|
required: true,
|
|
106
|
-
description:
|
|
107
|
-
}
|
|
106
|
+
description: "The UUID of the application password to revoke.",
|
|
107
|
+
},
|
|
108
108
|
],
|
|
109
|
-
handler: this.handleDeleteApplicationPassword.bind(this)
|
|
110
|
-
}
|
|
109
|
+
handler: this.handleDeleteApplicationPassword.bind(this),
|
|
110
|
+
},
|
|
111
111
|
];
|
|
112
112
|
}
|
|
113
113
|
async handleGetSiteSettings(client, params) {
|
|
@@ -142,7 +142,7 @@ export class SiteTools {
|
|
|
142
142
|
const content = `Found ${results.length} results for "${params.term}":\n\n` +
|
|
143
143
|
results
|
|
144
144
|
.map((r) => `- [${r.type}] **${r.title}**\n Link: ${r.url}`)
|
|
145
|
-
.join(
|
|
145
|
+
.join("\n");
|
|
146
146
|
return content;
|
|
147
147
|
}
|
|
148
148
|
catch (error) {
|
|
@@ -158,7 +158,7 @@ export class SiteTools {
|
|
|
158
158
|
const content = `Found ${passwords.length} application passwords for user ID ${params.user_id}:\n\n` +
|
|
159
159
|
passwords
|
|
160
160
|
.map((p) => `- **${p.name}** (UUID: ${p.uuid})\n Created: ${new Date(p.created).toLocaleDateString()}`)
|
|
161
|
-
.join(
|
|
161
|
+
.join("\n");
|
|
162
162
|
return content;
|
|
163
163
|
}
|
|
164
164
|
catch (error) {
|
|
@@ -168,10 +168,10 @@ export class SiteTools {
|
|
|
168
168
|
async handleCreateApplicationPassword(client, params) {
|
|
169
169
|
try {
|
|
170
170
|
const result = await client.createApplicationPassword(params.user_id, params.app_name);
|
|
171
|
-
const content =
|
|
171
|
+
const content = "✅ **Application password created successfully!**\n\n" +
|
|
172
172
|
`**Name:** ${result.name}\n` +
|
|
173
173
|
`**Password:** \`${result.password}\`\n\n` +
|
|
174
|
-
|
|
174
|
+
"**IMPORTANT:** This password is shown only once. Please save it securely.";
|
|
175
175
|
return content;
|
|
176
176
|
}
|
|
177
177
|
catch (error) {
|
package/dist/tools/site.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"site.js","sourceRoot":"","sources":["../../src/tools/site.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"site.js","sourceRoot":"","sources":["../../src/tools/site.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { WordPressClient } from
|
|
2
|
-
import { CreateCategoryRequest, CreateTagRequest, UpdateCategoryRequest, UpdateTagRequest } from
|
|
1
|
+
import { WordPressClient } from "../client/api.js";
|
|
2
|
+
import { CreateCategoryRequest, CreateTagRequest, UpdateCategoryRequest, UpdateTagRequest } from "../types/wordpress.js";
|
|
3
3
|
/**
|
|
4
4
|
* Provides tools for managing taxonomies (categories and tags) on a WordPress site.
|
|
5
5
|
* This class encapsulates tool definitions and their corresponding handlers.
|
package/dist/tools/taxonomies.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { getErrorMessage } from
|
|
1
|
+
import { getErrorMessage } from "../utils/error.js";
|
|
2
2
|
/**
|
|
3
3
|
* Provides tools for managing taxonomies (categories and tags) on a WordPress site.
|
|
4
4
|
* This class encapsulates tool definitions and their corresponding handlers.
|
|
@@ -12,166 +12,166 @@ export class TaxonomyTools {
|
|
|
12
12
|
return [
|
|
13
13
|
// Categories
|
|
14
14
|
{
|
|
15
|
-
name:
|
|
16
|
-
description:
|
|
15
|
+
name: "wp_list_categories",
|
|
16
|
+
description: "Lists categories from a WordPress site.",
|
|
17
17
|
parameters: [
|
|
18
18
|
{
|
|
19
|
-
name:
|
|
20
|
-
type:
|
|
21
|
-
description:
|
|
19
|
+
name: "search",
|
|
20
|
+
type: "string",
|
|
21
|
+
description: "Limit results to those matching a search term.",
|
|
22
22
|
},
|
|
23
23
|
{
|
|
24
|
-
name:
|
|
25
|
-
type:
|
|
26
|
-
description:
|
|
27
|
-
}
|
|
24
|
+
name: "hide_empty",
|
|
25
|
+
type: "boolean",
|
|
26
|
+
description: "Whether to hide categories with no posts.",
|
|
27
|
+
},
|
|
28
28
|
],
|
|
29
|
-
handler: this.handleListCategories.bind(this)
|
|
29
|
+
handler: this.handleListCategories.bind(this),
|
|
30
30
|
},
|
|
31
31
|
{
|
|
32
|
-
name:
|
|
33
|
-
description:
|
|
32
|
+
name: "wp_get_category",
|
|
33
|
+
description: "Retrieves a single category by its ID.",
|
|
34
34
|
parameters: [
|
|
35
35
|
{
|
|
36
|
-
name:
|
|
37
|
-
type:
|
|
36
|
+
name: "id",
|
|
37
|
+
type: "number",
|
|
38
38
|
required: true,
|
|
39
|
-
description:
|
|
40
|
-
}
|
|
39
|
+
description: "The unique identifier for the category.",
|
|
40
|
+
},
|
|
41
41
|
],
|
|
42
|
-
handler: this.handleGetCategory.bind(this)
|
|
42
|
+
handler: this.handleGetCategory.bind(this),
|
|
43
43
|
},
|
|
44
44
|
{
|
|
45
|
-
name:
|
|
46
|
-
description:
|
|
45
|
+
name: "wp_create_category",
|
|
46
|
+
description: "Creates a new category.",
|
|
47
47
|
parameters: [
|
|
48
48
|
{
|
|
49
|
-
name:
|
|
50
|
-
type:
|
|
49
|
+
name: "name",
|
|
50
|
+
type: "string",
|
|
51
51
|
required: true,
|
|
52
|
-
description:
|
|
52
|
+
description: "The name of the category.",
|
|
53
53
|
},
|
|
54
54
|
{
|
|
55
|
-
name:
|
|
56
|
-
type:
|
|
57
|
-
description:
|
|
58
|
-
}
|
|
55
|
+
name: "description",
|
|
56
|
+
type: "string",
|
|
57
|
+
description: "The description for the category.",
|
|
58
|
+
},
|
|
59
59
|
],
|
|
60
|
-
handler: this.handleCreateCategory.bind(this)
|
|
60
|
+
handler: this.handleCreateCategory.bind(this),
|
|
61
61
|
},
|
|
62
62
|
{
|
|
63
|
-
name:
|
|
64
|
-
description:
|
|
63
|
+
name: "wp_update_category",
|
|
64
|
+
description: "Updates an existing category.",
|
|
65
65
|
parameters: [
|
|
66
66
|
{
|
|
67
|
-
name:
|
|
68
|
-
type:
|
|
67
|
+
name: "id",
|
|
68
|
+
type: "number",
|
|
69
69
|
required: true,
|
|
70
|
-
description:
|
|
70
|
+
description: "The ID of the category to update.",
|
|
71
71
|
},
|
|
72
72
|
{
|
|
73
|
-
name:
|
|
74
|
-
type:
|
|
75
|
-
description:
|
|
76
|
-
}
|
|
73
|
+
name: "name",
|
|
74
|
+
type: "string",
|
|
75
|
+
description: "The new name for the category.",
|
|
76
|
+
},
|
|
77
77
|
],
|
|
78
|
-
handler: this.handleUpdateCategory.bind(this)
|
|
78
|
+
handler: this.handleUpdateCategory.bind(this),
|
|
79
79
|
},
|
|
80
80
|
{
|
|
81
|
-
name:
|
|
82
|
-
description:
|
|
81
|
+
name: "wp_delete_category",
|
|
82
|
+
description: "Deletes a category.",
|
|
83
83
|
parameters: [
|
|
84
84
|
{
|
|
85
|
-
name:
|
|
86
|
-
type:
|
|
85
|
+
name: "id",
|
|
86
|
+
type: "number",
|
|
87
87
|
required: true,
|
|
88
|
-
description:
|
|
89
|
-
}
|
|
88
|
+
description: "The ID of the category to delete.",
|
|
89
|
+
},
|
|
90
90
|
],
|
|
91
|
-
handler: this.handleDeleteCategory.bind(this)
|
|
91
|
+
handler: this.handleDeleteCategory.bind(this),
|
|
92
92
|
},
|
|
93
93
|
// Tags
|
|
94
94
|
{
|
|
95
|
-
name:
|
|
96
|
-
description:
|
|
95
|
+
name: "wp_list_tags",
|
|
96
|
+
description: "Lists tags from a WordPress site.",
|
|
97
97
|
parameters: [
|
|
98
98
|
{
|
|
99
|
-
name:
|
|
100
|
-
type:
|
|
101
|
-
description:
|
|
102
|
-
}
|
|
99
|
+
name: "search",
|
|
100
|
+
type: "string",
|
|
101
|
+
description: "Limit results to those matching a search term.",
|
|
102
|
+
},
|
|
103
103
|
],
|
|
104
|
-
handler: this.handleListTags.bind(this)
|
|
104
|
+
handler: this.handleListTags.bind(this),
|
|
105
105
|
},
|
|
106
106
|
{
|
|
107
|
-
name:
|
|
108
|
-
description:
|
|
107
|
+
name: "wp_get_tag",
|
|
108
|
+
description: "Retrieves a single tag by its ID.",
|
|
109
109
|
parameters: [
|
|
110
110
|
{
|
|
111
|
-
name:
|
|
112
|
-
type:
|
|
111
|
+
name: "id",
|
|
112
|
+
type: "number",
|
|
113
113
|
required: true,
|
|
114
|
-
description:
|
|
115
|
-
}
|
|
114
|
+
description: "The unique identifier for the tag.",
|
|
115
|
+
},
|
|
116
116
|
],
|
|
117
|
-
handler: this.handleGetTag.bind(this)
|
|
117
|
+
handler: this.handleGetTag.bind(this),
|
|
118
118
|
},
|
|
119
119
|
{
|
|
120
|
-
name:
|
|
121
|
-
description:
|
|
120
|
+
name: "wp_create_tag",
|
|
121
|
+
description: "Creates a new tag.",
|
|
122
122
|
parameters: [
|
|
123
123
|
{
|
|
124
|
-
name:
|
|
125
|
-
type:
|
|
124
|
+
name: "name",
|
|
125
|
+
type: "string",
|
|
126
126
|
required: true,
|
|
127
|
-
description:
|
|
128
|
-
}
|
|
127
|
+
description: "The name of the tag.",
|
|
128
|
+
},
|
|
129
129
|
],
|
|
130
|
-
handler: this.handleCreateTag.bind(this)
|
|
130
|
+
handler: this.handleCreateTag.bind(this),
|
|
131
131
|
},
|
|
132
132
|
{
|
|
133
|
-
name:
|
|
134
|
-
description:
|
|
133
|
+
name: "wp_update_tag",
|
|
134
|
+
description: "Updates an existing tag.",
|
|
135
135
|
parameters: [
|
|
136
136
|
{
|
|
137
|
-
name:
|
|
138
|
-
type:
|
|
137
|
+
name: "id",
|
|
138
|
+
type: "number",
|
|
139
139
|
required: true,
|
|
140
|
-
description:
|
|
140
|
+
description: "The ID of the tag to update.",
|
|
141
141
|
},
|
|
142
142
|
{
|
|
143
|
-
name:
|
|
144
|
-
type:
|
|
145
|
-
description:
|
|
146
|
-
}
|
|
143
|
+
name: "name",
|
|
144
|
+
type: "string",
|
|
145
|
+
description: "The new name for the tag.",
|
|
146
|
+
},
|
|
147
147
|
],
|
|
148
|
-
handler: this.handleUpdateTag.bind(this)
|
|
148
|
+
handler: this.handleUpdateTag.bind(this),
|
|
149
149
|
},
|
|
150
150
|
{
|
|
151
|
-
name:
|
|
152
|
-
description:
|
|
151
|
+
name: "wp_delete_tag",
|
|
152
|
+
description: "Deletes a tag.",
|
|
153
153
|
parameters: [
|
|
154
154
|
{
|
|
155
|
-
name:
|
|
156
|
-
type:
|
|
155
|
+
name: "id",
|
|
156
|
+
type: "number",
|
|
157
157
|
required: true,
|
|
158
|
-
description:
|
|
159
|
-
}
|
|
158
|
+
description: "The ID of the tag to delete.",
|
|
159
|
+
},
|
|
160
160
|
],
|
|
161
|
-
handler: this.handleDeleteTag.bind(this)
|
|
162
|
-
}
|
|
161
|
+
handler: this.handleDeleteTag.bind(this),
|
|
162
|
+
},
|
|
163
163
|
];
|
|
164
164
|
}
|
|
165
165
|
async handleListCategories(client, params) {
|
|
166
166
|
try {
|
|
167
167
|
const categories = await client.getCategories(params);
|
|
168
168
|
if (categories.length === 0) {
|
|
169
|
-
return
|
|
169
|
+
return "No categories found.";
|
|
170
170
|
}
|
|
171
171
|
const content = `Found ${categories.length} categories:\n\n` +
|
|
172
172
|
categories
|
|
173
173
|
.map((c) => `- ID ${c.id}: **${c.name}** (Posts: ${c.count})`)
|
|
174
|
-
.join(
|
|
174
|
+
.join("\n");
|
|
175
175
|
return content;
|
|
176
176
|
}
|
|
177
177
|
catch (error) {
|
|
@@ -184,7 +184,7 @@ export class TaxonomyTools {
|
|
|
184
184
|
const content = `**Category Details (ID: ${category.id})**\n\n` +
|
|
185
185
|
`- **Name:** ${category.name}\n` +
|
|
186
186
|
`- **Slug:** ${category.slug}\n` +
|
|
187
|
-
`- **Description:** ${category.description ||
|
|
187
|
+
`- **Description:** ${category.description || "None"}\n` +
|
|
188
188
|
`- **Post Count:** ${category.count}`;
|
|
189
189
|
return content;
|
|
190
190
|
}
|
|
@@ -223,12 +223,12 @@ export class TaxonomyTools {
|
|
|
223
223
|
try {
|
|
224
224
|
const tags = await client.getTags(params);
|
|
225
225
|
if (tags.length === 0) {
|
|
226
|
-
return
|
|
226
|
+
return "No tags found.";
|
|
227
227
|
}
|
|
228
228
|
const content = `Found ${tags.length} tags:\n\n` +
|
|
229
229
|
tags
|
|
230
230
|
.map((t) => `- ID ${t.id}: **${t.name}** (Posts: ${t.count})`)
|
|
231
|
-
.join(
|
|
231
|
+
.join("\n");
|
|
232
232
|
return content;
|
|
233
233
|
}
|
|
234
234
|
catch (error) {
|
package/dist/tools/users.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { WordPressClient } from
|
|
2
|
-
import { CreateUserRequest, UpdateUserRequest, UserQueryParams } from
|
|
1
|
+
import { WordPressClient } from "../client/api.js";
|
|
2
|
+
import { CreateUserRequest, UpdateUserRequest, UserQueryParams } from "../types/wordpress.js";
|
|
3
3
|
/**
|
|
4
4
|
* Provides tools for managing users on a WordPress site.
|
|
5
5
|
* This class encapsulates tool definitions and their corresponding handlers.
|