mcp-wordpress 2.5.1 → 2.5.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (289) hide show
  1. package/package.json +1 -1
  2. package/dist/src/cache/CacheInvalidation.d.ts +0 -120
  3. package/dist/src/cache/CacheInvalidation.d.ts.map +0 -1
  4. package/dist/src/cache/CacheInvalidation.js +0 -355
  5. package/dist/src/cache/CacheInvalidation.js.map +0 -1
  6. package/dist/src/cache/CacheManager.d.ts +0 -149
  7. package/dist/src/cache/CacheManager.d.ts.map +0 -1
  8. package/dist/src/cache/CacheManager.js +0 -326
  9. package/dist/src/cache/CacheManager.js.map +0 -1
  10. package/dist/src/cache/HttpCacheWrapper.d.ts +0 -122
  11. package/dist/src/cache/HttpCacheWrapper.d.ts.map +0 -1
  12. package/dist/src/cache/HttpCacheWrapper.js +0 -283
  13. package/dist/src/cache/HttpCacheWrapper.js.map +0 -1
  14. package/dist/src/cache/index.d.ts +0 -12
  15. package/dist/src/cache/index.d.ts.map +0 -1
  16. package/dist/src/cache/index.js +0 -9
  17. package/dist/src/cache/index.js.map +0 -1
  18. package/dist/src/client/CachedWordPressClient.d.ts +0 -174
  19. package/dist/src/client/CachedWordPressClient.d.ts.map +0 -1
  20. package/dist/src/client/CachedWordPressClient.js +0 -345
  21. package/dist/src/client/CachedWordPressClient.js.map +0 -1
  22. package/dist/src/client/MockWordPressClient.d.ts +0 -56
  23. package/dist/src/client/MockWordPressClient.d.ts.map +0 -1
  24. package/dist/src/client/MockWordPressClient.js +0 -371
  25. package/dist/src/client/MockWordPressClient.js.map +0 -1
  26. package/dist/src/client/api.d.ts +0 -235
  27. package/dist/src/client/api.d.ts.map +0 -1
  28. package/dist/src/client/api.js +0 -896
  29. package/dist/src/client/api.js.map +0 -1
  30. package/dist/src/client/auth.d.ts +0 -121
  31. package/dist/src/client/auth.d.ts.map +0 -1
  32. package/dist/src/client/auth.js +0 -429
  33. package/dist/src/client/auth.js.map +0 -1
  34. package/dist/src/client/managers/AuthenticationManager.d.ts +0 -92
  35. package/dist/src/client/managers/AuthenticationManager.d.ts.map +0 -1
  36. package/dist/src/client/managers/AuthenticationManager.js +0 -369
  37. package/dist/src/client/managers/AuthenticationManager.js.map +0 -1
  38. package/dist/src/client/managers/BaseManager.d.ts +0 -22
  39. package/dist/src/client/managers/BaseManager.d.ts.map +0 -1
  40. package/dist/src/client/managers/BaseManager.js +0 -53
  41. package/dist/src/client/managers/BaseManager.js.map +0 -1
  42. package/dist/src/client/managers/RequestManager.d.ts +0 -47
  43. package/dist/src/client/managers/RequestManager.d.ts.map +0 -1
  44. package/dist/src/client/managers/RequestManager.js +0 -193
  45. package/dist/src/client/managers/RequestManager.js.map +0 -1
  46. package/dist/src/client/managers/index.d.ts +0 -8
  47. package/dist/src/client/managers/index.d.ts.map +0 -1
  48. package/dist/src/client/managers/index.js +0 -8
  49. package/dist/src/client/managers/index.js.map +0 -1
  50. package/dist/src/config/Config.d.ts +0 -155
  51. package/dist/src/config/Config.d.ts.map +0 -1
  52. package/dist/src/config/Config.js +0 -215
  53. package/dist/src/config/Config.js.map +0 -1
  54. package/dist/src/config/ConfigurationSchema.d.ts +0 -281
  55. package/dist/src/config/ConfigurationSchema.d.ts.map +0 -1
  56. package/dist/src/config/ConfigurationSchema.js +0 -205
  57. package/dist/src/config/ConfigurationSchema.js.map +0 -1
  58. package/dist/src/config/ServerConfiguration.d.ts +0 -47
  59. package/dist/src/config/ServerConfiguration.d.ts.map +0 -1
  60. package/dist/src/config/ServerConfiguration.js +0 -255
  61. package/dist/src/config/ServerConfiguration.js.map +0 -1
  62. package/dist/src/docs/DocumentationGenerator.d.ts +0 -185
  63. package/dist/src/docs/DocumentationGenerator.d.ts.map +0 -1
  64. package/dist/src/docs/DocumentationGenerator.js +0 -777
  65. package/dist/src/docs/DocumentationGenerator.js.map +0 -1
  66. package/dist/src/docs/MarkdownFormatter.d.ts +0 -84
  67. package/dist/src/docs/MarkdownFormatter.d.ts.map +0 -1
  68. package/dist/src/docs/MarkdownFormatter.js +0 -458
  69. package/dist/src/docs/MarkdownFormatter.js.map +0 -1
  70. package/dist/src/docs/index.d.ts +0 -8
  71. package/dist/src/docs/index.d.ts.map +0 -1
  72. package/dist/src/docs/index.js +0 -7
  73. package/dist/src/docs/index.js.map +0 -1
  74. package/dist/src/dxt-entry.d.ts +0 -6
  75. package/dist/src/dxt-entry.d.ts.map +0 -1
  76. package/dist/src/dxt-entry.js +0 -39
  77. package/dist/src/dxt-entry.js.map +0 -1
  78. package/dist/src/index.d.ts +0 -18
  79. package/dist/src/index.d.ts.map +0 -1
  80. package/dist/src/index.js +0 -143
  81. package/dist/src/index.js.map +0 -1
  82. package/dist/src/performance/MetricsCollector.d.ts +0 -145
  83. package/dist/src/performance/MetricsCollector.d.ts.map +0 -1
  84. package/dist/src/performance/MetricsCollector.js +0 -368
  85. package/dist/src/performance/MetricsCollector.js.map +0 -1
  86. package/dist/src/performance/PerformanceAnalytics.d.ts +0 -168
  87. package/dist/src/performance/PerformanceAnalytics.d.ts.map +0 -1
  88. package/dist/src/performance/PerformanceAnalytics.js +0 -570
  89. package/dist/src/performance/PerformanceAnalytics.js.map +0 -1
  90. package/dist/src/performance/PerformanceMonitor.d.ts +0 -203
  91. package/dist/src/performance/PerformanceMonitor.d.ts.map +0 -1
  92. package/dist/src/performance/PerformanceMonitor.js +0 -478
  93. package/dist/src/performance/PerformanceMonitor.js.map +0 -1
  94. package/dist/src/performance/index.d.ts +0 -11
  95. package/dist/src/performance/index.d.ts.map +0 -1
  96. package/dist/src/performance/index.js +0 -8
  97. package/dist/src/performance/index.js.map +0 -1
  98. package/dist/src/security/AISecurityScanner.d.ts +0 -176
  99. package/dist/src/security/AISecurityScanner.d.ts.map +0 -1
  100. package/dist/src/security/AISecurityScanner.js +0 -655
  101. package/dist/src/security/AISecurityScanner.js.map +0 -1
  102. package/dist/src/security/AutomatedRemediation.d.ts +0 -146
  103. package/dist/src/security/AutomatedRemediation.d.ts.map +0 -1
  104. package/dist/src/security/AutomatedRemediation.js +0 -566
  105. package/dist/src/security/AutomatedRemediation.js.map +0 -1
  106. package/dist/src/security/InputValidator.d.ts +0 -219
  107. package/dist/src/security/InputValidator.d.ts.map +0 -1
  108. package/dist/src/security/InputValidator.js +0 -295
  109. package/dist/src/security/InputValidator.js.map +0 -1
  110. package/dist/src/security/SecurityCIPipeline.d.ts +0 -213
  111. package/dist/src/security/SecurityCIPipeline.d.ts.map +0 -1
  112. package/dist/src/security/SecurityCIPipeline.js +0 -693
  113. package/dist/src/security/SecurityCIPipeline.js.map +0 -1
  114. package/dist/src/security/SecurityConfig.d.ts +0 -129
  115. package/dist/src/security/SecurityConfig.d.ts.map +0 -1
  116. package/dist/src/security/SecurityConfig.js +0 -266
  117. package/dist/src/security/SecurityConfig.js.map +0 -1
  118. package/dist/src/security/SecurityConfigManager.d.ts +0 -294
  119. package/dist/src/security/SecurityConfigManager.d.ts.map +0 -1
  120. package/dist/src/security/SecurityConfigManager.js +0 -558
  121. package/dist/src/security/SecurityConfigManager.js.map +0 -1
  122. package/dist/src/security/SecurityMonitoring.d.ts +0 -245
  123. package/dist/src/security/SecurityMonitoring.d.ts.map +0 -1
  124. package/dist/src/security/SecurityMonitoring.js +0 -598
  125. package/dist/src/security/SecurityMonitoring.js.map +0 -1
  126. package/dist/src/security/SecurityReviewer.d.ts +0 -168
  127. package/dist/src/security/SecurityReviewer.d.ts.map +0 -1
  128. package/dist/src/security/SecurityReviewer.js +0 -686
  129. package/dist/src/security/SecurityReviewer.js.map +0 -1
  130. package/dist/src/security/index.d.ts +0 -183
  131. package/dist/src/security/index.d.ts.map +0 -1
  132. package/dist/src/security/index.js +0 -218
  133. package/dist/src/security/index.js.map +0 -1
  134. package/dist/src/server/ConnectionTester.d.ts +0 -32
  135. package/dist/src/server/ConnectionTester.d.ts.map +0 -1
  136. package/dist/src/server/ConnectionTester.js +0 -135
  137. package/dist/src/server/ConnectionTester.js.map +0 -1
  138. package/dist/src/server/ToolRegistry.d.ts +0 -50
  139. package/dist/src/server/ToolRegistry.d.ts.map +0 -1
  140. package/dist/src/server/ToolRegistry.js +0 -219
  141. package/dist/src/server/ToolRegistry.js.map +0 -1
  142. package/dist/src/server.d.ts +0 -7
  143. package/dist/src/server.d.ts.map +0 -1
  144. package/dist/src/server.js +0 -7
  145. package/dist/src/server.js.map +0 -1
  146. package/dist/src/tools/BaseToolManager.d.ts +0 -62
  147. package/dist/src/tools/BaseToolManager.d.ts.map +0 -1
  148. package/dist/src/tools/BaseToolManager.js +0 -195
  149. package/dist/src/tools/BaseToolManager.js.map +0 -1
  150. package/dist/src/tools/auth.d.ts +0 -50
  151. package/dist/src/tools/auth.d.ts.map +0 -1
  152. package/dist/src/tools/auth.js +0 -133
  153. package/dist/src/tools/auth.js.map +0 -1
  154. package/dist/src/tools/cache.d.ts +0 -260
  155. package/dist/src/tools/cache.d.ts.map +0 -1
  156. package/dist/src/tools/cache.js +0 -232
  157. package/dist/src/tools/cache.js.map +0 -1
  158. package/dist/src/tools/comments.d.ts +0 -33
  159. package/dist/src/tools/comments.d.ts.map +0 -1
  160. package/dist/src/tools/comments.js +0 -235
  161. package/dist/src/tools/comments.js.map +0 -1
  162. package/dist/src/tools/index.d.ts +0 -11
  163. package/dist/src/tools/index.d.ts.map +0 -1
  164. package/dist/src/tools/index.js +0 -11
  165. package/dist/src/tools/index.js.map +0 -1
  166. package/dist/src/tools/media.d.ts +0 -70
  167. package/dist/src/tools/media.d.ts.map +0 -1
  168. package/dist/src/tools/media.js +0 -248
  169. package/dist/src/tools/media.js.map +0 -1
  170. package/dist/src/tools/pages.d.ts +0 -32
  171. package/dist/src/tools/pages.d.ts.map +0 -1
  172. package/dist/src/tools/pages.js +0 -215
  173. package/dist/src/tools/pages.js.map +0 -1
  174. package/dist/src/tools/performance.d.ts +0 -73
  175. package/dist/src/tools/performance.d.ts.map +0 -1
  176. package/dist/src/tools/performance.js +0 -922
  177. package/dist/src/tools/performance.js.map +0 -1
  178. package/dist/src/tools/posts/PostHandlers.d.ts +0 -46
  179. package/dist/src/tools/posts/PostHandlers.d.ts.map +0 -1
  180. package/dist/src/tools/posts/PostHandlers.js +0 -400
  181. package/dist/src/tools/posts/PostHandlers.js.map +0 -1
  182. package/dist/src/tools/posts/PostToolDefinitions.d.ts +0 -37
  183. package/dist/src/tools/posts/PostToolDefinitions.d.ts.map +0 -1
  184. package/dist/src/tools/posts/PostToolDefinitions.js +0 -236
  185. package/dist/src/tools/posts/PostToolDefinitions.js.map +0 -1
  186. package/dist/src/tools/posts/index.d.ts +0 -138
  187. package/dist/src/tools/posts/index.d.ts.map +0 -1
  188. package/dist/src/tools/posts/index.js +0 -163
  189. package/dist/src/tools/posts/index.js.map +0 -1
  190. package/dist/src/tools/posts.d.ts +0 -15
  191. package/dist/src/tools/posts.d.ts.map +0 -1
  192. package/dist/src/tools/posts.js +0 -16
  193. package/dist/src/tools/posts.js.map +0 -1
  194. package/dist/src/tools/site.d.ts +0 -32
  195. package/dist/src/tools/site.d.ts.map +0 -1
  196. package/dist/src/tools/site.js +0 -234
  197. package/dist/src/tools/site.js.map +0 -1
  198. package/dist/src/tools/taxonomies.d.ts +0 -36
  199. package/dist/src/tools/taxonomies.d.ts.map +0 -1
  200. package/dist/src/tools/taxonomies.js +0 -286
  201. package/dist/src/tools/taxonomies.js.map +0 -1
  202. package/dist/src/tools/users.d.ts +0 -33
  203. package/dist/src/tools/users.d.ts.map +0 -1
  204. package/dist/src/tools/users.js +0 -308
  205. package/dist/src/tools/users.js.map +0 -1
  206. package/dist/src/types/client.d.ts +0 -223
  207. package/dist/src/types/client.d.ts.map +0 -1
  208. package/dist/src/types/client.js +0 -97
  209. package/dist/src/types/client.js.map +0 -1
  210. package/dist/src/types/enhanced.d.ts +0 -237
  211. package/dist/src/types/enhanced.d.ts.map +0 -1
  212. package/dist/src/types/enhanced.js +0 -49
  213. package/dist/src/types/enhanced.js.map +0 -1
  214. package/dist/src/types/index.d.ts +0 -160
  215. package/dist/src/types/index.d.ts.map +0 -1
  216. package/dist/src/types/index.js +0 -14
  217. package/dist/src/types/index.js.map +0 -1
  218. package/dist/src/types/mcp.d.ts +0 -178
  219. package/dist/src/types/mcp.d.ts.map +0 -1
  220. package/dist/src/types/mcp.js +0 -7
  221. package/dist/src/types/mcp.js.map +0 -1
  222. package/dist/src/types/requests.d.ts +0 -322
  223. package/dist/src/types/requests.d.ts.map +0 -1
  224. package/dist/src/types/requests.js +0 -8
  225. package/dist/src/types/requests.js.map +0 -1
  226. package/dist/src/types/tools.d.ts +0 -506
  227. package/dist/src/types/tools.d.ts.map +0 -1
  228. package/dist/src/types/tools.js +0 -8
  229. package/dist/src/types/tools.js.map +0 -1
  230. package/dist/src/types/wordpress.d.ts +0 -471
  231. package/dist/src/types/wordpress.d.ts.map +0 -1
  232. package/dist/src/types/wordpress.js +0 -14
  233. package/dist/src/types/wordpress.js.map +0 -1
  234. package/dist/src/utils/debug.d.ts +0 -71
  235. package/dist/src/utils/debug.d.ts.map +0 -1
  236. package/dist/src/utils/debug.js +0 -235
  237. package/dist/src/utils/debug.js.map +0 -1
  238. package/dist/src/utils/enhancedError.d.ts +0 -61
  239. package/dist/src/utils/enhancedError.d.ts.map +0 -1
  240. package/dist/src/utils/enhancedError.js +0 -221
  241. package/dist/src/utils/enhancedError.js.map +0 -1
  242. package/dist/src/utils/error.d.ts +0 -17
  243. package/dist/src/utils/error.d.ts.map +0 -1
  244. package/dist/src/utils/error.js +0 -108
  245. package/dist/src/utils/error.js.map +0 -1
  246. package/dist/src/utils/logger.d.ts +0 -106
  247. package/dist/src/utils/logger.d.ts.map +0 -1
  248. package/dist/src/utils/logger.js +0 -280
  249. package/dist/src/utils/logger.js.map +0 -1
  250. package/dist/src/utils/streaming.d.ts +0 -104
  251. package/dist/src/utils/streaming.d.ts.map +0 -1
  252. package/dist/src/utils/streaming.js +0 -331
  253. package/dist/src/utils/streaming.js.map +0 -1
  254. package/dist/src/utils/toolWrapper.d.ts +0 -42
  255. package/dist/src/utils/toolWrapper.d.ts.map +0 -1
  256. package/dist/src/utils/toolWrapper.js +0 -101
  257. package/dist/src/utils/toolWrapper.js.map +0 -1
  258. package/dist/src/utils/validation/core.d.ts +0 -21
  259. package/dist/src/utils/validation/core.d.ts.map +0 -1
  260. package/dist/src/utils/validation/core.js +0 -71
  261. package/dist/src/utils/validation/core.js.map +0 -1
  262. package/dist/src/utils/validation/index.d.ts +0 -25
  263. package/dist/src/utils/validation/index.d.ts.map +0 -1
  264. package/dist/src/utils/validation/index.js +0 -29
  265. package/dist/src/utils/validation/index.js.map +0 -1
  266. package/dist/src/utils/validation/network.d.ts +0 -19
  267. package/dist/src/utils/validation/network.d.ts.map +0 -1
  268. package/dist/src/utils/validation/network.js +0 -93
  269. package/dist/src/utils/validation/network.js.map +0 -1
  270. package/dist/src/utils/validation/rateLimit.d.ts +0 -21
  271. package/dist/src/utils/validation/rateLimit.d.ts.map +0 -1
  272. package/dist/src/utils/validation/rateLimit.js +0 -43
  273. package/dist/src/utils/validation/rateLimit.js.map +0 -1
  274. package/dist/src/utils/validation/security.d.ts +0 -29
  275. package/dist/src/utils/validation/security.d.ts.map +0 -1
  276. package/dist/src/utils/validation/security.js +0 -327
  277. package/dist/src/utils/validation/security.js.map +0 -1
  278. package/dist/src/utils/validation/wordpress.d.ts +0 -31
  279. package/dist/src/utils/validation/wordpress.d.ts.map +0 -1
  280. package/dist/src/utils/validation/wordpress.js +0 -146
  281. package/dist/src/utils/validation/wordpress.js.map +0 -1
  282. package/dist/src/utils/validation.d.ts +0 -15
  283. package/dist/src/utils/validation.d.ts.map +0 -1
  284. package/dist/src/utils/validation.js +0 -27
  285. package/dist/src/utils/validation.js.map +0 -1
  286. package/dist/tests/vitest.setup.d.ts +0 -6
  287. package/dist/tests/vitest.setup.d.ts.map +0 -1
  288. package/dist/tests/vitest.setup.js +0 -39
  289. package/dist/tests/vitest.setup.js.map +0 -1
