@plitzi/sdk-server 0.30.19 → 0.31.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/CHANGELOG.md +12 -0
- package/dist/_virtual/_rolldown/runtime.js +13 -0
- package/dist/helpers/cache/TtlCache.js +2 -0
- package/dist/index.js +6 -1
- package/dist/modules/ai/AIEngine.js +120 -0
- package/dist/modules/mcp/handler.js +35 -16
- package/dist/modules/mcp/helpers.js +75 -0
- package/dist/modules/mcp/resources/glossary/binding.js +73 -0
- package/dist/modules/mcp/resources/glossary/collection.js +76 -0
- package/dist/modules/mcp/resources/glossary/displayMode.js +50 -0
- package/dist/modules/mcp/resources/glossary/element.js +68 -0
- package/dist/modules/mcp/resources/glossary/environment.js +48 -0
- package/dist/modules/mcp/resources/glossary/interaction.js +62 -0
- package/dist/modules/mcp/resources/glossary/page.js +70 -0
- package/dist/modules/mcp/resources/glossary/plugin.js +96 -0
- package/dist/modules/mcp/resources/glossary/resource.js +75 -0
- package/dist/modules/mcp/resources/glossary/schema.js +69 -0
- package/dist/modules/mcp/resources/glossary/schemaVariable.js +60 -0
- package/dist/modules/mcp/resources/glossary/segment.js +59 -0
- package/dist/modules/mcp/resources/glossary/space.js +73 -0
- package/dist/modules/mcp/resources/glossary/style.js +81 -0
- package/dist/modules/mcp/resources/glossary/styleSelector.js +77 -0
- package/dist/modules/mcp/resources/glossary/styleVariable.js +72 -0
- package/dist/modules/mcp/resources/index.js +71 -0
- package/dist/modules/mcp/resources/workflows/data.js +49 -0
- package/dist/modules/mcp/resources/workflows/elements.js +53 -0
- package/dist/modules/mcp/resources/workflows/segments.js +55 -0
- package/dist/modules/mcp/resources/workflows/styles.js +91 -0
- package/dist/modules/mcp/server.js +23 -113
- package/dist/modules/mcp/tools/collections/createCollection.js +25 -0
- package/dist/modules/mcp/tools/collections/createCollectionRecord.js +27 -0
- package/dist/modules/mcp/tools/collections/deleteCollection.js +16 -0
- package/dist/modules/mcp/tools/collections/deleteCollectionRecord.js +16 -0
- package/dist/modules/mcp/tools/collections/getCollection.js +21 -0
- package/dist/modules/mcp/tools/collections/getCollectionRecord.js +25 -0
- package/dist/modules/mcp/tools/collections/getCollectionRecords.js +29 -0
- package/dist/modules/mcp/tools/collections/getCollections.js +19 -0
- package/dist/modules/mcp/tools/collections/updateCollection.js +28 -0
- package/dist/modules/mcp/tools/collections/updateCollectionRecord.js +31 -0
- package/dist/modules/mcp/tools/docs/listResources.js +16 -0
- package/dist/modules/mcp/tools/docs/readResource.js +23 -0
- package/dist/modules/mcp/tools/index.js +150 -0
- package/dist/modules/mcp/tools/plugins/addPlugin.js +24 -0
- package/dist/modules/mcp/tools/plugins/listPlugins.js +20 -0
- package/dist/modules/mcp/tools/plugins/removePlugin.js +16 -0
- package/dist/modules/mcp/tools/plugins/updatePlugin.js +23 -0
- package/dist/modules/mcp/tools/resources/addResource.js +33 -0
- package/dist/modules/mcp/tools/resources/getResource.js +29 -0
- package/dist/modules/mcp/tools/resources/getResources.js +27 -0
- package/dist/modules/mcp/tools/resources/moveResource.js +30 -0
- package/dist/modules/mcp/tools/resources/removeResource.js +19 -0
- package/dist/modules/mcp/tools/segment/createSegment.js +27 -0
- package/dist/modules/mcp/tools/segment/deleteSegment.js +16 -0
- package/dist/modules/mcp/tools/segment/getSegment.js +19 -0
- package/dist/modules/mcp/tools/segment/getSegments.js +27 -0
- package/dist/modules/mcp/tools/segment/schema/elements/createSegmentElement.js +24 -0
- package/dist/modules/mcp/tools/segment/schema/elements/deleteSegmentElement.js +19 -0
- package/dist/modules/mcp/tools/segment/schema/elements/moveSegmentElement.js +28 -0
- package/dist/modules/mcp/tools/segment/schema/elements/updateSegmentElement.js +23 -0
- package/dist/modules/mcp/tools/segment/schema/variables/createSegmentVariable.js +41 -0
- package/dist/modules/mcp/tools/segment/schema/variables/deleteSegmentVariable.js +19 -0
- package/dist/modules/mcp/tools/segment/schema/variables/updateSegmentVariable.js +41 -0
- package/dist/modules/mcp/tools/segment/style/variables/createSegmentStyleVariable.js +34 -0
- package/dist/modules/mcp/tools/segment/style/variables/deleteSegmentStyleVariable.js +21 -0
- package/dist/modules/mcp/tools/segment/style/variables/updateSegmentStyleVariable.js +34 -0
- package/dist/modules/mcp/tools/segment/updateSegment.js +30 -0
- package/dist/modules/mcp/tools/space/schema/applyPreview.js +33 -0
- package/dist/modules/mcp/tools/space/schema/elements/cloneElement.js +34 -0
- package/dist/modules/mcp/tools/space/schema/elements/createElement.js +50 -0
- package/dist/modules/mcp/tools/space/schema/elements/deleteElement.js +16 -0
- package/dist/modules/mcp/tools/space/schema/elements/getElement.js +17 -0
- package/dist/modules/mcp/tools/space/schema/elements/getElements.js +21 -0
- package/dist/modules/mcp/tools/space/schema/elements/listElements.js +28 -0
- package/dist/modules/mcp/tools/space/schema/elements/moveElement.js +27 -0
- package/dist/modules/mcp/tools/space/schema/elements/updateElement.js +49 -0
- package/dist/modules/mcp/tools/space/schema/getSpaceSettings.js +46 -0
- package/dist/modules/mcp/tools/space/schema/pageFolders/createPageFolder.js +24 -0
- package/dist/modules/mcp/tools/space/schema/pageFolders/deletePageFolder.js +16 -0
- package/dist/modules/mcp/tools/space/schema/pageFolders/getPageFolder.js +17 -0
- package/dist/modules/mcp/tools/space/schema/pageFolders/getPageFolders.js +17 -0
- package/dist/modules/mcp/tools/space/schema/pageFolders/updatePageFolder.js +28 -0
- package/dist/modules/mcp/tools/space/schema/pages/createPage.js +37 -0
- package/dist/modules/mcp/tools/space/schema/pages/deletePage.js +16 -0
- package/dist/modules/mcp/tools/space/schema/pages/getPage.js +28 -0
- package/dist/modules/mcp/tools/space/schema/pages/getPageBySlug.js +17 -0
- package/dist/modules/mcp/tools/space/schema/pages/getPages.js +17 -0
- package/dist/modules/mcp/tools/space/schema/pages/updatePage.js +25 -0
- package/dist/modules/mcp/tools/space/schema/schemas.js +53 -0
- package/dist/modules/mcp/tools/space/schema/updateSpaceSettings.js +23 -0
- package/dist/modules/mcp/tools/space/schema/variables/createVariable.js +38 -0
- package/dist/modules/mcp/tools/space/schema/variables/deleteVariable.js +16 -0
- package/dist/modules/mcp/tools/space/schema/variables/getVariable.js +17 -0
- package/dist/modules/mcp/tools/space/schema/variables/getVariables.js +17 -0
- package/dist/modules/mcp/tools/space/schema/variables/updateVariable.js +38 -0
- package/dist/modules/mcp/tools/space/style/selectors/createStyleSelector.js +37 -0
- package/dist/modules/mcp/tools/space/style/selectors/deleteStyleSelector.js +24 -0
- package/dist/modules/mcp/tools/space/style/selectors/getStyleSelectors.js +20 -0
- package/dist/modules/mcp/tools/space/style/selectors/updateStyleSelector.js +37 -0
- package/dist/modules/mcp/tools/space/style/variables/createStyleVariable.js +33 -0
- package/dist/modules/mcp/tools/space/style/variables/deleteStyleVariable.js +20 -0
- package/dist/modules/mcp/tools/space/style/variables/getStyleVariable.js +19 -0
- package/dist/modules/mcp/tools/space/style/variables/getStyleVariables.js +16 -0
- package/dist/modules/mcp/tools/space/style/variables/updateStyleVariable.js +33 -0
- package/dist/package.js +62 -0
- package/dist/package.json.d.ts +67 -0
- package/dist/src/index.d.ts +2 -1
- package/dist/src/modules/ai/AIEngine.d.ts +20 -0
- package/dist/src/modules/ai/index.d.ts +3 -0
- package/dist/src/modules/mcp/handler.d.ts +5 -2
- package/dist/src/modules/mcp/helpers.d.ts +9 -0
- package/dist/src/modules/mcp/helpers.test.d.ts +1 -0
- package/dist/src/modules/mcp/index.d.ts +5 -0
- package/dist/src/modules/mcp/resources/glossary/binding.d.ts +7 -0
- package/dist/src/modules/mcp/resources/glossary/collection.d.ts +7 -0
- package/dist/src/modules/mcp/resources/glossary/displayMode.d.ts +7 -0
- package/dist/src/modules/mcp/resources/glossary/element.d.ts +7 -0
- package/dist/src/modules/mcp/resources/glossary/environment.d.ts +7 -0
- package/dist/src/modules/mcp/resources/glossary/interaction.d.ts +7 -0
- package/dist/src/modules/mcp/resources/glossary/page.d.ts +7 -0
- package/dist/src/modules/mcp/resources/glossary/plugin.d.ts +7 -0
- package/dist/src/modules/mcp/resources/glossary/resource.d.ts +7 -0
- package/dist/src/modules/mcp/resources/glossary/schema.d.ts +7 -0
- package/dist/src/modules/mcp/resources/glossary/schemaVariable.d.ts +7 -0
- package/dist/src/modules/mcp/resources/glossary/segment.d.ts +7 -0
- package/dist/src/modules/mcp/resources/glossary/space.d.ts +7 -0
- package/dist/src/modules/mcp/resources/glossary/style.d.ts +7 -0
- package/dist/src/modules/mcp/resources/glossary/styleSelector.d.ts +7 -0
- package/dist/src/modules/mcp/resources/glossary/styleVariable.d.ts +7 -0
- package/dist/src/modules/mcp/resources/index.d.ts +10 -0
- package/dist/src/modules/mcp/resources/workflows/data.d.ts +7 -0
- package/dist/src/modules/mcp/resources/workflows/elements.d.ts +7 -0
- package/dist/src/modules/mcp/resources/workflows/segments.d.ts +7 -0
- package/dist/src/modules/mcp/resources/workflows/styles.d.ts +7 -0
- package/dist/src/modules/mcp/server.d.ts +4 -3
- package/dist/src/modules/mcp/tools/collections/collections.test.d.ts +1 -0
- package/dist/src/modules/mcp/tools/collections/createCollection.d.ts +3 -0
- package/dist/src/modules/mcp/tools/collections/createCollectionRecord.d.ts +3 -0
- package/dist/src/modules/mcp/tools/collections/deleteCollection.d.ts +3 -0
- package/dist/src/modules/mcp/tools/collections/deleteCollectionRecord.d.ts +3 -0
- package/dist/src/modules/mcp/tools/collections/getCollection.d.ts +3 -0
- package/dist/src/modules/mcp/tools/collections/getCollectionRecord.d.ts +3 -0
- package/dist/src/modules/mcp/tools/collections/getCollectionRecords.d.ts +3 -0
- package/dist/src/modules/mcp/tools/collections/getCollections.d.ts +3 -0
- package/dist/src/modules/mcp/tools/collections/index.d.ts +10 -0
- package/dist/src/modules/mcp/tools/collections/updateCollection.d.ts +3 -0
- package/dist/src/modules/mcp/tools/collections/updateCollectionRecord.d.ts +3 -0
- package/dist/src/modules/mcp/tools/docs/index.d.ts +2 -0
- package/dist/src/modules/mcp/tools/docs/listResources.d.ts +3 -0
- package/dist/src/modules/mcp/tools/docs/readResource.d.ts +3 -0
- package/dist/src/modules/mcp/tools/index.d.ts +6 -0
- package/dist/src/modules/mcp/tools/plugins/addPlugin.d.ts +3 -0
- package/dist/src/modules/mcp/tools/plugins/index.d.ts +5 -0
- package/dist/src/modules/mcp/tools/plugins/listPlugins.d.ts +3 -0
- package/dist/src/modules/mcp/tools/plugins/plugins.test.d.ts +1 -0
- package/dist/src/modules/mcp/tools/plugins/removePlugin.d.ts +3 -0
- package/dist/src/modules/mcp/tools/plugins/updatePlugin.d.ts +3 -0
- package/dist/src/modules/mcp/tools/resources/addResource.d.ts +3 -0
- package/dist/src/modules/mcp/tools/resources/getResource.d.ts +3 -0
- package/dist/src/modules/mcp/tools/resources/getResources.d.ts +3 -0
- package/dist/src/modules/mcp/tools/resources/index.d.ts +6 -0
- package/dist/src/modules/mcp/tools/resources/moveResource.d.ts +3 -0
- package/dist/src/modules/mcp/tools/resources/removeResource.d.ts +3 -0
- package/dist/src/modules/mcp/tools/resources/resources.test.d.ts +1 -0
- package/dist/src/modules/mcp/tools/segment/createSegment.d.ts +3 -0
- package/dist/src/modules/mcp/tools/segment/deleteSegment.d.ts +3 -0
- package/dist/src/modules/mcp/tools/segment/getSegment.d.ts +3 -0
- package/dist/src/modules/mcp/tools/segment/getSegments.d.ts +3 -0
- package/dist/src/modules/mcp/tools/segment/index.d.ts +8 -0
- package/dist/src/modules/mcp/tools/segment/schema/elements/createSegmentElement.d.ts +3 -0
- package/dist/src/modules/mcp/tools/segment/schema/elements/deleteSegmentElement.d.ts +3 -0
- package/dist/src/modules/mcp/tools/segment/schema/elements/index.d.ts +5 -0
- package/dist/src/modules/mcp/tools/segment/schema/elements/moveSegmentElement.d.ts +3 -0
- package/dist/src/modules/mcp/tools/segment/schema/elements/segmentElements.test.d.ts +1 -0
- package/dist/src/modules/mcp/tools/segment/schema/elements/updateSegmentElement.d.ts +3 -0
- package/dist/src/modules/mcp/tools/segment/schema/index.d.ts +2 -0
- package/dist/src/modules/mcp/tools/segment/schema/variables/createSegmentVariable.d.ts +3 -0
- package/dist/src/modules/mcp/tools/segment/schema/variables/deleteSegmentVariable.d.ts +3 -0
- package/dist/src/modules/mcp/tools/segment/schema/variables/index.d.ts +4 -0
- package/dist/src/modules/mcp/tools/segment/schema/variables/segmentVariables.test.d.ts +1 -0
- package/dist/src/modules/mcp/tools/segment/schema/variables/updateSegmentVariable.d.ts +3 -0
- package/dist/src/modules/mcp/tools/segment/segment.test.d.ts +1 -0
- package/dist/src/modules/mcp/tools/segment/style/index.d.ts +1 -0
- package/dist/src/modules/mcp/tools/segment/style/variables/createSegmentStyleVariable.d.ts +3 -0
- package/dist/src/modules/mcp/tools/segment/style/variables/deleteSegmentStyleVariable.d.ts +3 -0
- package/dist/src/modules/mcp/tools/segment/style/variables/index.d.ts +4 -0
- package/dist/src/modules/mcp/tools/segment/style/variables/segmentStyleVariables.test.d.ts +1 -0
- package/dist/src/modules/mcp/tools/segment/style/variables/updateSegmentStyleVariable.d.ts +3 -0
- package/dist/src/modules/mcp/tools/segment/updateSegment.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/index.d.ts +2 -0
- package/dist/src/modules/mcp/tools/space/schema/applyPreview.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/elements/cloneElement.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/elements/createElement.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/elements/deleteElement.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/elements/elements.test.d.ts +1 -0
- package/dist/src/modules/mcp/tools/space/schema/elements/getElement.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/elements/getElements.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/elements/index.d.ts +9 -0
- package/dist/src/modules/mcp/tools/space/schema/elements/listElements.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/elements/moveElement.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/elements/updateElement.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/getSpaceSettings.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/index.d.ts +8 -0
- package/dist/src/modules/mcp/tools/space/schema/pageFolders/createPageFolder.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/pageFolders/deletePageFolder.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/pageFolders/getPageFolder.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/pageFolders/getPageFolders.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/pageFolders/index.d.ts +6 -0
- package/dist/src/modules/mcp/tools/space/schema/pageFolders/pageFolders.test.d.ts +1 -0
- package/dist/src/modules/mcp/tools/space/schema/pageFolders/updatePageFolder.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/pages/createPage.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/pages/deletePage.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/pages/getPage.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/pages/getPageBySlug.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/pages/getPages.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/pages/index.d.ts +7 -0
- package/dist/src/modules/mcp/tools/space/schema/pages/pages.test.d.ts +1 -0
- package/dist/src/modules/mcp/tools/space/schema/pages/updatePage.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/schemas.d.ts +66 -0
- package/dist/src/modules/mcp/tools/space/schema/updateSpaceSettings.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/variables/createVariable.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/variables/deleteVariable.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/variables/getVariable.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/variables/getVariables.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/variables/index.d.ts +6 -0
- package/dist/src/modules/mcp/tools/space/schema/variables/updateVariable.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/schema/variables/variables.test.d.ts +1 -0
- package/dist/src/modules/mcp/tools/space/space.test.d.ts +1 -0
- package/dist/src/modules/mcp/tools/space/style/index.d.ts +2 -0
- package/dist/src/modules/mcp/tools/space/style/selectors/createStyleSelector.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/style/selectors/deleteStyleSelector.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/style/selectors/getStyleSelectors.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/style/selectors/index.d.ts +5 -0
- package/dist/src/modules/mcp/tools/space/style/selectors/styleSelectors.test.d.ts +1 -0
- package/dist/src/modules/mcp/tools/space/style/selectors/updateStyleSelector.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/style/variables/createStyleVariable.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/style/variables/deleteStyleVariable.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/style/variables/getStyleVariable.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/style/variables/getStyleVariables.d.ts +3 -0
- package/dist/src/modules/mcp/tools/space/style/variables/index.d.ts +6 -0
- package/dist/src/modules/mcp/tools/space/style/variables/styleVariables.test.d.ts +1 -0
- package/dist/src/modules/mcp/tools/space/style/variables/updateStyleVariable.d.ts +3 -0
- package/package.json +18 -14
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { getAllowedModes } from "../../../../helpers.js";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
//#region src/modules/mcp/tools/space/schema/elements/moveElement.ts
|
|
4
|
+
var moveElementTool = {
|
|
5
|
+
name: "move_element",
|
|
6
|
+
adapterName: "moveElement",
|
|
7
|
+
mcpDefinition: {
|
|
8
|
+
title: "Move Element",
|
|
9
|
+
description: "Move an element to a different parent or reorder it within its current parent.",
|
|
10
|
+
inputSchema: z.object({
|
|
11
|
+
elementId: z.string().describe("ID of the element to move"),
|
|
12
|
+
toParentId: z.string().describe("ID of the new parent element"),
|
|
13
|
+
dropPosition: z.enum([
|
|
14
|
+
"top",
|
|
15
|
+
"bottom",
|
|
16
|
+
"left",
|
|
17
|
+
"right",
|
|
18
|
+
"inside",
|
|
19
|
+
"custom"
|
|
20
|
+
]).optional().describe("Where to drop relative to the target parent: \"inside\" appends as last child (default), \"top\"/\"bottom\" inserts before/after siblings")
|
|
21
|
+
}),
|
|
22
|
+
outputSchema: z.literal(true).describe("Always true on successful move")
|
|
23
|
+
},
|
|
24
|
+
definition: { allowedModes: getAllowedModes("write") }
|
|
25
|
+
};
|
|
26
|
+
//#endregion
|
|
27
|
+
export { moveElementTool as default };
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { getAllowedModes } from "../../../../helpers.js";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
//#region src/modules/mcp/tools/space/schema/elements/updateElement.ts
|
|
4
|
+
var elementSchema = z.object({
|
|
5
|
+
id: z.string().describe("Element ID"),
|
|
6
|
+
attributes: z.record(z.string(), z.unknown()).describe("Element attributes"),
|
|
7
|
+
definition: z.object({
|
|
8
|
+
rootId: z.string().describe("Root element ID"),
|
|
9
|
+
label: z.string().describe("Element label"),
|
|
10
|
+
type: z.string().describe("Element type"),
|
|
11
|
+
parentId: z.string().optional().describe("Parent element ID"),
|
|
12
|
+
items: z.array(z.string()).optional().describe("Child element IDs"),
|
|
13
|
+
runtime: z.enum([
|
|
14
|
+
"server",
|
|
15
|
+
"client",
|
|
16
|
+
"shared"
|
|
17
|
+
]).optional().describe("Rendering runtime"),
|
|
18
|
+
loadStrategy: z.enum([
|
|
19
|
+
"eager",
|
|
20
|
+
"lazy",
|
|
21
|
+
"visible"
|
|
22
|
+
]).optional().describe("Load strategy")
|
|
23
|
+
}).describe("Element definition")
|
|
24
|
+
});
|
|
25
|
+
var updateElementTool = {
|
|
26
|
+
name: "update_element",
|
|
27
|
+
adapterName: "updateElement",
|
|
28
|
+
mcpDefinition: {
|
|
29
|
+
title: "Update Element",
|
|
30
|
+
description: "Update an existing element — label, props, or rendering runtime.",
|
|
31
|
+
inputSchema: z.object({
|
|
32
|
+
elementId: z.string().describe("ID of the element to update"),
|
|
33
|
+
updates: z.object({
|
|
34
|
+
label: z.string().optional().describe("New label for the element"),
|
|
35
|
+
props: z.record(z.string(), z.unknown()).optional().describe("New props for the element"),
|
|
36
|
+
styles: z.record(z.string(), z.unknown()).optional().describe("Style attribute overrides keyed by sub-selector slot (e.g. { base: { color: \"#fff\" } }). Rarely needed — prefer update_style_selector to modify styles."),
|
|
37
|
+
runtime: z.enum([
|
|
38
|
+
"server",
|
|
39
|
+
"client",
|
|
40
|
+
"shared"
|
|
41
|
+
]).optional().describe("New rendering runtime")
|
|
42
|
+
}).describe("Fields to update")
|
|
43
|
+
}),
|
|
44
|
+
outputSchema: elementSchema.describe("The updated element")
|
|
45
|
+
},
|
|
46
|
+
definition: { allowedModes: getAllowedModes("write") }
|
|
47
|
+
};
|
|
48
|
+
//#endregion
|
|
49
|
+
export { updateElementTool as default };
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { getAllowedModes } from "../../../helpers.js";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
//#region src/modules/mcp/tools/space/schema/getSpaceSettings.ts
|
|
4
|
+
var getSpaceSettingsTool = {
|
|
5
|
+
name: "get_space_settings",
|
|
6
|
+
adapterName: "getSpaceSettings",
|
|
7
|
+
mcpDefinition: {
|
|
8
|
+
title: "Get Space Settings",
|
|
9
|
+
description: "Read the current space settings — custom CSS, authentication provider, state storage, and other configuration.\n\nUse before update_space_settings to understand the current configuration.",
|
|
10
|
+
inputSchema: z.object({}),
|
|
11
|
+
outputSchema: z.object({
|
|
12
|
+
customCss: z.string().optional().describe("Custom CSS injected into every page"),
|
|
13
|
+
keepState: z.boolean().optional().describe("Persist UI state across navigation"),
|
|
14
|
+
stateStorage: z.enum([
|
|
15
|
+
"localStorage",
|
|
16
|
+
"sessionStorage",
|
|
17
|
+
""
|
|
18
|
+
]).nullable().optional().describe("State storage mechanism"),
|
|
19
|
+
userProvider: z.enum([
|
|
20
|
+
"auth0",
|
|
21
|
+
"basic",
|
|
22
|
+
"custom",
|
|
23
|
+
""
|
|
24
|
+
]).optional().describe("Authentication provider"),
|
|
25
|
+
auth0Domain: z.string().optional(),
|
|
26
|
+
auth0ClientId: z.string().optional(),
|
|
27
|
+
tokenStorage: z.enum([
|
|
28
|
+
"localStorage",
|
|
29
|
+
"sessionStorage",
|
|
30
|
+
""
|
|
31
|
+
]).optional(),
|
|
32
|
+
loginUrl: z.string().optional(),
|
|
33
|
+
userUrl: z.string().optional(),
|
|
34
|
+
refreshUrl: z.string().optional(),
|
|
35
|
+
logoutUrl: z.string().optional(),
|
|
36
|
+
detailsPath: z.string().optional(),
|
|
37
|
+
tokenPath: z.string().optional(),
|
|
38
|
+
refreshTokenPath: z.string().optional(),
|
|
39
|
+
expirationTimePath: z.string().optional(),
|
|
40
|
+
head: z.string().optional()
|
|
41
|
+
}).nullable().describe("Current space settings, or null if space not found")
|
|
42
|
+
},
|
|
43
|
+
definition: { allowedModes: getAllowedModes("read") }
|
|
44
|
+
};
|
|
45
|
+
//#endregion
|
|
46
|
+
export { getSpaceSettingsTool as default };
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { getAllowedModes } from "../../../../helpers.js";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
//#region src/modules/mcp/tools/space/schema/pageFolders/createPageFolder.ts
|
|
4
|
+
var createPageFolderTool = {
|
|
5
|
+
name: "create_page_folder",
|
|
6
|
+
adapterName: "createPageFolder",
|
|
7
|
+
mcpDefinition: {
|
|
8
|
+
title: "Create Page Folder",
|
|
9
|
+
description: "Create a new page folder to organize pages.",
|
|
10
|
+
inputSchema: z.object({
|
|
11
|
+
name: z.string().describe("Name of the page folder"),
|
|
12
|
+
parentId: z.string().optional().describe("Parent folder ID — omit to create a top-level folder")
|
|
13
|
+
}),
|
|
14
|
+
outputSchema: z.object({
|
|
15
|
+
id: z.string().describe("Folder ID"),
|
|
16
|
+
name: z.string().describe("Folder name"),
|
|
17
|
+
slug: z.string().describe("Folder slug"),
|
|
18
|
+
parentId: z.string().optional().describe("Parent folder ID")
|
|
19
|
+
}).describe("The created page folder")
|
|
20
|
+
},
|
|
21
|
+
definition: { allowedModes: getAllowedModes("write") }
|
|
22
|
+
};
|
|
23
|
+
//#endregion
|
|
24
|
+
export { createPageFolderTool as default };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { getAllowedModes } from "../../../../helpers.js";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
//#region src/modules/mcp/tools/space/schema/pageFolders/deletePageFolder.ts
|
|
4
|
+
var deletePageFolderTool = {
|
|
5
|
+
name: "delete_page_folder",
|
|
6
|
+
adapterName: "deletePageFolder",
|
|
7
|
+
mcpDefinition: {
|
|
8
|
+
title: "Delete Page Folder",
|
|
9
|
+
description: "Delete a page folder. Pages inside are moved to root.",
|
|
10
|
+
inputSchema: z.object({ id: z.string().describe("Page folder ID to delete") }),
|
|
11
|
+
outputSchema: z.literal(true).describe("Always true on successful deletion")
|
|
12
|
+
},
|
|
13
|
+
definition: { allowedModes: getAllowedModes("write") }
|
|
14
|
+
};
|
|
15
|
+
//#endregion
|
|
16
|
+
export { deletePageFolderTool as default };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { getAllowedModes } from "../../../../helpers.js";
|
|
2
|
+
import { pageFolderSchema } from "../schemas.js";
|
|
3
|
+
import { z } from "zod";
|
|
4
|
+
//#region src/modules/mcp/tools/space/schema/pageFolders/getPageFolder.ts
|
|
5
|
+
var getPageFolderTool = {
|
|
6
|
+
name: "get_page_folder",
|
|
7
|
+
adapterName: "getPageFolder",
|
|
8
|
+
mcpDefinition: {
|
|
9
|
+
title: "Get Page Folder",
|
|
10
|
+
description: "Get a specific page folder by ID.\n\nUse get_page_folders to list all available folder IDs first if you do not know the target folder ID.",
|
|
11
|
+
inputSchema: z.object({ folderId: z.string().describe("ID of the page folder to retrieve") }),
|
|
12
|
+
outputSchema: pageFolderSchema.nullable().describe("The page folder, or null if not found")
|
|
13
|
+
},
|
|
14
|
+
definition: { allowedModes: getAllowedModes("read") }
|
|
15
|
+
};
|
|
16
|
+
//#endregion
|
|
17
|
+
export { getPageFolderTool as default };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { getAllowedModes } from "../../../../helpers.js";
|
|
2
|
+
import { pageFolderSchema } from "../schemas.js";
|
|
3
|
+
import { z } from "zod";
|
|
4
|
+
//#region src/modules/mcp/tools/space/schema/pageFolders/getPageFolders.ts
|
|
5
|
+
var getPageFoldersTool = {
|
|
6
|
+
name: "get_page_folders",
|
|
7
|
+
adapterName: "getPageFolders",
|
|
8
|
+
mcpDefinition: {
|
|
9
|
+
title: "Get Page Folders",
|
|
10
|
+
description: "List all page folders in the space.\n\nPage folders organize pages into a hierarchy. Each folder has a name, slug, and optional parentId for nesting. Pages reference their folder via the folder attribute in their element attributes.",
|
|
11
|
+
inputSchema: z.object({}),
|
|
12
|
+
outputSchema: z.array(pageFolderSchema).describe("All page folders in the space")
|
|
13
|
+
},
|
|
14
|
+
definition: { allowedModes: getAllowedModes("read") }
|
|
15
|
+
};
|
|
16
|
+
//#endregion
|
|
17
|
+
export { getPageFoldersTool as default };
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { getAllowedModes } from "../../../../helpers.js";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
//#region src/modules/mcp/tools/space/schema/pageFolders/updatePageFolder.ts
|
|
4
|
+
var updatePageFolderTool = {
|
|
5
|
+
name: "update_page_folder",
|
|
6
|
+
adapterName: "updatePageFolder",
|
|
7
|
+
mcpDefinition: {
|
|
8
|
+
title: "Update Page Folder",
|
|
9
|
+
description: "Rename a page folder or move it to a different parent folder.",
|
|
10
|
+
inputSchema: z.object({
|
|
11
|
+
id: z.string().describe("Page folder ID"),
|
|
12
|
+
updates: z.object({
|
|
13
|
+
name: z.string().optional().describe("New name for the folder"),
|
|
14
|
+
slug: z.string().optional().describe("New slug for the folder"),
|
|
15
|
+
parentId: z.string().optional().describe("New parent folder ID")
|
|
16
|
+
}).describe("Fields to update")
|
|
17
|
+
}),
|
|
18
|
+
outputSchema: z.object({
|
|
19
|
+
id: z.string().describe("Folder ID"),
|
|
20
|
+
name: z.string().describe("Folder name"),
|
|
21
|
+
slug: z.string().describe("Folder slug"),
|
|
22
|
+
parentId: z.string().optional().describe("Parent folder ID")
|
|
23
|
+
}).describe("The updated page folder")
|
|
24
|
+
},
|
|
25
|
+
definition: { allowedModes: getAllowedModes("write") }
|
|
26
|
+
};
|
|
27
|
+
//#endregion
|
|
28
|
+
export { updatePageFolderTool as default };
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { getAllowedModes } from "../../../../helpers.js";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
//#region src/modules/mcp/tools/space/schema/pages/createPage.ts
|
|
4
|
+
var elementSchema = z.object({
|
|
5
|
+
id: z.string().describe("Element ID"),
|
|
6
|
+
attributes: z.record(z.string(), z.unknown()).describe("Element attributes"),
|
|
7
|
+
definition: z.object({
|
|
8
|
+
rootId: z.string().describe("Root element ID"),
|
|
9
|
+
label: z.string().describe("Element label"),
|
|
10
|
+
type: z.string().describe("Element type"),
|
|
11
|
+
parentId: z.string().optional().describe("Parent element ID"),
|
|
12
|
+
items: z.array(z.string()).optional().describe("Child element IDs"),
|
|
13
|
+
runtime: z.enum([
|
|
14
|
+
"server",
|
|
15
|
+
"client",
|
|
16
|
+
"shared"
|
|
17
|
+
]).optional().describe("Rendering runtime"),
|
|
18
|
+
loadStrategy: z.enum([
|
|
19
|
+
"eager",
|
|
20
|
+
"lazy",
|
|
21
|
+
"visible"
|
|
22
|
+
]).optional().describe("Load strategy")
|
|
23
|
+
}).describe("Element definition")
|
|
24
|
+
});
|
|
25
|
+
var createPageTool = {
|
|
26
|
+
name: "create_page",
|
|
27
|
+
adapterName: "createPage",
|
|
28
|
+
mcpDefinition: {
|
|
29
|
+
title: "Create Page",
|
|
30
|
+
description: "Create a new page in the space. Returns the page element — use its id to add child elements via create_element.",
|
|
31
|
+
inputSchema: z.object({ name: z.string().describe("Name of the page to create") }),
|
|
32
|
+
outputSchema: elementSchema.describe("The created page")
|
|
33
|
+
},
|
|
34
|
+
definition: { allowedModes: getAllowedModes("write") }
|
|
35
|
+
};
|
|
36
|
+
//#endregion
|
|
37
|
+
export { createPageTool as default };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { getAllowedModes } from "../../../../helpers.js";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
//#region src/modules/mcp/tools/space/schema/pages/deletePage.ts
|
|
4
|
+
var deletePageTool = {
|
|
5
|
+
name: "delete_page",
|
|
6
|
+
adapterName: "deletePage",
|
|
7
|
+
mcpDefinition: {
|
|
8
|
+
title: "Delete Page",
|
|
9
|
+
description: "Delete a page and all its child elements. This action cannot be undone.",
|
|
10
|
+
inputSchema: z.object({ pageId: z.string().describe("ID of the page to delete") }),
|
|
11
|
+
outputSchema: z.literal(true).describe("Always true on successful deletion")
|
|
12
|
+
},
|
|
13
|
+
definition: { allowedModes: getAllowedModes("write") }
|
|
14
|
+
};
|
|
15
|
+
//#endregion
|
|
16
|
+
export { deletePageTool as default };
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { getAllowedModes } from "../../../../helpers.js";
|
|
2
|
+
import { elementSchema } from "../schemas.js";
|
|
3
|
+
import { z } from "zod";
|
|
4
|
+
//#region src/modules/mcp/tools/space/schema/pages/getPage.ts
|
|
5
|
+
var inputSchema = z.object({ pageId: z.string().describe("ID of the page to retrieve") });
|
|
6
|
+
var pageElementSchema = z.object({
|
|
7
|
+
id: z.string().describe("Element ID"),
|
|
8
|
+
label: z.string().describe("Human-readable element label"),
|
|
9
|
+
type: z.string().describe("Element type (e.g. \"button\", \"text\", \"box\")"),
|
|
10
|
+
parentId: z.string().nullable().describe("Parent element ID, or null for root elements"),
|
|
11
|
+
attributes: z.record(z.string(), z.unknown()).describe("Element attributes/props — includes its current content, text, classes, etc.")
|
|
12
|
+
});
|
|
13
|
+
var getPageTool = {
|
|
14
|
+
name: "get_page",
|
|
15
|
+
adapterName: "getPage",
|
|
16
|
+
mcpDefinition: {
|
|
17
|
+
title: "Get Page",
|
|
18
|
+
description: "Get a page by ID — returns the page element and every element on it (id, label, type, parentId and current attributes). Usually enough to find an element and read or change its content/props without further calls. Use get_pages to find available page IDs; get_element only for one element in isolation.",
|
|
19
|
+
inputSchema,
|
|
20
|
+
outputSchema: z.object({
|
|
21
|
+
page: elementSchema.describe("The page element with its attributes (slug, name, default, folder)"),
|
|
22
|
+
elements: z.array(pageElementSchema).describe("Every element on the page with its label, type, parent and current attributes")
|
|
23
|
+
}).nullable().describe("Page info and its elements, or null if not found")
|
|
24
|
+
},
|
|
25
|
+
definition: { allowedModes: getAllowedModes("read") }
|
|
26
|
+
};
|
|
27
|
+
//#endregion
|
|
28
|
+
export { getPageTool as default };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { getAllowedModes } from "../../../../helpers.js";
|
|
2
|
+
import { elementSchema } from "../schemas.js";
|
|
3
|
+
import { z } from "zod";
|
|
4
|
+
//#region src/modules/mcp/tools/space/schema/pages/getPageBySlug.ts
|
|
5
|
+
var getPageBySlugTool = {
|
|
6
|
+
name: "get_page_by_slug",
|
|
7
|
+
adapterName: "getPageBySlug",
|
|
8
|
+
mcpDefinition: {
|
|
9
|
+
title: "Get Page By Slug",
|
|
10
|
+
description: "Find a page by its URL slug.\n\nUseful when you know the route path but not the element ID. Use get_pages to list all pages with their slugs.",
|
|
11
|
+
inputSchema: z.object({ slug: z.string().describe("URL slug of the page to find (e.g. \"about-us\")") }),
|
|
12
|
+
outputSchema: elementSchema.nullable().describe("The matching page element, or null if not found")
|
|
13
|
+
},
|
|
14
|
+
definition: { allowedModes: getAllowedModes("read") }
|
|
15
|
+
};
|
|
16
|
+
//#endregion
|
|
17
|
+
export { getPageBySlugTool as default };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { getAllowedModes } from "../../../../helpers.js";
|
|
2
|
+
import { elementSchema } from "../schemas.js";
|
|
3
|
+
import { z } from "zod";
|
|
4
|
+
//#region src/modules/mcp/tools/space/schema/pages/getPages.ts
|
|
5
|
+
var getPagesTool = {
|
|
6
|
+
name: "get_pages",
|
|
7
|
+
adapterName: "getPages",
|
|
8
|
+
mcpDefinition: {
|
|
9
|
+
title: "Get Pages",
|
|
10
|
+
description: "List all pages in the space.\n\nEach page is an element with type \"page\". Page attributes include slug, name, default, and folder (folder ID). Use get_page to fetch a specific page with its full element tree.",
|
|
11
|
+
inputSchema: z.object({}),
|
|
12
|
+
outputSchema: z.array(elementSchema).describe("All page elements in the space")
|
|
13
|
+
},
|
|
14
|
+
definition: { allowedModes: getAllowedModes("read") }
|
|
15
|
+
};
|
|
16
|
+
//#endregion
|
|
17
|
+
export { getPagesTool as default };
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { getAllowedModes } from "../../../../helpers.js";
|
|
2
|
+
import { elementSchema } from "../schemas.js";
|
|
3
|
+
import { z } from "zod";
|
|
4
|
+
//#region src/modules/mcp/tools/space/schema/pages/updatePage.ts
|
|
5
|
+
var updatePageTool = {
|
|
6
|
+
name: "update_page",
|
|
7
|
+
adapterName: "updatePage",
|
|
8
|
+
mcpDefinition: {
|
|
9
|
+
title: "Update Page",
|
|
10
|
+
description: "Update page metadata — name, slug, default status, or folder assignment.\n\nTo set a page as the home/default page, pass default: true. Use get_pages to list all pages and their current slugs before updating.",
|
|
11
|
+
inputSchema: z.object({
|
|
12
|
+
pageId: z.string().describe("ID of the page to update"),
|
|
13
|
+
updates: z.object({
|
|
14
|
+
name: z.string().optional().describe("New display name for the page"),
|
|
15
|
+
slug: z.string().optional().describe("New URL slug (e.g. \"about-us\")"),
|
|
16
|
+
default: z.boolean().optional().describe("Set true to make this the default/home page"),
|
|
17
|
+
folder: z.string().optional().describe("ID of the page folder to assign this page to")
|
|
18
|
+
}).describe("Fields to update on the page")
|
|
19
|
+
}),
|
|
20
|
+
outputSchema: elementSchema.describe("The updated page element")
|
|
21
|
+
},
|
|
22
|
+
definition: { allowedModes: getAllowedModes("write") }
|
|
23
|
+
};
|
|
24
|
+
//#endregion
|
|
25
|
+
export { updatePageTool as default };
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
//#region src/modules/mcp/tools/space/schema/schemas.ts
|
|
3
|
+
var elementDefinitionSchema = z.object({
|
|
4
|
+
rootId: z.string().describe("Root element ID"),
|
|
5
|
+
label: z.string().describe("Element label"),
|
|
6
|
+
type: z.string().describe("Element type"),
|
|
7
|
+
parentId: z.string().nullish().describe("Parent element ID (null for root elements)"),
|
|
8
|
+
items: z.array(z.string()).nullable().describe("Child element IDs"),
|
|
9
|
+
runtime: z.enum([
|
|
10
|
+
"server",
|
|
11
|
+
"client",
|
|
12
|
+
"shared"
|
|
13
|
+
]).optional().describe("Rendering runtime"),
|
|
14
|
+
loadStrategy: z.enum([
|
|
15
|
+
"eager",
|
|
16
|
+
"lazy",
|
|
17
|
+
"visible"
|
|
18
|
+
]).optional().describe("Load strategy")
|
|
19
|
+
}).describe("Element definition");
|
|
20
|
+
var elementSchema = z.object({
|
|
21
|
+
id: z.string().describe("Element ID"),
|
|
22
|
+
attributes: z.record(z.string(), z.unknown()).describe("Element attributes"),
|
|
23
|
+
definition: elementDefinitionSchema
|
|
24
|
+
});
|
|
25
|
+
var pageFolderSchema = z.object({
|
|
26
|
+
id: z.string().describe("Folder ID"),
|
|
27
|
+
name: z.string().describe("Folder name"),
|
|
28
|
+
slug: z.string().describe("Folder slug"),
|
|
29
|
+
parentId: z.string().nullish().describe("Parent folder ID (null for root folders)")
|
|
30
|
+
});
|
|
31
|
+
var schemaVariableSchema = z.object({
|
|
32
|
+
name: z.string().describe("Variable name"),
|
|
33
|
+
category: z.string().nullable().describe("Variable category"),
|
|
34
|
+
type: z.enum([
|
|
35
|
+
"text",
|
|
36
|
+
"number",
|
|
37
|
+
"email",
|
|
38
|
+
"password",
|
|
39
|
+
"select",
|
|
40
|
+
"select2",
|
|
41
|
+
"checkbox",
|
|
42
|
+
"textarea",
|
|
43
|
+
"color",
|
|
44
|
+
"switch"
|
|
45
|
+
]).describe("Variable type"),
|
|
46
|
+
value: z.string().describe("Default value"),
|
|
47
|
+
subValues: z.array(z.object({
|
|
48
|
+
when: z.record(z.string(), z.unknown()),
|
|
49
|
+
value: z.string()
|
|
50
|
+
})).describe("Conditional sub-values")
|
|
51
|
+
});
|
|
52
|
+
//#endregion
|
|
53
|
+
export { elementSchema, pageFolderSchema, schemaVariableSchema };
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { getAllowedModes } from "../../../helpers.js";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
//#region src/modules/mcp/tools/space/schema/updateSpaceSettings.ts
|
|
4
|
+
var updateSpaceSettingsTool = {
|
|
5
|
+
name: "update_space_settings",
|
|
6
|
+
adapterName: "updateSpaceSettings",
|
|
7
|
+
mcpDefinition: {
|
|
8
|
+
title: "Update Space Settings",
|
|
9
|
+
description: "Update a space setting at a specific path using dot notation.\n\nExamples: set customCss with path=\"customCss\", set auth provider with path=\"userProvider\" value=\"auth0\". Use get_space_settings first to read the current configuration.",
|
|
10
|
+
inputSchema: z.object({
|
|
11
|
+
path: z.string().optional().describe("Dot-notation path to the setting to update (e.g. \"customCss\", \"auth0Domain\"). Omit to replace all settings."),
|
|
12
|
+
value: z.union([
|
|
13
|
+
z.string(),
|
|
14
|
+
z.number(),
|
|
15
|
+
z.boolean()
|
|
16
|
+
]).optional().describe("New value for the setting at the given path")
|
|
17
|
+
}),
|
|
18
|
+
outputSchema: z.record(z.string(), z.unknown()).describe("Updated settings object")
|
|
19
|
+
},
|
|
20
|
+
definition: { allowedModes: getAllowedModes("write") }
|
|
21
|
+
};
|
|
22
|
+
//#endregion
|
|
23
|
+
export { updateSpaceSettingsTool as default };
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { getAllowedModes } from "../../../../helpers.js";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
//#region src/modules/mcp/tools/space/schema/variables/createVariable.ts
|
|
4
|
+
var variableTypesSchema = z.enum([
|
|
5
|
+
"text",
|
|
6
|
+
"number",
|
|
7
|
+
"email",
|
|
8
|
+
"password",
|
|
9
|
+
"select",
|
|
10
|
+
"select2",
|
|
11
|
+
"checkbox",
|
|
12
|
+
"textarea",
|
|
13
|
+
"color",
|
|
14
|
+
"switch"
|
|
15
|
+
]);
|
|
16
|
+
var createVariableTool = {
|
|
17
|
+
name: "create_variable",
|
|
18
|
+
adapterName: "createSchemaVariable",
|
|
19
|
+
mcpDefinition: {
|
|
20
|
+
title: "Create Variable",
|
|
21
|
+
description: "Create a space-level schema variable — a typed, named value that elements can reference via data bindings.\n\nUse category to group related variables in the builder UI (e.g. \"Colors\", \"Typography\"). All values are stored as strings regardless of type.",
|
|
22
|
+
inputSchema: z.object({ variable: z.object({
|
|
23
|
+
name: z.string().describe("Variable name"),
|
|
24
|
+
type: variableTypesSchema.describe("Variable type"),
|
|
25
|
+
value: z.string().describe("Variable default value"),
|
|
26
|
+
category: z.string().describe("Grouping label shown in the builder UI (e.g. \"Colors\", \"Typography\", \"Layout\")")
|
|
27
|
+
}).describe("Variable to create") }),
|
|
28
|
+
outputSchema: z.object({
|
|
29
|
+
name: z.string().describe("Variable name"),
|
|
30
|
+
type: z.string().describe("Variable type"),
|
|
31
|
+
value: z.string().describe("Variable value"),
|
|
32
|
+
category: z.string().describe("Grouping label shown in the builder UI (e.g. \"Colors\", \"Typography\", \"Layout\")")
|
|
33
|
+
}).describe("The created variable")
|
|
34
|
+
},
|
|
35
|
+
definition: { allowedModes: getAllowedModes("write") }
|
|
36
|
+
};
|
|
37
|
+
//#endregion
|
|
38
|
+
export { createVariableTool as default };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { getAllowedModes } from "../../../../helpers.js";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
//#region src/modules/mcp/tools/space/schema/variables/deleteVariable.ts
|
|
4
|
+
var deleteVariableTool = {
|
|
5
|
+
name: "delete_variable",
|
|
6
|
+
adapterName: "deleteSchemaVariable",
|
|
7
|
+
mcpDefinition: {
|
|
8
|
+
title: "Delete Variable",
|
|
9
|
+
description: "Delete a schema variable. Any element bindings referencing this variable will break.",
|
|
10
|
+
inputSchema: z.object({ name: z.string().describe("Name of the variable to delete") }),
|
|
11
|
+
outputSchema: z.literal(true).describe("Always true on successful deletion")
|
|
12
|
+
},
|
|
13
|
+
definition: { allowedModes: getAllowedModes("write") }
|
|
14
|
+
};
|
|
15
|
+
//#endregion
|
|
16
|
+
export { deleteVariableTool as default };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { getAllowedModes } from "../../../../helpers.js";
|
|
2
|
+
import { schemaVariableSchema } from "../schemas.js";
|
|
3
|
+
import { z } from "zod";
|
|
4
|
+
//#region src/modules/mcp/tools/space/schema/variables/getVariable.ts
|
|
5
|
+
var getVariableTool = {
|
|
6
|
+
name: "get_variable",
|
|
7
|
+
adapterName: "getVariable",
|
|
8
|
+
mcpDefinition: {
|
|
9
|
+
title: "Get Variable",
|
|
10
|
+
description: "Get a specific schema variable by name.\n\nSchema variables are space-level typed values that elements can reference via data bindings. Use get_variables to list all available variable names first if needed.",
|
|
11
|
+
inputSchema: z.object({ name: z.string().describe("Name of the variable to retrieve") }),
|
|
12
|
+
outputSchema: schemaVariableSchema.nullable().describe("The variable, or null if not found")
|
|
13
|
+
},
|
|
14
|
+
definition: { allowedModes: getAllowedModes("read") }
|
|
15
|
+
};
|
|
16
|
+
//#endregion
|
|
17
|
+
export { getVariableTool as default };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { getAllowedModes } from "../../../../helpers.js";
|
|
2
|
+
import { schemaVariableSchema } from "../schemas.js";
|
|
3
|
+
import { z } from "zod";
|
|
4
|
+
//#region src/modules/mcp/tools/space/schema/variables/getVariables.ts
|
|
5
|
+
var getVariablesTool = {
|
|
6
|
+
name: "get_variables",
|
|
7
|
+
adapterName: "getVariables",
|
|
8
|
+
mcpDefinition: {
|
|
9
|
+
title: "Get Variables",
|
|
10
|
+
description: "List all schema variables in the space.\n\nSchema variables are space-level typed values (text, color, number, etc.) that elements can reference via data bindings. Use get_variable to retrieve a single variable by name.",
|
|
11
|
+
inputSchema: z.object({}),
|
|
12
|
+
outputSchema: z.array(schemaVariableSchema).describe("All schema variables in the space")
|
|
13
|
+
},
|
|
14
|
+
definition: { allowedModes: getAllowedModes("read") }
|
|
15
|
+
};
|
|
16
|
+
//#endregion
|
|
17
|
+
export { getVariablesTool as default };
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { getAllowedModes } from "../../../../helpers.js";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
//#region src/modules/mcp/tools/space/schema/variables/updateVariable.ts
|
|
4
|
+
var variableTypesSchema = z.enum([
|
|
5
|
+
"text",
|
|
6
|
+
"number",
|
|
7
|
+
"email",
|
|
8
|
+
"password",
|
|
9
|
+
"select",
|
|
10
|
+
"select2",
|
|
11
|
+
"checkbox",
|
|
12
|
+
"textarea",
|
|
13
|
+
"color",
|
|
14
|
+
"switch"
|
|
15
|
+
]);
|
|
16
|
+
var updateVariableTool = {
|
|
17
|
+
name: "update_variable",
|
|
18
|
+
adapterName: "updateSchemaVariable",
|
|
19
|
+
mcpDefinition: {
|
|
20
|
+
title: "Update Variable",
|
|
21
|
+
description: "Update an existing schema variable. Identified by name; only the provided fields are changed.",
|
|
22
|
+
inputSchema: z.object({ variable: z.object({
|
|
23
|
+
name: z.string().describe("Variable name"),
|
|
24
|
+
type: variableTypesSchema.optional().describe("Variable type"),
|
|
25
|
+
value: z.string().optional().describe("Variable value"),
|
|
26
|
+
category: z.string().optional().describe("Grouping label shown in the builder UI")
|
|
27
|
+
}).describe("Variable fields to update") }),
|
|
28
|
+
outputSchema: z.object({
|
|
29
|
+
name: z.string().describe("Variable name"),
|
|
30
|
+
type: z.string().describe("Variable type"),
|
|
31
|
+
value: z.string().describe("Variable value"),
|
|
32
|
+
category: z.string().describe("Variable category")
|
|
33
|
+
}).describe("The updated variable")
|
|
34
|
+
},
|
|
35
|
+
definition: { allowedModes: getAllowedModes("write") }
|
|
36
|
+
};
|
|
37
|
+
//#endregion
|
|
38
|
+
export { updateVariableTool as default };
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { getAllowedModes } from "../../../../helpers.js";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
//#region src/modules/mcp/tools/space/style/selectors/createStyleSelector.ts
|
|
4
|
+
var displayModes = z.enum([
|
|
5
|
+
"desktop",
|
|
6
|
+
"tablet",
|
|
7
|
+
"mobile"
|
|
8
|
+
]);
|
|
9
|
+
var tagTypes = z.enum([
|
|
10
|
+
"class",
|
|
11
|
+
"element",
|
|
12
|
+
"id"
|
|
13
|
+
]);
|
|
14
|
+
var createStyleSelectorTool = {
|
|
15
|
+
name: "create_style_selector",
|
|
16
|
+
adapterName: "createStyleSelector",
|
|
17
|
+
mcpDefinition: {
|
|
18
|
+
title: "Create Style Selector",
|
|
19
|
+
description: "Create a CSS selector entry in the space style for the specified display mode.\n\nDefines a new class, element, or ID selector with optional initial CSS rules. Elements reference selectors via their styleSelectors map.",
|
|
20
|
+
inputSchema: z.object({
|
|
21
|
+
displayMode: displayModes.describe("Responsive breakpoint this selector applies to"),
|
|
22
|
+
selector: z.string().describe("CSS selector string (e.g. \".hero-banner\", \"button\", \"#nav\")"),
|
|
23
|
+
type: tagTypes.describe("Selector kind: \"class\" for .className, \"element\" for HTML tag, \"id\" for #id"),
|
|
24
|
+
path: z.string().optional().describe("Internal scope path — omit in most cases"),
|
|
25
|
+
style: z.record(z.string(), z.record(z.string(), z.unknown())).optional().describe("Initial CSS rules keyed by sub-selector slot (e.g. { base: { backgroundColor: \"#3b82f6\" } })"),
|
|
26
|
+
params: z.record(z.string(), z.unknown()).optional().describe("Advanced adapter parameters — omit in most cases")
|
|
27
|
+
}),
|
|
28
|
+
outputSchema: z.object({
|
|
29
|
+
displayMode: z.string().describe("Display mode"),
|
|
30
|
+
selector: z.string().describe("CSS selector"),
|
|
31
|
+
type: z.string().describe("Selector type")
|
|
32
|
+
}).catchall(z.unknown()).describe("The created style selector")
|
|
33
|
+
},
|
|
34
|
+
definition: { allowedModes: getAllowedModes("write") }
|
|
35
|
+
};
|
|
36
|
+
//#endregion
|
|
37
|
+
export { createStyleSelectorTool as default };
|