@wootsup/yt-builder-mcp 0.2.0-alpha.2 → 0.2.0-alpha.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/README.md +17 -16
- package/dist/gateway/advanced-tool/domains.d.ts +6 -1
- package/dist/gateway/advanced-tool/domains.d.ts.map +1 -1
- package/dist/gateway/advanced-tool/domains.js +7 -1
- package/dist/gateway/advanced-tool/domains.js.map +1 -1
- package/dist/gateway/essentials.d.ts +1 -1
- package/dist/gateway/essentials.d.ts.map +1 -1
- package/dist/gateway/essentials.js +14 -0
- package/dist/gateway/essentials.js.map +1 -1
- package/dist/install-skill.js +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +36 -0
- package/dist/server.js.map +1 -1
- package/dist/skill-loader.d.ts +51 -0
- package/dist/skill-loader.d.ts.map +1 -0
- package/dist/skill-loader.js +78 -0
- package/dist/skill-loader.js.map +1 -0
- package/dist/tools/format/elements-format.d.ts.map +1 -1
- package/dist/tools/format/elements-format.js +37 -4
- package/dist/tools/format/elements-format.js.map +1 -1
- package/dist/tools/format/inspection-format.d.ts +19 -6
- package/dist/tools/format/inspection-format.d.ts.map +1 -1
- package/dist/tools/format/inspection-format.js +38 -12
- package/dist/tools/format/inspection-format.js.map +1 -1
- package/dist/tools/format/pages-format.d.ts +4 -1
- package/dist/tools/format/pages-format.d.ts.map +1 -1
- package/dist/tools/format/pages-format.js +5 -2
- package/dist/tools/format/pages-format.js.map +1 -1
- package/dist/tools/format/sources-format.d.ts.map +1 -1
- package/dist/tools/format/sources-format.js +4 -1
- package/dist/tools/format/sources-format.js.map +1 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +2 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/multi-items/builders.d.ts +23 -0
- package/dist/tools/multi-items/builders.d.ts.map +1 -0
- package/dist/tools/multi-items/builders.js +56 -0
- package/dist/tools/multi-items/builders.js.map +1 -0
- package/dist/tools/multi-items/clean-implode-handler.d.ts +28 -0
- package/dist/tools/multi-items/clean-implode-handler.d.ts.map +1 -0
- package/dist/tools/multi-items/clean-implode-handler.js +35 -0
- package/dist/tools/multi-items/clean-implode-handler.js.map +1 -0
- package/dist/tools/multi-items/index.d.ts +18 -0
- package/dist/tools/multi-items/index.d.ts.map +1 -0
- package/dist/tools/multi-items/index.js +18 -0
- package/dist/tools/multi-items/index.js.map +1 -0
- package/dist/tools/multi-items/inspect-handler.d.ts +41 -0
- package/dist/tools/multi-items/inspect-handler.d.ts.map +1 -0
- package/dist/tools/multi-items/inspect-handler.js +45 -0
- package/dist/tools/multi-items/inspect-handler.js.map +1 -0
- package/dist/tools/multi-items/item-container-map.d.ts +41 -0
- package/dist/tools/multi-items/item-container-map.d.ts.map +1 -0
- package/dist/tools/multi-items/item-container-map.js +73 -0
- package/dist/tools/multi-items/item-container-map.js.map +1 -0
- package/dist/tools/pages/builders.d.ts.map +1 -1
- package/dist/tools/pages/builders.js +14 -8
- package/dist/tools/pages/builders.js.map +1 -1
- package/dist/tools/sources/builders.d.ts.map +1 -1
- package/dist/tools/sources/builders.js +17 -3
- package/dist/tools/sources/builders.js.map +1 -1
- package/dist/tools/sources/handlers-bind.d.ts +2 -0
- package/dist/tools/sources/handlers-bind.d.ts.map +1 -1
- package/dist/tools/sources/handlers-bind.js +9 -3
- package/dist/tools/sources/handlers-bind.js.map +1 -1
- package/manifest.json +18 -16
- package/package.json +1 -1
- package/skills/yootheme-builder/SKILL.md +16 -12
package/README.md
CHANGED
|
@@ -58,39 +58,40 @@ The wizard auto-detects and configures the following clients:
|
|
|
58
58
|
|
|
59
59
|
## Tool surface — gateway model
|
|
60
60
|
|
|
61
|
-
The server registers **
|
|
61
|
+
The server registers **24 tools total**, but only **11 entries appear
|
|
62
62
|
in `tools/list`** (well under Cursor's ~40-tool cap):
|
|
63
63
|
|
|
64
64
|
- **2 direct top-level tools** (always in `tools/list`):
|
|
65
65
|
`yootheme_builder_health`, `yootheme_builder_diagnose` — the
|
|
66
66
|
"the gateway itself might be broken" escape hatch.
|
|
67
|
-
- **
|
|
67
|
+
- **8 essential forwarded tools** (always in `tools/list`): the most-
|
|
68
68
|
used reads and writes — `pages_list`, `get_etag`, `element_list`,
|
|
69
69
|
`element_add`, `element_update_settings`, `sources_list`,
|
|
70
|
-
`element_types_list`.
|
|
70
|
+
`element_types_list`, `inspect_multi_items_binding`.
|
|
71
71
|
- **1 gateway tool** (`yootheme_builder_advanced`): exposes the
|
|
72
|
-
remaining **
|
|
72
|
+
remaining **13 advanced tools** behind a single entry. Call
|
|
73
73
|
`yootheme_builder_advanced({ tool: "<name>" })` for discovery
|
|
74
74
|
(returns the schema) or `({ tool, arguments })` to execute.
|
|
75
|
-
- **
|
|
75
|
+
- **13 advanced tools** dispatched via the gateway (page_get_layout,
|
|
76
76
|
page_get_schema, page_save, page_publish, element_get,
|
|
77
77
|
element_move, element_clone, element_delete,
|
|
78
78
|
element_get_binding, element_bind_source, element_unbind_source,
|
|
79
|
-
element_type_get_schema).
|
|
79
|
+
clean_implode_directives, element_type_get_schema).
|
|
80
80
|
|
|
81
|
-
Total: **
|
|
81
|
+
Total: **23 domain tools + 1 gateway = 24**. Surface: **11 entries
|
|
82
82
|
in tools/list**. See `skills/yootheme-builder/SKILL.md` for the
|
|
83
83
|
full catalog and the 5 canonical workflows.
|
|
84
84
|
|
|
85
|
-
## Tool catalogue —
|
|
85
|
+
## Tool catalogue — 23 domain tools
|
|
86
86
|
|
|
87
|
-
| Domain
|
|
88
|
-
|
|
89
|
-
| Health
|
|
90
|
-
| Pages
|
|
91
|
-
| Elements
|
|
92
|
-
| Sources
|
|
93
|
-
|
|
|
87
|
+
| Domain | Count | Tools |
|
|
88
|
+
|-------------|------:|---------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|
89
|
+
| Health | 2 | `health`, `diagnose` |
|
|
90
|
+
| Pages | 6 | `pages_list`, `page_get_layout`, `page_get_schema`, `get_etag`, `page_save`, `page_publish` |
|
|
91
|
+
| Elements | 7 | `element_list`, `element_get`, `element_add`, `element_update_settings`, `element_move`, `element_clone`, `element_delete` |
|
|
92
|
+
| Sources | 4 | `sources_list`, `element_get_binding`, `element_bind_source`, `element_unbind_source` |
|
|
93
|
+
| Multi-Items | 2 | `inspect_multi_items_binding`, `clean_implode_directives` |
|
|
94
|
+
| Inspection | 2 | `element_types_list`, `element_type_get_schema` |
|
|
94
95
|
|
|
95
96
|
All tool names are prefixed with `yootheme_builder_` at the MCP
|
|
96
97
|
server boundary.
|
|
@@ -118,7 +119,7 @@ client without per-client write logic.
|
|
|
118
119
|
|
|
119
120
|
The skill ships with the 5 canonical workflows (build hero, bind
|
|
120
121
|
source, clone section, diagnose 401, add custom element) plus a
|
|
121
|
-
|
|
122
|
+
23-tool auto-generated catalog appendix.
|
|
122
123
|
|
|
123
124
|
## DXT bundle — Claude Desktop one-click install
|
|
124
125
|
|
|
@@ -20,12 +20,17 @@ import type { AdvancedToolEntry } from '../capturing-server.js';
|
|
|
20
20
|
* from 8→4 (singular forms now route via DOMAIN_PREFIX_MAP, not
|
|
21
21
|
* duplicate entries). Pinned by `tests/gateway/domain-order.test.ts`.
|
|
22
22
|
*/
|
|
23
|
-
export declare const DOMAIN_ORDER: readonly ["pages", "elements", "sources", "inspection"];
|
|
23
|
+
export declare const DOMAIN_ORDER: readonly ["pages", "elements", "sources", "multi-items", "inspection"];
|
|
24
24
|
/**
|
|
25
25
|
* Prefix→domain routing table. Each domain accepts plural
|
|
26
26
|
* (`pages_list`) + singular (`page_save`, `element_add`, `source_…`)
|
|
27
27
|
* stems via `stem.startsWith(prefix + '_')` or full-equality. Anything
|
|
28
28
|
* outside the taxonomy falls through to 'misc'.
|
|
29
|
+
*
|
|
30
|
+
* The `multi-items` domain captures the YT-Pro Multi-Items binding
|
|
31
|
+
* pattern tools (inspect / clean-implode). Stems used:
|
|
32
|
+
* - `inspect_multi_items_binding` → starts with `inspect_multi_items`
|
|
33
|
+
* - `clean_implode_directives` → starts with `clean_implode`
|
|
29
34
|
*/
|
|
30
35
|
export declare const DOMAIN_PREFIX_MAP: Record<(typeof DOMAIN_ORDER)[number], readonly string[]>;
|
|
31
36
|
export declare const TOOL_PREFIX = "yootheme_builder_";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"domains.d.ts","sourceRoot":"","sources":["../../../src/gateway/advanced-tool/domains.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAEhE;;;;;;GAMG;AACH,eAAO,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"domains.d.ts","sourceRoot":"","sources":["../../../src/gateway/advanced-tool/domains.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAEhE;;;;;;GAMG;AACH,eAAO,MAAM,YAAY,wEAAyE,CAAC;AAEnG;;;;;;;;;;GAUG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAMtF,CAAC;AAEF,eAAO,MAAM,WAAW,sBAAsB,CAAC;AAE/C,8FAA8F;AAC9F,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAQjD;AAED,uEAAuE;AACvE,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAYxE;AAED,qFAAqF;AACrF,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,CAO7D;AAED,qFAAqF;AACrF,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,CAe5D;AAED,yFAAyF;AACzF,YAAY,EAAE,iBAAiB,EAAE,CAAC"}
|
|
@@ -19,17 +19,23 @@
|
|
|
19
19
|
* from 8→4 (singular forms now route via DOMAIN_PREFIX_MAP, not
|
|
20
20
|
* duplicate entries). Pinned by `tests/gateway/domain-order.test.ts`.
|
|
21
21
|
*/
|
|
22
|
-
export const DOMAIN_ORDER = ['pages', 'elements', 'sources', 'inspection'];
|
|
22
|
+
export const DOMAIN_ORDER = ['pages', 'elements', 'sources', 'multi-items', 'inspection'];
|
|
23
23
|
/**
|
|
24
24
|
* Prefix→domain routing table. Each domain accepts plural
|
|
25
25
|
* (`pages_list`) + singular (`page_save`, `element_add`, `source_…`)
|
|
26
26
|
* stems via `stem.startsWith(prefix + '_')` or full-equality. Anything
|
|
27
27
|
* outside the taxonomy falls through to 'misc'.
|
|
28
|
+
*
|
|
29
|
+
* The `multi-items` domain captures the YT-Pro Multi-Items binding
|
|
30
|
+
* pattern tools (inspect / clean-implode). Stems used:
|
|
31
|
+
* - `inspect_multi_items_binding` → starts with `inspect_multi_items`
|
|
32
|
+
* - `clean_implode_directives` → starts with `clean_implode`
|
|
28
33
|
*/
|
|
29
34
|
export const DOMAIN_PREFIX_MAP = {
|
|
30
35
|
pages: ['pages', 'page'],
|
|
31
36
|
elements: ['elements', 'element'],
|
|
32
37
|
sources: ['sources', 'source'],
|
|
38
|
+
'multi-items': ['inspect_multi_items', 'clean_implode'],
|
|
33
39
|
inspection: ['inspection'],
|
|
34
40
|
};
|
|
35
41
|
export const TOOL_PREFIX = 'yootheme_builder_';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"domains.js","sourceRoot":"","sources":["../../../src/gateway/advanced-tool/domains.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAIH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,CAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"domains.js","sourceRoot":"","sources":["../../../src/gateway/advanced-tool/domains.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
* L1 — Tools kept as first-class entries in `tools/list`.
|
|
32
32
|
* Forwarded by the CapturingServer to the real McpServer.
|
|
33
33
|
*/
|
|
34
|
-
export declare const ESSENTIAL_TOOLS: readonly ["yootheme_builder_pages_list", "yootheme_builder_get_etag", "yootheme_builder_element_list", "yootheme_builder_element_add", "yootheme_builder_element_update_settings", "yootheme_builder_sources_list", "yootheme_builder_element_types_list"];
|
|
34
|
+
export declare const ESSENTIAL_TOOLS: readonly ["yootheme_builder_pages_list", "yootheme_builder_get_etag", "yootheme_builder_element_list", "yootheme_builder_element_add", "yootheme_builder_element_update_settings", "yootheme_builder_sources_list", "yootheme_builder_element_types_list", "yootheme_builder_inspect_multi_items_binding", "yootheme_builder_element_get", "yootheme_builder_element_delete", "yootheme_builder_element_clone", "yootheme_builder_element_move", "yootheme_builder_page_get_layout"];
|
|
35
35
|
/**
|
|
36
36
|
* L3 — Tools registered DIRECTLY on the real McpServer, BEFORE the
|
|
37
37
|
* CapturingServer wraps it. The CapturingServer treats these names as a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"essentials.d.ts","sourceRoot":"","sources":["../../src/gateway/essentials.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH;;;GAGG;AACH,eAAO,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"essentials.d.ts","sourceRoot":"","sources":["../../src/gateway/essentials.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH;;;GAGG;AACH,eAAO,MAAM,eAAe,sdAsBlB,CAAC;AAEX;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,mEAGzB,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAC7D,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEzE,gEAAgE;AAChE,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEjD;AAED,4DAA4D;AAC5D,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEtD"}
|
|
@@ -39,6 +39,20 @@ export const ESSENTIAL_TOOLS = [
|
|
|
39
39
|
'yootheme_builder_element_update_settings',
|
|
40
40
|
'yootheme_builder_sources_list',
|
|
41
41
|
'yootheme_builder_element_types_list',
|
|
42
|
+
// Multi-Items inspector — L1 discovery tool. Surfaces when a
|
|
43
|
+
// binding lives on the wrong (container) level and which `*_item`
|
|
44
|
+
// child should carry it. Frequent first-call when diagnosing
|
|
45
|
+
// Grid/Slider/Switcher rendering issues.
|
|
46
|
+
'yootheme_builder_inspect_multi_items_binding',
|
|
47
|
+
// F-16 hot-path promotions (Maria-Audit v2 re-confirmed) — the 5
|
|
48
|
+
// most-used read/mutate operations skip the advanced-router
|
|
49
|
+
// discovery roundtrip. Cursor cap is ~40; we sit at 13 L1 + 2 L3 +
|
|
50
|
+
// 1 gateway = 16, comfortable below the limit.
|
|
51
|
+
'yootheme_builder_element_get',
|
|
52
|
+
'yootheme_builder_element_delete',
|
|
53
|
+
'yootheme_builder_element_clone',
|
|
54
|
+
'yootheme_builder_element_move',
|
|
55
|
+
'yootheme_builder_page_get_layout',
|
|
42
56
|
];
|
|
43
57
|
/**
|
|
44
58
|
* L3 — Tools registered DIRECTLY on the real McpServer, BEFORE the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"essentials.js","sourceRoot":"","sources":["../../src/gateway/essentials.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC3B,6BAA6B;IAC7B,2BAA2B;IAC3B,+BAA+B;IAC/B,8BAA8B;IAC9B,0CAA0C;IAC1C,+BAA+B;IAC/B,qCAAqC;
|
|
1
|
+
{"version":3,"file":"essentials.js","sourceRoot":"","sources":["../../src/gateway/essentials.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC3B,6BAA6B;IAC7B,2BAA2B;IAC3B,+BAA+B;IAC/B,8BAA8B;IAC9B,0CAA0C;IAC1C,+BAA+B;IAC/B,qCAAqC;IACrC,6DAA6D;IAC7D,kEAAkE;IAClE,6DAA6D;IAC7D,yCAAyC;IACzC,8CAA8C;IAC9C,iEAAiE;IACjE,4DAA4D;IAC5D,mEAAmE;IACnE,+CAA+C;IAC/C,8BAA8B;IAC9B,iCAAiC;IACjC,gCAAgC;IAChC,+BAA+B;IAC/B,kCAAkC;CAC5B,CAAC;AAEX;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG;IAClC,yBAAyB;IACzB,2BAA2B;CACrB,CAAC;AAKX,gEAAgE;AAChE,MAAM,UAAU,WAAW,CAAC,IAAY;IACpC,OAAQ,eAAqC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACjE,CAAC;AAED,4DAA4D;AAC5D,MAAM,UAAU,gBAAgB,CAAC,IAAY;IACzC,OAAQ,sBAA4C,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACxE,CAAC"}
|
package/dist/install-skill.js
CHANGED
|
@@ -27,7 +27,7 @@ The YOOtheme Builder skill is installed at \`~/.claude/skills/yootheme-builder/\
|
|
|
27
27
|
— the universal-marker path recognised by Claude Desktop and other AI
|
|
28
28
|
clients that follow the \`~/AGENTS.md\` discovery protocol.
|
|
29
29
|
|
|
30
|
-
It documents the
|
|
30
|
+
It documents the 24 MCP tools (23 domain + 1 gateway, 11 entries in
|
|
31
31
|
\`tools/list\`), the 5 canonical workflows (build hero, bind dynamic
|
|
32
32
|
source, clone section, diagnose 401, add custom element), and the
|
|
33
33
|
gateway routing model. Source: https://github.com/wootsup/yt-builder-mcp.
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAsB,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAsB,MAAM,+BAA+B,CAAC;AAUpF,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEtE,eAAO,MAAM,WAAW,4BAA4B,CAAC;AACrD,eAAO,MAAM,cAAc,kBAAkB,CAAC;AAE9C,MAAM,WAAW,mBAAmB;IAChC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,2DAA2D;IAC3D,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;CAC9C;AAED,MAAM,WAAW,aAAa;IAC1B,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC;IACxB,gFAAgF;IAChF,QAAQ,CAAC,KAAK,EAAE,SAAS,cAAc,EAAE,CAAC;IAC1C,qEAAqE;IACrE,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC;CACvC;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,aAAa,CA0FxE"}
|
package/dist/server.js
CHANGED
|
@@ -32,15 +32,51 @@ import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
|
32
32
|
import { registerAdvancedTool } from './gateway/advanced-tool.js';
|
|
33
33
|
import { CapturingServer } from './gateway/capturing-server.js';
|
|
34
34
|
import { isDirectTopLevel } from './gateway/essentials.js';
|
|
35
|
+
import { loadSkillContent, SKILL_RESOURCE_DESCRIPTION, SKILL_RESOURCE_MIME_TYPE, SKILL_RESOURCE_NAME, SKILL_RESOURCE_URI, } from './skill-loader.js';
|
|
35
36
|
import { toElicitationCapability } from './tools/elicitation.js';
|
|
36
37
|
import { buildAllTools } from './tools/index.js';
|
|
37
38
|
export const SERVER_NAME = '@wootsup/yt-builder-mcp';
|
|
38
39
|
export const SERVER_VERSION = '0.2.0-alpha.2';
|
|
39
40
|
export function createServer(options) {
|
|
41
|
+
// Stream B1 — Skill-Distribution via MCP-Protocol.
|
|
42
|
+
//
|
|
43
|
+
// The bundled SKILL.md is published through two MCP-native channels:
|
|
44
|
+
//
|
|
45
|
+
// (a) `instructions` field on the `initialize` response. MCP-spec
|
|
46
|
+
// hosts (Claude Desktop, Cursor, …) surface this string as
|
|
47
|
+
// auto-context so Maria-the-Claude-Desktop-user receives the
|
|
48
|
+
// skill narrative without ever calling a tool.
|
|
49
|
+
//
|
|
50
|
+
// (b) `skill://yt-builder-mcp` resource exposed via
|
|
51
|
+
// `resources/list` + `resources/read`. Backup for hosts that
|
|
52
|
+
// ignore `instructions` but honor the resources API.
|
|
53
|
+
//
|
|
54
|
+
// Reading SKILL.md is synchronous (small file, ~17 KB) and cached
|
|
55
|
+
// after first call by `loadSkillContent` — no async cost.
|
|
56
|
+
const instructions = loadSkillContent();
|
|
40
57
|
const mcp = new McpServer({
|
|
41
58
|
name: SERVER_NAME,
|
|
42
59
|
version: SERVER_VERSION,
|
|
60
|
+
}, {
|
|
61
|
+
instructions,
|
|
43
62
|
});
|
|
63
|
+
// Register the SKILL.md as a static MCP resource. The capability
|
|
64
|
+
// (`resources: { listChanged: true }` etc.) is auto-advertised by
|
|
65
|
+
// McpServer the moment the first resource is registered, so MCP
|
|
66
|
+
// hosts see `resources` in `initialize.capabilities`.
|
|
67
|
+
mcp.registerResource(SKILL_RESOURCE_NAME, SKILL_RESOURCE_URI, {
|
|
68
|
+
title: SKILL_RESOURCE_NAME,
|
|
69
|
+
description: SKILL_RESOURCE_DESCRIPTION,
|
|
70
|
+
mimeType: SKILL_RESOURCE_MIME_TYPE,
|
|
71
|
+
}, async (uri) => ({
|
|
72
|
+
contents: [
|
|
73
|
+
{
|
|
74
|
+
uri: uri.toString(),
|
|
75
|
+
mimeType: SKILL_RESOURCE_MIME_TYPE,
|
|
76
|
+
text: instructions,
|
|
77
|
+
},
|
|
78
|
+
],
|
|
79
|
+
}));
|
|
44
80
|
// Wave G.4.5 — MCP elicitation capability wiring.
|
|
45
81
|
//
|
|
46
82
|
// `toElicitationCapability(mcp)` bridges the SDK's stricter
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAIpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAsB,MAAM,+BAA+B,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,aAAa,EAAuB,MAAM,kBAAkB,CAAC;AAEtE,MAAM,CAAC,MAAM,WAAW,GAAG,yBAAyB,CAAC;AACrD,MAAM,CAAC,MAAM,cAAc,GAAG,eAAe,CAAC;AAgB9C,MAAM,UAAU,YAAY,CAAC,OAA4B;IACrD,MAAM,GAAG,GAAG,IAAI,SAAS,
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Skill loader — Stream B1 (Skill-Distribution via MCP-Protocol).
|
|
3
|
+
*
|
|
4
|
+
* Reads the bundled SKILL.md once at module-load time and exposes it
|
|
5
|
+
* so that:
|
|
6
|
+
*
|
|
7
|
+
* 1. `createServer` can pass the content as the `instructions` field
|
|
8
|
+
* to `McpServer`. MCP-spec hosts (Claude Desktop, Cursor, …)
|
|
9
|
+
* surface this string as auto-context after the `initialize`
|
|
10
|
+
* handshake — Maria the Claude-Desktop user receives the skill
|
|
11
|
+
* narrative without ever invoking a tool.
|
|
12
|
+
*
|
|
13
|
+
* 2. A `skill://yt-builder-mcp` resource can return the same content
|
|
14
|
+
* on demand for hosts that ignore `instructions` but honor
|
|
15
|
+
* `resources/list` + `resources/read`.
|
|
16
|
+
*
|
|
17
|
+
* Resolution layout (matches `install-skill.ts` + `build-dxt.js`):
|
|
18
|
+
*
|
|
19
|
+
* packages/mcp/skills/yootheme-builder/SKILL.md
|
|
20
|
+
*
|
|
21
|
+
* When the file is compiled to `dist/skill-loader.js`, the same
|
|
22
|
+
* relative `../skills/yootheme-builder/SKILL.md` resolves correctly
|
|
23
|
+
* because the published npm tarball (and the DXT stage) preserves the
|
|
24
|
+
* `skills/` folder next to `dist/`.
|
|
25
|
+
*
|
|
26
|
+
* Read errors throw at module-init: a missing SKILL.md is a packaging
|
|
27
|
+
* bug, not a recoverable runtime condition.
|
|
28
|
+
*
|
|
29
|
+
* @license MIT
|
|
30
|
+
*/
|
|
31
|
+
/** Stable URI under which the skill resource is exposed via MCP `resources/*`. */
|
|
32
|
+
export declare const SKILL_RESOURCE_URI = "skill://yt-builder-mcp";
|
|
33
|
+
/** Human-readable resource name surfaced in `resources/list`. */
|
|
34
|
+
export declare const SKILL_RESOURCE_NAME = "YT Builder MCP \u2014 Skill Guide";
|
|
35
|
+
/** Short description for `resources/list` consumers. */
|
|
36
|
+
export declare const SKILL_RESOURCE_DESCRIPTION: string;
|
|
37
|
+
/** MIME type for the SKILL.md payload. */
|
|
38
|
+
export declare const SKILL_RESOURCE_MIME_TYPE = "text/markdown";
|
|
39
|
+
/**
|
|
40
|
+
* Load the bundled SKILL.md content. Cached after the first read.
|
|
41
|
+
*
|
|
42
|
+
* @throws Error when the file is missing or unreadable (packaging bug).
|
|
43
|
+
*/
|
|
44
|
+
export declare function loadSkillContent(): string;
|
|
45
|
+
/**
|
|
46
|
+
* Reset the in-memory cache. Intended for tests only.
|
|
47
|
+
*
|
|
48
|
+
* @internal
|
|
49
|
+
*/
|
|
50
|
+
export declare function __resetSkillCacheForTests(): void;
|
|
51
|
+
//# sourceMappingURL=skill-loader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill-loader.d.ts","sourceRoot":"","sources":["../src/skill-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAMH,kFAAkF;AAClF,eAAO,MAAM,kBAAkB,2BAA2B,CAAC;AAE3D,iEAAiE;AACjE,eAAO,MAAM,mBAAmB,sCAAiC,CAAC;AAElE,wDAAwD;AACxD,eAAO,MAAM,0BAA0B,QAEqC,CAAC;AAE7E,0CAA0C;AAC1C,eAAO,MAAM,wBAAwB,kBAAkB,CAAC;AAmBxD;;;;GAIG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAOzC;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,IAAI,IAAI,CAEhD"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Skill loader — Stream B1 (Skill-Distribution via MCP-Protocol).
|
|
3
|
+
*
|
|
4
|
+
* Reads the bundled SKILL.md once at module-load time and exposes it
|
|
5
|
+
* so that:
|
|
6
|
+
*
|
|
7
|
+
* 1. `createServer` can pass the content as the `instructions` field
|
|
8
|
+
* to `McpServer`. MCP-spec hosts (Claude Desktop, Cursor, …)
|
|
9
|
+
* surface this string as auto-context after the `initialize`
|
|
10
|
+
* handshake — Maria the Claude-Desktop user receives the skill
|
|
11
|
+
* narrative without ever invoking a tool.
|
|
12
|
+
*
|
|
13
|
+
* 2. A `skill://yt-builder-mcp` resource can return the same content
|
|
14
|
+
* on demand for hosts that ignore `instructions` but honor
|
|
15
|
+
* `resources/list` + `resources/read`.
|
|
16
|
+
*
|
|
17
|
+
* Resolution layout (matches `install-skill.ts` + `build-dxt.js`):
|
|
18
|
+
*
|
|
19
|
+
* packages/mcp/skills/yootheme-builder/SKILL.md
|
|
20
|
+
*
|
|
21
|
+
* When the file is compiled to `dist/skill-loader.js`, the same
|
|
22
|
+
* relative `../skills/yootheme-builder/SKILL.md` resolves correctly
|
|
23
|
+
* because the published npm tarball (and the DXT stage) preserves the
|
|
24
|
+
* `skills/` folder next to `dist/`.
|
|
25
|
+
*
|
|
26
|
+
* Read errors throw at module-init: a missing SKILL.md is a packaging
|
|
27
|
+
* bug, not a recoverable runtime condition.
|
|
28
|
+
*
|
|
29
|
+
* @license MIT
|
|
30
|
+
*/
|
|
31
|
+
import { readFileSync } from 'node:fs';
|
|
32
|
+
import { dirname, resolve } from 'node:path';
|
|
33
|
+
import { fileURLToPath } from 'node:url';
|
|
34
|
+
/** Stable URI under which the skill resource is exposed via MCP `resources/*`. */
|
|
35
|
+
export const SKILL_RESOURCE_URI = 'skill://yt-builder-mcp';
|
|
36
|
+
/** Human-readable resource name surfaced in `resources/list`. */
|
|
37
|
+
export const SKILL_RESOURCE_NAME = 'YT Builder MCP — Skill Guide';
|
|
38
|
+
/** Short description for `resources/list` consumers. */
|
|
39
|
+
export const SKILL_RESOURCE_DESCRIPTION = 'Workflow guide for driving the YOOtheme Pro page builder via this MCP server. ' +
|
|
40
|
+
'Auto-loaded as `instructions` at initialize; also fetchable on demand.';
|
|
41
|
+
/** MIME type for the SKILL.md payload. */
|
|
42
|
+
export const SKILL_RESOURCE_MIME_TYPE = 'text/markdown';
|
|
43
|
+
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
44
|
+
/**
|
|
45
|
+
* Resolve the on-disk path to the bundled SKILL.md.
|
|
46
|
+
*
|
|
47
|
+
* Source-tree: packages/mcp/src/skill-loader.ts → ../skills/yootheme-builder/SKILL.md
|
|
48
|
+
* Built tarball: packages/mcp/dist/skill-loader.js → ../skills/yootheme-builder/SKILL.md
|
|
49
|
+
*
|
|
50
|
+
* Both layouts work because `dist/` and `src/` are siblings of
|
|
51
|
+
* `skills/` under the package root.
|
|
52
|
+
*/
|
|
53
|
+
function resolveSkillPath() {
|
|
54
|
+
return resolve(__dirname, '..', 'skills', 'yootheme-builder', 'SKILL.md');
|
|
55
|
+
}
|
|
56
|
+
let cached;
|
|
57
|
+
/**
|
|
58
|
+
* Load the bundled SKILL.md content. Cached after the first read.
|
|
59
|
+
*
|
|
60
|
+
* @throws Error when the file is missing or unreadable (packaging bug).
|
|
61
|
+
*/
|
|
62
|
+
export function loadSkillContent() {
|
|
63
|
+
if (cached !== undefined) {
|
|
64
|
+
return cached;
|
|
65
|
+
}
|
|
66
|
+
const path = resolveSkillPath();
|
|
67
|
+
cached = readFileSync(path, 'utf-8');
|
|
68
|
+
return cached;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Reset the in-memory cache. Intended for tests only.
|
|
72
|
+
*
|
|
73
|
+
* @internal
|
|
74
|
+
*/
|
|
75
|
+
export function __resetSkillCacheForTests() {
|
|
76
|
+
cached = undefined;
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=skill-loader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill-loader.js","sourceRoot":"","sources":["../src/skill-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,kFAAkF;AAClF,MAAM,CAAC,MAAM,kBAAkB,GAAG,wBAAwB,CAAC;AAE3D,iEAAiE;AACjE,MAAM,CAAC,MAAM,mBAAmB,GAAG,8BAA8B,CAAC;AAElE,wDAAwD;AACxD,MAAM,CAAC,MAAM,0BAA0B,GACnC,gFAAgF;IAChF,wEAAwE,CAAC;AAE7E,0CAA0C;AAC1C,MAAM,CAAC,MAAM,wBAAwB,GAAG,eAAe,CAAC;AAExD,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAE1D;;;;;;;;GAQG;AACH,SAAS,gBAAgB;IACrB,OAAO,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,kBAAkB,EAAE,UAAU,CAAC,CAAC;AAC9E,CAAC;AAED,IAAI,MAA0B,CAAC;AAE/B;;;;GAIG;AACH,MAAM,UAAU,gBAAgB;IAC5B,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC;IAClB,CAAC;IACD,MAAM,IAAI,GAAG,gBAAgB,EAAE,CAAC;IAChC,MAAM,GAAG,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACrC,OAAO,MAAM,CAAC;AAClB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,yBAAyB;IACrC,MAAM,GAAG,SAAS,CAAC;AACvB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"elements-format.d.ts","sourceRoot":"","sources":["../../../src/tools/format/elements-format.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"elements-format.d.ts","sourceRoot":"","sources":["../../../src/tools/format/elements-format.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAOpE,eAAO,MAAM,sBAAsB,EAAE,SAAS,WAAW,EAKxD,CAAC;AAEF,mEAAmE;AACnE,eAAO,MAAM,wBAAwB,EAAE,SAAS,WAAW,EAG1D,CAAC;AAqCF;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAsBrF;AAID,UAAU,gBAAgB;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC;CAClB;AAoBD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG;IAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CA4C5C"}
|
|
@@ -5,26 +5,54 @@
|
|
|
5
5
|
* @license MIT
|
|
6
6
|
*/
|
|
7
7
|
// ─── Element-list columns (Design §3.2 row 9) ────────────────────────
|
|
8
|
+
// F-06: PATH column widened to 64 chars + 'rel_path' shows just the
|
|
9
|
+
// template-layout suffix so every row stays uniquely identifiable in
|
|
10
|
+
// the text table. Full path remains available in structuredContent.
|
|
8
11
|
export const ELEMENTS_TABLE_COLUMNS = [
|
|
9
|
-
{ key: '
|
|
12
|
+
{ key: 'rel_path', label: 'PATH', width: 48, llmOnly: true },
|
|
10
13
|
{ key: 'element_type', label: 'TYPE', width: 16 },
|
|
11
14
|
{ key: 'label', label: 'LABEL', width: 28 },
|
|
12
15
|
{ key: 'has_binding', label: 'BIND', width: 8 },
|
|
13
16
|
];
|
|
14
17
|
/** Compact columns kick in at 21+ rows — keep path + type only. */
|
|
15
18
|
export const ELEMENTS_COMPACT_COLUMNS = [
|
|
16
|
-
{ key: '
|
|
19
|
+
{ key: 'rel_path', label: 'PATH', width: 48, llmOnly: true },
|
|
17
20
|
{ key: 'element_type', label: 'TYPE', width: 16 },
|
|
18
21
|
];
|
|
19
22
|
// ─── Row mapper ──────────────────────────────────────────────────────
|
|
20
23
|
function asString(v) {
|
|
21
24
|
return typeof v === 'string' ? v : '';
|
|
22
25
|
}
|
|
26
|
+
/**
|
|
27
|
+
* Defensive `has_binding` derivation used when the REST plugin does not
|
|
28
|
+
* surface an explicit boolean. Mirrors `PageQuery::hasBinding()` +
|
|
29
|
+
* `ElementOps::hasBinding()` on the PHP side so all three readers agree
|
|
30
|
+
* on the same node.
|
|
31
|
+
*
|
|
32
|
+
* Stream C1 (F-01-Rest, 2026-05-22): live YT4 templates store the binding
|
|
33
|
+
* as the F-13 structured shape `{query:{name:"posts.singlePost"}, props:{…}}`.
|
|
34
|
+
* The legacy plain-string `props.source = "name"` shape is still honoured
|
|
35
|
+
* (pre-F-13 user data).
|
|
36
|
+
*/
|
|
23
37
|
function hasSourceBinding(props) {
|
|
24
38
|
if (props === null || typeof props !== 'object')
|
|
25
39
|
return false;
|
|
26
40
|
const obj = props;
|
|
27
|
-
|
|
41
|
+
if (!('source' in obj))
|
|
42
|
+
return false;
|
|
43
|
+
const src = obj.source;
|
|
44
|
+
// Legacy plain-string shape.
|
|
45
|
+
if (typeof src === 'string')
|
|
46
|
+
return src.length > 0;
|
|
47
|
+
// F-13 structured shape: bound when `query.name` is a non-empty string.
|
|
48
|
+
if (src !== null && typeof src === 'object') {
|
|
49
|
+
const query = src.query;
|
|
50
|
+
if (query !== null && typeof query === 'object') {
|
|
51
|
+
const name = query.name;
|
|
52
|
+
return typeof name === 'string' && name.length > 0;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return false;
|
|
28
56
|
}
|
|
29
57
|
/**
|
|
30
58
|
* Maps an `/elements` row to the table shape.
|
|
@@ -39,8 +67,13 @@ export function mapElementRow(input) {
|
|
|
39
67
|
? asString(input.label)
|
|
40
68
|
: asString(input.title);
|
|
41
69
|
const explicitBinding = typeof input.has_binding === 'boolean' ? input.has_binding : undefined;
|
|
70
|
+
const path = asString(input.path);
|
|
71
|
+
// F-06: derive relative path by stripping `/templates/<id>/layout` prefix
|
|
72
|
+
// so the LLM table column shows uniquely-identifying suffix.
|
|
73
|
+
const relPath = path.replace(/^\/templates\/[^/]+\/layout/, '') || '/';
|
|
42
74
|
return {
|
|
43
|
-
path
|
|
75
|
+
path,
|
|
76
|
+
rel_path: relPath,
|
|
44
77
|
element_type: asString(input.element_type),
|
|
45
78
|
label,
|
|
46
79
|
has_binding: explicitBinding ?? hasSourceBinding(input.props),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"elements-format.js","sourceRoot":"","sources":["../../../src/tools/format/elements-format.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,wEAAwE;
|
|
1
|
+
{"version":3,"file":"elements-format.js","sourceRoot":"","sources":["../../../src/tools/format/elements-format.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,16 +21,29 @@ export interface TypeRow {
|
|
|
21
21
|
/**
|
|
22
22
|
* Maps an `/element-types` row to the table shape.
|
|
23
23
|
*
|
|
24
|
-
* - `has_children_support` honours an explicit boolean
|
|
25
|
-
*
|
|
24
|
+
* - `has_children_support` honours an explicit boolean (the canonical
|
|
25
|
+
* column key on the MCP-TS side). The PHP REST envelope surfaces both
|
|
26
|
+
* `has_children` (its canonical key) AND `has_children_support` (this
|
|
27
|
+
* alias) for every row — accept either to ride out a deploy skew where
|
|
28
|
+
* the wp-plugin and npm-package versions are temporarily out of step.
|
|
29
|
+
* Maria-Audit Stream C2 F-03 v2 (2026-05-22).
|
|
30
|
+
* - Falls back to presence of a `children` field on the type definition.
|
|
26
31
|
* - Missing fields default to empty.
|
|
27
32
|
*/
|
|
28
33
|
export declare function mapTypeRow(input: Record<string, unknown>): TypeRow;
|
|
29
34
|
/**
|
|
30
|
-
* The REST plugin exposes element types
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
*
|
|
35
|
+
* The REST plugin exposes element types in one of three shapes:
|
|
36
|
+
*
|
|
37
|
+
* 1. F-03 v2 (current — Maria-Audit Stream C2 2026-05-22): wrapper object
|
|
38
|
+
* `{items: [{name, label, origin, has_children, has_children_support,
|
|
39
|
+
* …}], total, element_types: [<string>, …]}`. This is the richest
|
|
40
|
+
* shape and the only one carrying label/origin/has_children — prefer
|
|
41
|
+
* it always.
|
|
42
|
+
* 2. Legacy F-03 v1: wrapper object `{element_types: [<string>, …]}`
|
|
43
|
+
* with name-only entries (older WP-plugin versions). Used as the
|
|
44
|
+
* back-compat fallback when `items` is absent.
|
|
45
|
+
* 3. Flat array of `{name, …}` objects — never seen on the live
|
|
46
|
+
* yt-builder-mcp REST but kept for paranoia.
|
|
34
47
|
*/
|
|
35
48
|
export declare function flattenTypesPayload(payload: unknown): Record<string, unknown>[];
|
|
36
49
|
export declare function buildTypeSchemaDetail(payload: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspection-format.d.ts","sourceRoot":"","sources":["../../../src/tools/format/inspection-format.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAIpE,8DAA8D;AAC9D,eAAO,MAAM,mBAAmB,EAAE,SAAS,WAAW,EAKrD,CAAC;AAEF,8DAA8D;AAC9D,eAAO,MAAM,qBAAqB,EAAE,SAAS,WAAW,EAIvD,CAAC;AAYF,MAAM,WAAW,OAAO;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,oBAAoB,EAAE,OAAO,CAAC;CACjC;AAED
|
|
1
|
+
{"version":3,"file":"inspection-format.d.ts","sourceRoot":"","sources":["../../../src/tools/format/inspection-format.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAIpE,8DAA8D;AAC9D,eAAO,MAAM,mBAAmB,EAAE,SAAS,WAAW,EAKrD,CAAC;AAEF,8DAA8D;AAC9D,eAAO,MAAM,qBAAqB,EAAE,SAAS,WAAW,EAIvD,CAAC;AAYF,MAAM,WAAW,OAAO;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,oBAAoB,EAAE,OAAO,CAAC;CACjC;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAkBlE;AAUD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAkB/E;AAuBD,wBAAgB,qBAAqB,CAAC,OAAO,EAAE;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB,GAAG;IAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAyB5C"}
|