@@ -1,50 +0,0 @@
1
- import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
- import { WordPressClient } from "../client/api.js";
3
- /**
4
- * Interface for tool definition
5
- */
6
- export interface ToolDefinition {
7
- name: string;
8
- description?: string;
9
- parameters?: Array<{
10
- name: string;
11
- type?: string;
12
- description?: string;
13
- required?: boolean;
14
- }>;
15
- handler: (client: WordPressClient, args: Record<string, unknown>) => Promise<unknown>;
16
- }
17
- /**
18
- * Registry for managing MCP tools
19
- * Handles tool registration, parameter validation, and execution
20
- */
21
- export declare class ToolRegistry {
22
- private server;
23
- private wordpressClients;
24
- constructor(server: McpServer, wordpressClients: Map<string, WordPressClient>);
25
- /**
26
- * Register all available tools with the MCP server
27
- */
28
- registerAllTools(): void;
29
- /**
30
- * Register a single tool with parameter validation and execution handling
31
- */
32
- private registerTool;
33
- /**
34
- * Build Zod parameter schema from tool definition
35
- */
36
- private buildParameterSchema;
37
- /**
38
- * Get appropriate Zod type for parameter definition
39
- */
40
- private getZodTypeForParameter;
41
- /**
42
- * Intelligent site selection based on context
43
- */
44
- private selectBestSite;
45
- /**
46
- * Check if error is authentication-related
47
- */
48
- private isAuthenticationError;
49
- }
50
- //# sourceMappingURL=ToolRegistry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ToolRegistry.d.ts","sourceRoot":"","sources":["../../../src/server/ToolRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAOnD;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,KAAK,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB,CAAC,CAAC;IACH,OAAO,EAAE,CAAC,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CACvF;AAED;;;GAGG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,gBAAgB,CAA+B;gBAE3C,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC;IAK7E;;OAEG;IACI,gBAAgB,IAAI,IAAI;IAoB/B;;OAEG;IACH,OAAO,CAAC,YAAY;IAyHpB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAyB5B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAiB9B;;OAEG;IACH,OAAO,CAAC,cAAc;IA2CtB;;OAEG;IACH,OAAO,CAAC,qBAAqB;CAO9B"}
@@ -1,219 +0,0 @@
1
- import { getErrorMessage } from "../utils/error.js";
2
- import { EnhancedError, ErrorHandlers } from "../utils/enhancedError.js";
3
- import { config } from "../config/Config.js";
4
- import * as Tools from "../tools/index.js";
5
- import { z } from "zod";
6
- /**
7
- * Registry for managing MCP tools
8
- * Handles tool registration, parameter validation, and execution
9
- */
10
- export class ToolRegistry {
11
- server;
12
- wordpressClients;
13
- constructor(server, wordpressClients) {
14
- this.server = server;
15
- this.wordpressClients = wordpressClients;
16
- }
17
- /**
18
- * Register all available tools with the MCP server
19
- */
20
- registerAllTools() {
21
- // Register all tools from the tools directory
22
- Object.values(Tools).forEach((ToolClass) => {
23
- let toolInstance;
24
- // Cache and Performance tools need the clients map
25
- if (ToolClass.name === "CacheTools" || ToolClass.name === "PerformanceTools") {
26
- toolInstance = new ToolClass(this.wordpressClients);
27
- }
28
- else {
29
- toolInstance = new ToolClass();
30
- }
31
- const tools = toolInstance.getTools();
32
- tools.forEach((tool) => {
33
- this.registerTool(tool);
34
- });
35
- });
36
- }
37
- /**
38
- * Register a single tool with parameter validation and execution handling
39
- */
40
- registerTool(tool) {
41
- // Create base parameter schema with site parameter
42
- const baseSchema = {
43
- site: z
44
- .string()
45
- .optional()
46
- .describe("The ID of the WordPress site to target (from mcp-wordpress.config.json). Required if multiple sites are configured."),
47
- };
48
- // Merge with tool-specific parameters
49
- const parameterSchema = this.buildParameterSchema(tool, baseSchema);
50
- // Make site parameter required if multiple sites are configured
51
- if (this.wordpressClients.size > 1 &&
52
- parameterSchema.site &&
53
- typeof parameterSchema.site === "object" &&
54
- "describe" in parameterSchema.site) {
55
- parameterSchema.site = parameterSchema.site.describe("The ID of the WordPress site to target (from mcp-wordpress.config.json). Required when multiple sites are configured.");
56
- }
57
- this.server.tool(tool.name, tool.description || `WordPress tool: ${tool.name}`, parameterSchema, async (args) => {
58
- try {
59
- let siteId = args.site;
60
- // If no site specified and multiple sites configured, require site parameter
61
- if (!siteId && this.wordpressClients.size > 1) {
62
- const availableSites = Array.from(this.wordpressClients.keys());
63
- const error = ErrorHandlers.siteParameterMissing(availableSites);
64
- return {
65
- content: [
66
- {
67
- type: "text",
68
- text: error.toString(),
69
- },
70
- ],
71
- isError: true,
72
- };
73
- }
74
- // Intelligent site selection for single-site configurations
75
- if (!siteId) {
76
- siteId = this.selectBestSite(tool.name, args);
77
- }
78
- const client = this.wordpressClients.get(siteId);
79
- if (!client) {
80
- const availableSites = Array.from(this.wordpressClients.keys());
81
- const error = ErrorHandlers.siteNotFound(siteId, availableSites);
82
- return {
83
- content: [
84
- {
85
- type: "text",
86
- text: error.toString(),
87
- },
88
- ],
89
- isError: true,
90
- };
91
- }
92
- // Call the tool handler with the client and parameters
93
- const result = await tool.handler(client, args);
94
- return {
95
- content: [
96
- {
97
- type: "text",
98
- text: typeof result === "string" ? result : JSON.stringify(result, null, 2),
99
- },
100
- ],
101
- };
102
- }
103
- catch (error) {
104
- if (this.isAuthenticationError(error)) {
105
- return {
106
- content: [
107
- {
108
- type: "text",
109
- text: `Authentication failed for site '${args.site || "default"}'. Please check your credentials.`,
110
- },
111
- ],
112
- isError: true,
113
- };
114
- }
115
- // Handle enhanced errors with suggestions
116
- if (error instanceof EnhancedError) {
117
- return {
118
- content: [
119
- {
120
- type: "text",
121
- text: error.toString(),
122
- },
123
- ],
124
- isError: true,
125
- };
126
- }
127
- return {
128
- content: [
129
- {
130
- type: "text",
131
- text: `Error: ${getErrorMessage(error)}`,
132
- },
133
- ],
134
- isError: true,
135
- };
136
- }
137
- });
138
- }
139
- /**
140
- * Build Zod parameter schema from tool definition
141
- */
142
- buildParameterSchema(tool, baseSchema) {
143
- return (tool.parameters?.reduce((schema, param) => {
144
- let zodType = this.getZodTypeForParameter(param);
145
- if (param.description) {
146
- zodType = zodType.describe(param.description);
147
- }
148
- if (!param.required) {
149
- zodType = zodType.optional();
150
- }
151
- schema[param.name] = zodType;
152
- return schema;
153
- }, { ...baseSchema }) || baseSchema);
154
- }
155
- /**
156
- * Get appropriate Zod type for parameter definition
157
- */
158
- getZodTypeForParameter(param) {
159
- switch (param.type) {
160
- case "string":
161
- return z.string();
162
- case "number":
163
- return z.number();
164
- case "boolean":
165
- return z.boolean();
166
- case "array":
167
- return z.array(z.string());
168
- case "object":
169
- return z.record(z.unknown());
170
- default:
171
- return z.string();
172
- }
173
- }
174
- /**
175
- * Intelligent site selection based on context
176
- */
177
- selectBestSite(toolName, args) {
178
- const availableSites = Array.from(this.wordpressClients.keys());
179
- // Single site scenario - use it directly
180
- if (availableSites.length === 1) {
181
- return availableSites[0];
182
- }
183
- // Multiple sites scenario - intelligent selection
184
- if (availableSites.length > 1) {
185
- // Try to find a site based on context clues
186
- // 1. Check if there's a 'default' site
187
- if (availableSites.includes("default")) {
188
- return "default";
189
- }
190
- // 2. Check if there's a 'main' or 'primary' site
191
- const primarySites = availableSites.filter((site) => ["main", "primary", "prod", "production"].includes(site.toLowerCase()));
192
- if (primarySites.length > 0) {
193
- return primarySites[0];
194
- }
195
- // 3. For development/test operations, prefer dev sites
196
- if (toolName.includes("test") || config().app.isDevelopment) {
197
- const devSites = availableSites.filter((site) => ["dev", "test", "staging", "local"].includes(site.toLowerCase()));
198
- if (devSites.length > 0) {
199
- return devSites[0];
200
- }
201
- }
202
- // 4. Default to first available site
203
- return availableSites[0];
204
- }
205
- // Fallback to 'default' if no sites available
206
- return "default";
207
- }
208
- /**
209
- * Check if error is authentication-related
210
- */
211
- isAuthenticationError(error) {
212
- const errorObj = error;
213
- if (errorObj?.response?.status && [401, 403].includes(errorObj.response.status)) {
214
- return true;
215
- }
216
- return errorObj?.code === "WORDPRESS_AUTH_ERROR";
217
- }
218
- }
219
- //# sourceMappingURL=ToolRegistry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ToolRegistry.js","sourceRoot":"","sources":["../../../src/server/ToolRegistry.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- /**
2
- * Compatibility export for tests
3
- * Re-exports the main MCP server class for backward compatibility
4
- */
5
- export { default as MCPWordPressServer } from "./index.js";
6
- export { default } from "./index.js";
7
- //# sourceMappingURL=server.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC"}
@@ -1,7 +0,0 @@
1
- /**
2
- * Compatibility export for tests
3
- * Re-exports the main MCP server class for backward compatibility
4
- */
5
- export { default as MCPWordPressServer } from "./index.js";
6
- export { default } from "./index.js";
7
- //# sourceMappingURL=server.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC"}
@@ -1,62 +0,0 @@
1
- /**
2
- * Base utility class for tool managers with enhanced type safety
3
- */
4
- import { WordPressId, DeepReadonly, Result } from "../types/enhanced.js";
5
- export interface ParameterValidationRule<T = unknown> {
6
- readonly key: string;
7
- readonly required: boolean;
8
- readonly type?: string;
9
- readonly validator?: (value: unknown) => value is T;
10
- readonly transformer?: (value: unknown) => T;
11
- readonly errorMessage?: string;
12
- }
13
- export interface CacheKeyOptions {
14
- readonly namespace?: string;
15
- readonly includeTimestamp?: boolean;
16
- readonly customHasher?: (params: Record<string, unknown>) => string;
17
- }
18
- export declare class BaseToolUtils {
19
- /**
20
- * Validate required parameters with enhanced type safety
21
- */
22
- static validateParams<T extends Record<string, unknown>>(params: unknown, rules: readonly ParameterValidationRule[]): Result<T, Error>;
23
- /**
24
- * Validate ID parameter with WordPress ID branding
25
- */
26
- static validateId(id: unknown, name?: string): Result<WordPressId, Error>;
27
- /**
28
- * Validate multiple IDs at once
29
- */
30
- static validateIds(ids: unknown[], name?: string): Result<readonly WordPressId[], Error>;
31
- /**
32
- * Handle errors consistently with enhanced error context
33
- */
34
- static handleError(error: unknown, operation: string, context?: Record<string, unknown> | undefined): Error;
35
- /**
36
- * Generate cache keys with enhanced options
37
- */
38
- static generateCacheKey(operation: string, params: DeepReadonly<Record<string, unknown>>, options?: CacheKeyOptions): string;
39
- /**
40
- * Format consistent success response messages
41
- */
42
- static formatSuccessMessage(operation: string, details?: string, count?: number): string;
43
- /**
44
- * Validate string parameters with enhanced checks
45
- */
46
- static validateString(value: unknown, name: string, options?: {
47
- readonly required?: boolean;
48
- readonly minLength?: number;
49
- readonly maxLength?: number;
50
- readonly pattern?: RegExp;
51
- readonly allowEmpty?: boolean;
52
- }): Result<string, Error>;
53
- /**
54
- * Type-safe parameter extraction
55
- */
56
- static extractParam<T>(params: DeepReadonly<Record<string, unknown>>, key: string, defaultValue?: T): T | undefined;
57
- /**
58
- * Safe array extraction with type validation
59
- */
60
- static extractArray<T>(params: DeepReadonly<Record<string, unknown>>, key: string, itemValidator?: (item: unknown) => item is T): readonly T[];
61
- }
62
- //# sourceMappingURL=BaseToolManager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BaseToolManager.d.ts","sourceRoot":"","sources":["../../../src/tools/BaseToolManager.ts"],"names":[],"mappings":"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"}
@@ -1,195 +0,0 @@
1
- /**
2
- * Base utility class for tool managers with enhanced type safety
3
- */
4
- import { getErrorMessage } from "../utils/error.js";
5
- import { createWordPressId, createSuccess, createError } from "../types/enhanced.js";
6
- export class BaseToolUtils {
7
- /**
8
- * Validate required parameters with enhanced type safety
9
- */
10
- static validateParams(params, rules) {
11
- if (!params || typeof params !== 'object' || Array.isArray(params)) {
12
- return createError(new ValidationError('Parameters must be a non-null object', 'params', params));
13
- }
14
- const typedParams = params;
15
- const errors = [];
16
- for (const rule of rules) {
17
- const value = typedParams[rule.key];
18
- const exists = rule.key in typedParams;
19
- // Check required fields
20
- if (rule.required && (!exists || value === undefined || value === null)) {
21
- errors.push(new ValidationError(rule.errorMessage || `Missing required parameter: ${rule.key}`, rule.key, value));
22
- continue;
23
- }
24
- // Skip optional fields that don't exist
25
- if (!rule.required && !exists) {
26
- continue;
27
- }
28
- // Type validation
29
- if (rule.type && typeof value !== rule.type) {
30
- errors.push(new ValidationError(`Parameter ${rule.key} must be of type ${rule.type}, got ${typeof value}`, rule.key, value));
31
- continue;
32
- }
33
- // Custom validation
34
- if (rule.validator && !rule.validator(value)) {
35
- errors.push(new ValidationError(rule.errorMessage || `Parameter ${rule.key} failed validation`, rule.key, value));
36
- continue;
37
- }
38
- // Transform value if transformer provided
39
- if (rule.transformer) {
40
- try {
41
- typedParams[rule.key] = rule.transformer(value);
42
- }
43
- catch (error) {
44
- errors.push(new ValidationError(`Failed to transform parameter ${rule.key}: ${getErrorMessage(error)}`, rule.key, value));
45
- }
46
- }
47
- }
48
- if (errors.length > 0) {
49
- return createError(errors[0]); // Return first error for simplicity
50
- }
51
- return createSuccess(typedParams);
52
- }
53
- /**
54
- * Validate ID parameter with WordPress ID branding
55
- */
56
- static validateId(id, name = "id") {
57
- try {
58
- const numId = Number(id);
59
- if (!Number.isInteger(numId) || numId <= 0) {
60
- return createError(new ValidationError(`Invalid ${name}: must be a positive integer`, name, id));
61
- }
62
- return createSuccess(createWordPressId(numId));
63
- }
64
- catch (error) {
65
- return createError(new ValidationError(`Invalid ${name}: ${getErrorMessage(error)}`, name, id));
66
- }
67
- }
68
- /**
69
- * Validate multiple IDs at once
70
- */
71
- static validateIds(ids, name = "ids") {
72
- const validatedIds = [];
73
- for (let i = 0; i < ids.length; i++) {
74
- const result = this.validateId(ids[i], `${name}[${i}]`);
75
- if (!result.success) {
76
- return result;
77
- }
78
- validatedIds.push(result.data);
79
- }
80
- return createSuccess(validatedIds);
81
- }
82
- /**
83
- * Handle errors consistently with enhanced error context
84
- */
85
- static handleError(error, operation, context) {
86
- const errorMessage = getErrorMessage(error);
87
- const enhancedMessage = `Error in ${operation}: ${errorMessage}`;
88
- const enhancedError = new Error(enhancedMessage);
89
- enhancedError.originalError = error;
90
- enhancedError.operation = operation;
91
- enhancedError.context = context;
92
- enhancedError.timestamp = new Date();
93
- return enhancedError;
94
- }
95
- /**
96
- * Generate cache keys with enhanced options
97
- */
98
- static generateCacheKey(operation, params, options = {}) {
99
- const { namespace = 'wp', includeTimestamp = false, customHasher } = options;
100
- const site = params.site || "default";
101
- let paramStr;
102
- if (customHasher) {
103
- paramStr = customHasher(params);
104
- }
105
- else {
106
- paramStr = Object.entries(params)
107
- .filter(([key]) => key !== "site")
108
- .sort(([a], [b]) => a.localeCompare(b))
109
- .map(([key, value]) => `${key}:${JSON.stringify(value)}`)
110
- .join("|");
111
- }
112
- let cacheKey = `${namespace}:${site}:${operation}:${paramStr}`;
113
- if (includeTimestamp) {
114
- const timestamp = Math.floor(Date.now() / 1000);
115
- cacheKey += `:${timestamp}`;
116
- }
117
- return cacheKey;
118
- }
119
- /**
120
- * Format consistent success response messages
121
- */
122
- static formatSuccessMessage(operation, details, count) {
123
- let message = operation;
124
- if (count !== undefined) {
125
- message += ` (${count} ${count === 1 ? 'item' : 'items'})`;
126
- }
127
- if (details) {
128
- message += `: ${details}`;
129
- }
130
- else {
131
- message += " completed successfully";
132
- }
133
- return message;
134
- }
135
- /**
136
- * Validate string parameters with enhanced checks
137
- */
138
- static validateString(value, name, options = {}) {
139
- const { required = true, minLength, maxLength, pattern, allowEmpty = false } = options;
140
- if (value === undefined || value === null) {
141
- if (required) {
142
- return createError(new ValidationError(`${name} is required`, name, value));
143
- }
144
- return createSuccess('');
145
- }
146
- if (typeof value !== 'string') {
147
- return createError(new ValidationError(`${name} must be a string`, name, value));
148
- }
149
- if (!allowEmpty && value.trim().length === 0) {
150
- return createError(new ValidationError(`${name} cannot be empty`, name, value));
151
- }
152
- if (minLength !== undefined && value.length < minLength) {
153
- return createError(new ValidationError(`${name} must be at least ${minLength} characters long`, name, value));
154
- }
155
- if (maxLength !== undefined && value.length > maxLength) {
156
- return createError(new ValidationError(`${name} must be no more than ${maxLength} characters long`, name, value));
157
- }
158
- if (pattern && !pattern.test(value)) {
159
- return createError(new ValidationError(`${name} does not match required pattern`, name, value));
160
- }
161
- return createSuccess(value);
162
- }
163
- /**
164
- * Type-safe parameter extraction
165
- */
166
- static extractParam(params, key, defaultValue) {
167
- const value = params[key];
168
- return value !== undefined ? value : defaultValue;
169
- }
170
- /**
171
- * Safe array extraction with type validation
172
- */
173
- static extractArray(params, key, itemValidator) {
174
- const value = params[key];
175
- if (!Array.isArray(value)) {
176
- return [];
177
- }
178
- if (itemValidator) {
179
- return value.filter(itemValidator);
180
- }
181
- return value;
182
- }
183
- }
184
- // Custom ValidationError class for enhanced error handling
185
- class ValidationError extends Error {
186
- field;
187
- value;
188
- constructor(message, field, value) {
189
- super(message);
190
- this.field = field;
191
- this.value = value;
192
- this.name = 'ValidationError';
193
- }
194
- }
195
- //# sourceMappingURL=BaseToolManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BaseToolManager.js","sourceRoot":"","sources":["../../../src/tools/BaseToolManager.ts"],"names":[],"mappings":"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"}
@@ -1,50 +0,0 @@
1
- import { WordPressClient } from "../client/api.js";
2
- /**
3
- * Provides authentication-related tools for WordPress sites.
4
- * This class encapsulates tool definitions and their corresponding handlers.
5
- */
6
- export declare class AuthTools {
7
- /**
8
- * Retrieves the list of authentication tools.
9
- * @returns An array of MCPTool definitions.
10
- */
11
- getTools(): Array<{
12
- name: string;
13
- description: string;
14
- parameters?: Array<{
15
- name: string;
16
- type?: string;
17
- description?: string;
18
- required?: boolean;
19
- enum?: string[];
20
- items?: unknown;
21
- }>;
22
- handler: (client: WordPressClient, params: Record<string, unknown>) => Promise<unknown>;
23
- }>;
24
- /**
25
- * Handles the 'wp_test_auth' tool request.
26
- * It tests the connection and fetches user details upon success.
27
- * @param client - The WordPressClient instance for the target site.
28
- * @param params - The parameters for the tool request.
29
- * @returns A promise that resolves to an MCPToolResponse.
30
- */
31
- handleTestAuth(client: WordPressClient, params: Record<string, unknown>): Promise<Record<string, unknown>>;
32
- /**
33
- * Handles the 'wp_get_auth_status' tool request.
34
- * Reports whether the client is currently authenticated.
35
- * @param client - The WordPressClient instance for the target site.
36
- * @param params - The parameters for the tool request.
37
- * @returns A promise that resolves to an MCPToolResponse.
38
- */
39
- handleGetAuthStatus(client: WordPressClient, params: Record<string, unknown>): Promise<Record<string, unknown>>;
40
- /**
41
- * Handles the 'wp_switch_auth_method' tool request.
42
- * Updates the client's authentication configuration in memory for the session.
43
- * @param client - The WordPressClient instance for the target site.
44
- * @param params - The parameters for the tool request, including the new auth details.
45
- * @returns A promise that resolves to an MCPToolResponse.
46
- */
47
- handleSwitchAuthMethod(client: WordPressClient, params: Record<string, unknown>): Promise<unknown>;
48
- }
49
- export default AuthTools;
50
- //# sourceMappingURL=auth.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/tools/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAInD;;;GAGG;AACH,qBAAa,SAAS;IACpB;;;OAGG;IACI,QAAQ,IAAI,KAAK,CAAC;QACvB,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,CAAC,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,WAAW,CAAC,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;YAAC,KAAK,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC,CAAC;QAChI,OAAO,EAAE,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;KACzF,CAAC;IAqDF;;;;;;OAMG;IACU,cAAc,CACzB,MAAM,EAAE,eAAe,EACvB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAoBnC;;;;;;OAMG;IACU,mBAAmB,CAC9B,MAAM,EAAE,eAAe,EACvB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAsBnC;;;;;;OAMG;IACU,sBAAsB,CACjC,MAAM,EAAE,eAAe,EACvB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC,OAAO,CAAC;CAiBpB;AAED,eAAe,SAAS,CAAC"}