@respira/wordpress-mcp-server 8.3.4 → 8.3.6
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/CHANGELOG.md +20 -0
- package/README.md +6 -5
- package/TOOL_CATALOG.md +2 -1
- package/dist/__tests__/e2d884cb-put-dropped-post-fallback.test.d.ts +35 -0
- package/dist/__tests__/e2d884cb-put-dropped-post-fallback.test.d.ts.map +1 -0
- package/dist/__tests__/e2d884cb-put-dropped-post-fallback.test.js +362 -0
- package/dist/__tests__/e2d884cb-put-dropped-post-fallback.test.js.map +1 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +42 -4
- package/dist/server.js.map +1 -1
- package/dist/types/index.d.ts +19 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/wordpress-client.d.ts +78 -9
- package/dist/wordpress-client.d.ts.map +1 -1
- package/dist/wordpress-client.js +247 -108
- package/dist/wordpress-client.js.map +1 -1
- package/package.json +2 -2
- package/skills/html-to-breakdance/README.md +66 -0
- package/skills/html-to-breakdance/SKILL.md +268 -0
- package/skills/html-to-breakdance/metadata.json +51 -0
- package/tool-capabilities.json +16 -4
package/dist/server.js
CHANGED
|
@@ -3217,7 +3217,15 @@ Allowlist: css, scss, less, json. PHP / JS theme writes are intentionally out of
|
|
|
3217
3217
|
type: { type: 'string', enum: ['color', 'typography', 'spacing', 'breakpoints'] },
|
|
3218
3218
|
id: { type: 'string' },
|
|
3219
3219
|
name: { type: 'string' },
|
|
3220
|
-
value: {
|
|
3220
|
+
value: {
|
|
3221
|
+
// Typed on purpose. An empty schema is valid JSON Schema and a
|
|
3222
|
+
// strict MCP validator rejects it: ChatGPT refused the whole
|
|
3223
|
+
// catalogue over this, so one untyped property took every tool
|
|
3224
|
+
// down. The plugin's own ability schema was fixed in 8.6.6; this
|
|
3225
|
+
// is the same fix in the npm lane, which still shipped it.
|
|
3226
|
+
type: ['string', 'number', 'object'],
|
|
3227
|
+
description: 'Token value: a CSS string for color and spacing ("#0f7b5f", "1.5rem"), a number, or an object for typography (fontFamily, fontSize, fontWeight, lineHeight).',
|
|
3228
|
+
},
|
|
3221
3229
|
expected_fingerprint: { type: 'string', description: 'Optional document revision returned by wordpress_list_design_tokens.' },
|
|
3222
3230
|
approval_token: { type: 'string' },
|
|
3223
3231
|
dry_run: { type: 'boolean' },
|
|
@@ -3235,7 +3243,15 @@ Allowlist: css, scss, less, json. PHP / JS theme writes are intentionally out of
|
|
|
3235
3243
|
type: { type: 'string', enum: ['color', 'typography', 'spacing', 'breakpoints'] },
|
|
3236
3244
|
id: { type: 'string' },
|
|
3237
3245
|
name: { type: 'string' },
|
|
3238
|
-
value: {
|
|
3246
|
+
value: {
|
|
3247
|
+
// Typed on purpose. An empty schema is valid JSON Schema and a
|
|
3248
|
+
// strict MCP validator rejects it: ChatGPT refused the whole
|
|
3249
|
+
// catalogue over this, so one untyped property took every tool
|
|
3250
|
+
// down. The plugin's own ability schema was fixed in 8.6.6; this
|
|
3251
|
+
// is the same fix in the npm lane, which still shipped it.
|
|
3252
|
+
type: ['string', 'number', 'object'],
|
|
3253
|
+
description: 'Token value: a CSS string for color and spacing ("#0f7b5f", "1.5rem"), a number, or an object for typography (fontFamily, fontSize, fontWeight, lineHeight).',
|
|
3254
|
+
},
|
|
3239
3255
|
expected_fingerprint: { type: 'string' },
|
|
3240
3256
|
approval_token: { type: 'string' },
|
|
3241
3257
|
dry_run: { type: 'boolean' },
|
|
@@ -5159,6 +5175,26 @@ Allowlist: css, scss, less, json. PHP / JS theme writes are intentionally out of
|
|
|
5159
5175
|
},
|
|
5160
5176
|
destructiveHint: true,
|
|
5161
5177
|
},
|
|
5178
|
+
{
|
|
5179
|
+
name: 'wordpress_purge_cache',
|
|
5180
|
+
description: 'Purge page and object caches, and report exactly which caching layers were touched.\n\nEvery Respira write already purges what it changed, so you rarely need this. Reach for it when something changed outside Respira (a plugin update, a theme edit, a CDN holding a copy) or when a page still looks stale after an edit.\n\nPass post_id to purge one page or post. Omit it for a site-wide purge. The response lists every caching plugin Respira knows, split into `purged` (with the exact function or hook called) and `not_found` (with what was looked for), so a quiet result is never ambiguous.',
|
|
5181
|
+
inputSchema: {
|
|
5182
|
+
type: 'object',
|
|
5183
|
+
properties: {
|
|
5184
|
+
post_id: {
|
|
5185
|
+
type: 'number',
|
|
5186
|
+
description: 'Purge just this page or post. Omit for a site-wide purge.',
|
|
5187
|
+
},
|
|
5188
|
+
scope: {
|
|
5189
|
+
type: 'string',
|
|
5190
|
+
enum: ['post', 'site'],
|
|
5191
|
+
description: 'Force a scope. Defaults to post when post_id is given, site otherwise.',
|
|
5192
|
+
},
|
|
5193
|
+
},
|
|
5194
|
+
required: [],
|
|
5195
|
+
},
|
|
5196
|
+
idempotentHint: true,
|
|
5197
|
+
},
|
|
5162
5198
|
// Media enhancements
|
|
5163
5199
|
{
|
|
5164
5200
|
name: 'wordpress_get_media',
|
|
@@ -5913,7 +5949,7 @@ Allowlist: css, scss, less, json. PHP / JS theme writes are intentionally out of
|
|
|
5913
5949
|
},
|
|
5914
5950
|
{
|
|
5915
5951
|
name: 'woocommerce_list_orders',
|
|
5916
|
-
description: 'List WooCommerce orders.',
|
|
5952
|
+
description: 'List WooCommerce orders. Every order carries customer_ip_address and customer_user_agent (the request fingerprint WooCommerce recorded, null when it recorded nothing) plus meta_data as a key/value list, so a card-testing run can be triaged from one call. Meta keys whose name matches a credential pattern (token, secret, key, password, hash, nonce, auth) are withheld; meta_data_withheld_count and meta_data_withheld_keys say which. Meta values over 500 characters are cut and the entry is marked truncated. The fingerprint fields are personal data and stay in this response: Respira telemetry never records tool results.',
|
|
5917
5953
|
inputSchema: {
|
|
5918
5954
|
type: 'object',
|
|
5919
5955
|
properties: {
|
|
@@ -5926,7 +5962,7 @@ Allowlist: css, scss, less, json. PHP / JS theme writes are intentionally out of
|
|
|
5926
5962
|
},
|
|
5927
5963
|
{
|
|
5928
5964
|
name: 'woocommerce_get_order',
|
|
5929
|
-
description: 'Get detailed information for a single WooCommerce order.',
|
|
5965
|
+
description: 'Get detailed information for a single WooCommerce order, including customer_ip_address, customer_user_agent and meta_data as a key/value list. Meta keys whose name matches a credential pattern (token, secret, key, password, hash, nonce, auth) are withheld and reported in meta_data_withheld_count and meta_data_withheld_keys, so filtered data never looks like missing data.',
|
|
5930
5966
|
inputSchema: {
|
|
5931
5967
|
type: 'object',
|
|
5932
5968
|
properties: {
|
|
@@ -7950,6 +7986,8 @@ Allowlist: css, scss, less, json. PHP / JS theme writes are intentionally out of
|
|
|
7950
7986
|
return await client.updateOption(args.option, args.value);
|
|
7951
7987
|
case 'wordpress_delete_option':
|
|
7952
7988
|
return await client.deleteOption(args.option, args.approval_token);
|
|
7989
|
+
case 'wordpress_purge_cache':
|
|
7990
|
+
return await client.purgeCache(args.post_id !== undefined ? Number(args.post_id) : undefined, args.scope);
|
|
7953
7991
|
// Media enhancements
|
|
7954
7992
|
case 'wordpress_get_media':
|
|
7955
7993
|
return await client.getMedia(args.id);
|